BOS_ADDKEY(8)

NAME
bos_addkey - Adds a new server encryption key to the KeyFile file

SYNOPSIS
bos addkey -server <machine name> [-key <key>]
    -kvno <key version number> [-cell <cell name>]
    [-noauth] [-localauth] [-help]

bos addk -s <machine name> [-ke <key>]
    -kv <key version number> [-ce <cell name>] [-n]
    [-l] [-h]

DESCRIPTION
The bos addkey command constructs a server encryption key from the text string provided, assigns it the key version number specified with the -kvno argument, and adds it to the /usr/afs/etc/KeyFile file on the machine specified with the -server argument.

Normally, asetkey add should be used instead of this command; see asetkey(8) for more details. The primary use of bos addkey is for cells that are still using the Authentication Server instead of a Kerberos v5 KDC. It may, however, also be useful in unusual circumstances where a key needs to be added based on a known password rather than via a Kerberos v5 keytab.

When using bos addkey with an AFS cell that uses the Authentication Server, be sure to use the kas setpassword or kas setkey command to add the same key to the "afs" entry in the Authentication Database.

Do not use the -key argument, which echoes the password string visibly on the screen. If the argument is omitted, the BOS Server prompts for the string and does not echo it visibly:

   Input key:
   Retype input key:

The BOS Server prohibits reuse of any key version number already listed in the /usr/afs/etc/KeyFile file. This ensures that users who still have tickets sealed with the current key are not prevented from communicating with a server process because the current key is overwritten with a new key. Use the bos listkeys command to display the key version numbers in the /usr/afs/etc/KeyFile file.

CAUTIONS
In the unusual case of using bos addkey to add a key with a known password matching a password used to generate Kerberos v5 keys, the key in the Kerberos v5 KDC database must have only the DES encryption type and must use "afs3" salt, not the default Kerberos v5 salt. Otherwise, the key generated by bos addkey will not match the key generated by the Kerberos v5 KDC.

This command can only add keys to the KeyFile; these keys must be DES keys. The stronger keys used by the rxkad-k5 extension are stored in the KeyFileExt, which is not supported by this command.

As such, the use of this command is disrecommended; use asetkey(8) instead to benefit from the increased security of the rxkad-k5 extension.

OPTIONS

-server <machine name>
    Indicates the server machine on which to change the /usr/afs/etc/KeyFile file. Identify the machine by IP address or its host name (either fully-qualified or abbreviated unambiguously). For details, see bos(8).

    In cells that use the Update Server to distribute the contents of the /usr/afs/etc directory, it is conventional to specify only the system control machine as a value for the -server argument. Otherwise, repeat the command for each file server machine. For further discussion, see bos(8).

-key <key>
    Specifies a character string just like a password; the BOS Server calls a DES conversion function to encode it into a form appropriate for use as an encryption key. Omit this argument to have the BOS Server prompt for the string instead.

-kvno <key version number>
    Defines the new key's key version number. It must be an integer in the range from 0 (zero) through 255. For the sake of simplicity, use the number one higher than the current highest key version number; use the bos listkeys command to display key version numbers.

-cell <cell name>
    Names the cell in which to run the command. Do not combine this argument with the -localauth flag. For more details, see bos(8).

-noauth
    Assigns the unprivileged identity "anonymous" to the issuer. Do not combine this flag with the -localauth flag. For more details, see bos(8).

-localauth
    Constructs a server ticket using a key from the local /usr/afs/etc/KeyFile or /usr/afs/etc/KeyFileExt file. The bos command interpreter presents the ticket to the BOS Server during mutual authentication. Do not combine this flag with the -cell or -noauth options. For more details, see bos(8).

-help
    Prints the online help for this command. All other valid options are ignored.

OUTPUT
If the strings typed at the "Input key" and "Retype input key" prompts do not match, the following message appears, and the command exits without adding a new key:

   Input key mismatch

EXAMPLES
The following command adds a new server encryption key with key version number 14 to the KeyFile file kept on the machine "fs1.example.com" (the system control machine). The issuer omits the -key argument, as recommended, and provides the password at the prompts.

   % bos addkey -server fs1.example.com -kvno 14
   Input key:
   Retype input key:

PRIVILEGE REQUIRED
The issuer must be listed in the /usr/afs/etc/UserList file on the machine named by the -server argument, or must be logged onto a server machine as the local superuser "root" if the -localauth flag is included.

SEE ALSO
KeyFile(5), KeyFileExt(5), UserList(5), asetkey(8), bos(8), bos_listkeys(8), bos_removekey(8)

COPYRIGHT
IBM Corporation 2000. <http://www.ibm.com/> All Rights Reserved.

This documentation is covered by the IBM Public License Version 1.0. It was converted from HTML to POD by software written by Chas Williams and Russ Allbery, based on work by Alf Wachsmann and Elizabeth Cassell.