]> git.lizzy.rs Git - plan9front.git/blob - sys/man/8/auth
draw(2): fix missing arg of bezspline on page 5
[plan9front.git] / sys / man / 8 / auth
1 .TH AUTH 8
2 .SH NAME
3 changeuser, convkeys, convkeys2, printnetkey, status, enable, disable, authsrv, guard.srv, debug, wrkey, login, newns, none, as \- maintain or query authentication databases
4 .SH SYNOPSIS
5 .B auth/changeuser
6 .RB [ -np ]
7 .I user
8 .PP
9 .B auth/convkeys
10 .RB [ -p ]
11 .I keyfile
12 .PP
13 .B auth/convkeys2
14 .RB [ -p ]
15 .I keyfile
16 .PP
17 .B auth/printnetkey
18 .I user
19 .PP
20 .B auth/status
21 .I user
22 .PP
23 .B auth/enable
24 .I user
25 .PP
26 .B auth/disable
27 .I user
28 .PP
29 .B auth/authsrv
30 .PP
31 .B auth/guard.srv
32 .PP
33 .B auth/debug
34 .PP
35 .B auth/wrkey
36 .PP
37 .B auth/login
38 [
39 .B -a
40 .I authdom
41 ]
42 .I user
43 .PP
44 .B auth/newns
45 [
46 .B -ad
47 ] [
48 .B -n
49 .I namespace
50 ]
51 .I command
52 .I arg
53 \&...
54 .PP
55 .B auth/none
56 [
57 .B -n
58 .I namespace
59 ]
60 .I command
61 .I arg
62 \&...
63 .PP
64 .B auth/as
65 .I user
66 .I command
67 .SH DESCRIPTION
68 These administrative commands run only on the authentication server.
69 .IR Changeuser
70 manipulates an authentication database file system served by
71 .IR keyfs (4)
72 and used by file servers.
73 There are two authentication databases,
74 one holding information about Plan 9 accounts
75 and one holding SecureNet keys.
76 A
77 .I user
78 need not be installed in both databases
79 but must be installed in the Plan 9 database to connect to a Plan 9 service.
80 .PP
81 .I Changeuser
82 installs or changes
83 .I user
84 in an authentication database.
85 It does not install a user on a Plan 9 file server; see
86 .IR fs (8)
87 for that.
88 .PP
89 Option
90 .B -p
91 installs
92 .I user
93 in the Plan 9 database.
94 .I Changeuser
95 asks twice for a password for the new
96 .IR user .
97 If the responses do not match
98 or the password is too easy to guess
99 the
100 .I user
101 is not installed.
102 .I Changeuser
103 also asks for an APOP secret.
104 This secret is used in the APOP (RFC1939),
105 CRAM (RFC2195), and
106 Microsoft challenge/response protocols used for
107 POP3, IMAP, and VPN access.
108 .PP
109 Option
110 .B -n
111 installs
112 .I user
113 in the SecureNet database and prints out a key for the SecureNet box.
114 The key is chosen by
115 .IR changeuser .
116 .PP
117 If neither option
118 .B -p
119 or option
120 .B -n
121 is given,
122 .I changeuser
123 installs the
124 .I user
125 in the Plan 9 database.
126 .PP
127 .I Changeuser
128 prompts for
129 biographical information such as email address,
130 user name, sponsor and department number and
131 appends it to the file
132 .B /adm/netkeys.who
133 or
134 .BR /adm/keys.who .
135 .PP
136 .I Convkeys
137 re-encrypts the key file
138 .IR keyfile .
139 Re-encryption is performed in place.
140 Without the
141 .B -p
142 option
143 .I convkeys
144 uses the key stored in NVRAM
145 to decrypt the file, and encrypts it using the new key.
146 By default, 
147 .I convkeys
148 prompts twice for the new password.
149 The
150 .B -p
151 forces
152 .I convkeys
153 to also prompt for the old password.
154 The format of
155 .I keyfile
156 is described in
157 .IR keyfs (4).
158 .PP
159 The format of the key file changed between Release 2
160 and 3 of Plan 9.
161 .I Convkeys2
162 is like
163 .IR convkeys .
164 However, in addition to rekeying, it converts from
165 the previous format to the Release 3 format.
166 .PP
167 .I Printnetkey
168 displays the network key as it should be entered into the
169 hand-held Securenet box.
170 .PP
171 .I Status
172 is a shell script that prints out everything known about
173 a user and the user's key status.
174 .PP
175 .I Enable/disable
176 are shell scripts that enable/disable both the Plan 9 and
177 Netkey keys for individual users.
178 .PP
179 .I Authsrv
180 is the program, run only on the authentication server, that handles ticket requests
181 on TCP port 567.
182 It is started
183 by an incoming call to the server
184 requesting a conversation ticket; its standard input and output
185 are the network connection.
186 .I Authsrv
187 executes the authentication server's end of the appropriate protocol as
188 described in
189 .IR authsrv (6).
190 .PP
191 .I Guard.srv
192 is similar.  It is called whenever a foreign (e.g. Unix) system wants
193 to do a SecureNet challenge/response authentication.
194 .SS Anywhere commands
195 .PP
196 The remaining commands need not be run on an authentication server.
197 .PP
198 .I Debug
199 attempts to authenticate using each
200 .B p9sk1
201 key found in
202 .I factotum
203 and prints progress reports.
204 .PP
205 .I Wrkey
206 prompts for a machine key, host owner, and host domain and stores them in
207 local non-volatile RAM.
208 .PP
209 .I Login
210 allows a user to change his authenticated id to
211 .IR user .
212 .I Login
213 sets up a new namespace from
214 .BR /lib/namespace ,
215 starts a
216 .IR factotum (4)
217 under the new id and
218 .IR exec s
219 .IR rc (1)
220 under the new id.
221 .PP
222 .I Newns
223 sets up a new namespace from
224 .I namespace
225 (default
226 .BR /lib/namespace )
227 and
228 .IR exec s
229 its arguments.
230 If there are no arguments, it
231 .IR exec s
232 .BR /bin/rc .
233 Under
234 .BR -a ,
235 .I newns
236 adds to the current namespace instead of constructing a new one.
237 The
238 .BR -d
239 option enables debugging output.
240 .PP
241 .I None
242 sets up a new namespace from
243 .I namespace
244 (default
245 .BR /lib/namespace )
246 as the user
247 .I none
248 and
249 .IR exec s
250 its arguments under the new id.
251 If there are no arguments, it
252 .IR exec s
253 .BR /bin/rc .
254 It's an easy way to run a command as
255 .IR none .
256 .PP
257 .I As
258 executes
259 .I command
260 as
261 .IR user .
262 .I Command
263 is a single argument to
264 .IR rc ,
265 containing an arbitrary
266 .I rc
267 command.
268 This only works for the hostowner and only if
269 .L #ยค/caphash
270 still exists.
271 .SH FILES
272 .TF /sys/lib/httppasswords
273 .TP
274 .B /lib/ndb/auth
275 Speaksfor relationships and mappings for
276 RADIUS server id's.
277 .TP
278 .B /adm/keys.who
279 List of users in the Plan 9 database.
280 .TP
281 .B /adm/netkeys.who
282 List of users in the SecureNet database.
283 .TP
284 .B /sys/lib/httppasswords
285 List of realms and passwords for HTTP access.
286 .SH SOURCE
287 .B /sys/src/cmd/auth
288 .SH "SEE ALSO"
289 .IR passwd (1),
290 .I readnvram
291 in
292 .IR authsrv (2),
293 .IR keyfs (4),
294 .IR securenet (8)
295 .SH BUGS
296 Only CPU kernels permit changing userid.