rx: Fix test for end of call queue for LWP
[openafs.git] / doc / man-pages / pod5 / KeyFile.pod
1 =head1 NAME
2
3 KeyFile - Defines AFS server encryption keys
4
5 =head1 DESCRIPTION
6
7 The F<KeyFile> file defines the server encryption keys that the AFS server
8 processes running on the machine use to decrypt the tickets presented by
9 clients during the mutual authentication process. AFS server processes
10 perform privileged actions only for clients that possess a ticket
11 encrypted with one of the keys from the file. The file must reside in the
12 F</usr/afs/etc> directory on every server machine. For more detailed
13 information on mutual authentication and server encryption keys, see the
14 I<OpenAFS Administration Guide>.
15
16 Each key has a corresponding a key version number that distinguishes it
17 from the other keys. The tickets that clients present are also marked with
18 a key version number to tell the server process which key to use to
19 decrypt it. The F<KeyFile> file must always include a key with the same
20 key version number and contents as the key currently listed for the
21 C<afs/I<cell>> principal in the associated Kerberos v5 realm or
22 Authentication Database. (The principal C<afs> may be used if the cell and
23 realm names are the same, but adding the cell name to the principal is
24 recommended even in this case. C<afs> must be used as the principal name
25 if the cell uses the Authentication Server rather than a Kerberos v5
26 realm.) The key must be a DES key; no stronger encryption type is
27 supported.
28
29 The F<KeyFile> file is in binary format, so always use either the
30 B<asetkey> command or the appropriate commands from the B<bos> command
31 suite to administer it:
32
33 =over 4
34
35 =item *
36
37 The B<asetkey add> or B<bos addkey> command to add a new key.
38
39 =item *
40
41 The B<asetkey list> or B<bos listkeys> command to display the keys.
42
43 =item *
44
45 The B<asetkey delete> or B<bos removekey> command to remove a key from the
46 file.
47
48 =back
49
50 The B<asetkey> commands must be run on the same server as the F<KeyFile>
51 file to update. The B<bos> commands may be run remotely. Normally, new
52 keys should be added from a Kerberos v5 keytab using B<asetkey add>.
53 B<bos addkey> is normally only used if the Authentication Server is in use
54 instead of a Kerberos v5 realm.
55
56 In cells that use the Update Server to distribute the contents of the
57 F</usr/afs/etc> directory, it is customary to edit only the copy of the
58 file stored on the system control machine. Otherwise, edit the file on
59 each server machine individually.
60
61 =head1 CAUTIONS
62
63 The most common error caused by changes to F<KeyFile> is to add a key that
64 does not match the corresponding key for the Kerberos v5 principal or
65 Authentication Server database entry. Both the key and the key version
66 number must match the key for the corresponding principal, either
67 C<afs/I<cell>> or C<afs>, in the Kerberos v5 realm or Authentication
68 Database. For a Kerberos v5 realm, that principal must only have DES
69 encryption types in the Kerberos KDC.
70
71 In the unusual case of using B<bos addkey> to add a key with a known
72 password matching a password used to generate Kerberos v5 keys, the keys
73 in the Kerberos v5 KDC database must use C<afs3> salt, not the default
74 Kerberos v5 salt. The salt doesn't matter for the more normal procedure of
75 extracting a keytab and then adding the key using B<asetkey>.
76
77 =head1 SEE ALSO
78
79 L<asetkey(8)>,
80 L<bos_addkey(8)>,
81 L<bos_listkeys(8)>,
82 L<bos_removekey(8)>,
83 L<kas_setpassword(8)>,
84 L<upclient(8)>,
85 L<upserver(8)>
86
87 The I<OpenAFS Administration Guide> at
88 L<http://docs.openafs.org/AdminGuide/>.
89
90 =head1 COPYRIGHT
91
92 IBM Corporation 2000. <http://www.ibm.com/> All Rights Reserved.
93
94 This documentation is covered by the IBM Public License Version 1.0.  It
95 was converted from HTML to POD by software written by Chas Williams and
96 Russ Allbery, based on work by Alf Wachsmann and Elizabeth Cassell.