]> git.armaanb.net Git - opendoas.git/blob - doas.1
Replace build/installation instructions with discouragements
[opendoas.git] / doas.1
1 .\" $OpenBSD: doas.1,v 1.25 2021/01/16 09:18:41 martijn Exp $
2 .\"
3 .\"Copyright (c) 2015 Ted Unangst <tedu@openbsd.org>
4 .\"
5 .\"Permission to use, copy, modify, and distribute this software for any
6 .\"purpose with or without fee is hereby granted, provided that the above
7 .\"copyright notice and this permission notice appear in all copies.
8 .\"
9 .\"THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
10 .\"WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11 .\"MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
12 .\"ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13 .\"WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14 .\"ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
15 .\"OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16 .Dd $Mdocdate: January 16 2021 $
17 .Dt DOAS 1
18 .Os
19 .Sh NAME
20 .Nm doas
21 .Nd execute commands as another user
22 .Sh SYNOPSIS
23 .Nm doas
24 .Op Fl Lns
25 .Op Fl C Ar config
26 .Op Fl u Ar user
27 .Ar command
28 .Op Ar args
29 .Sh DESCRIPTION
30 The
31 .Nm
32 utility executes the given command as another user.
33 The
34 .Ar command
35 argument is mandatory unless
36 .Fl C ,
37 .Fl L ,
38 or
39 .Fl s
40 is specified.
41 .Pp
42 The user will be required to authenticate by entering their password,
43 unless configured otherwise.
44 .Pp
45 By default, a new environment is created.
46 The variables
47 .Ev HOME ,
48 .Ev LOGNAME ,
49 .Ev PATH ,
50 .Ev SHELL ,
51 and
52 .Ev USER
53 and the
54 .Xr umask 2
55 are set to values appropriate for the target user.
56 .Ev DOAS_USER
57 is set to the name of the user executing
58 .Nm .
59 The variables
60 .Ev DISPLAY
61 and
62 .Ev TERM
63 are inherited from the current environment.
64 This behavior may be modified by the config file.
65 The working directory is not changed.
66 .Pp
67 The options are as follows:
68 .Bl -tag -width tenletters
69 .It Fl C Ar config
70 Parse and check the configuration file
71 .Ar config ,
72 then exit.
73 If
74 .Ar command
75 is supplied,
76 .Nm
77 will also perform command matching.
78 In the latter case
79 either
80 .Sq permit ,
81 .Sq permit nopass
82 or
83 .Sq deny
84 will be printed on standard output, depending on command
85 matching results.
86 No command is executed.
87 .It Fl L
88 Clear any persisted authentications from previous invocations,
89 then immediately exit.
90 No command is executed.
91 .It Fl n
92 Non interactive mode, fail if the matching rule doesn't have the
93 .Ic nopass
94 option.
95 .It Fl s
96 Execute the shell from
97 .Ev SHELL
98 or
99 .Pa /etc/passwd .
100 .It Fl u Ar user
101 Execute the command as
102 .Ar user .
103 The default is root.
104 .El
105 .Sh EXIT STATUS
106 .Ex -std doas
107 It may fail for one of the following reasons:
108 .Pp
109 .Bl -bullet -compact
110 .It
111 The config file
112 .Pa /etc/doas.conf
113 could not be parsed.
114 .It
115 The user attempted to run a command which is not permitted.
116 .It
117 The password was incorrect.
118 .It
119 The specified command was not found or is not executable.
120 .El
121 .Sh SEE ALSO
122 .Xr su 1 ,
123 .Xr doas.conf 5
124 .Sh HISTORY
125 The
126 .Nm
127 command first appeared in
128 .Ox 5.8 .
129 .Sh AUTHORS
130 .An Ted Unangst Aq Mt tedu@openbsd.org