Make sure that
[krb5.git] / doc / rst_source / krb_admins / admin_commands / krb5kdc.rst
1 .. _krb5kdc(8):
2
3 krb5kdc
4 =======
5
6 SYNOPSIS
7 --------
8
9 **krb5kdc**
10 [**-x** *db_args*]
11 [**-d** *dbname*]
12 [**-k** *keytype*]
13 [**-M** *mkeyname*]
14 [**-p** *portnum*]
15 [**-m**]
16 [**-r** *realm*]
17 [**-n**]
18 [**-w** *numworkers*]
19 [**-P** *pid_file*]
20
21
22 DESCRIPTION
23 -----------
24
25 krb5kdc is the Kerberos version 5 Authentication Service and Key
26 Distribution Center (AS/KDC).
27
28
29 OPTIONS
30 -------
31
32 The **-x** *db_args* option specifies the database specific arguments.
33 Options supported for LDAP database are:
34
35     **-x** nconns=<number_of_connections>
36         Specifies the number of connections to be maintained per
37         LDAP server.
38
39     **-x** host=<ldapuri>
40         Specifies the LDAP server to connect to by a LDAP URI.
41
42     **-x** binddn=<binddn>
43         Specifies the DN of the object used by the KDC server to bind
44         to the LDAP server.  This object should have the rights to
45         read the realm container, principal container and the subtree
46         that is referenced by the realm.
47
48     **-x** bindpwd=<bind_password>
49         Specifies the password for the above mentioned binddn.  It is
50         recommended not to use this option. Instead, the password can
51         be stashed using the **stashsrvpw** command of
52         :ref:`kdb5_ldap_util(8)`
53
54 The **-r** *realm* option specifies the realm for which the server
55 should provide service.
56
57 The **-d** *dbname* option specifies the name under which the
58 principal database can be found.  This option does not apply to the
59 LDAP database.
60
61 The **-k** *keytype* option specifies the key type of the master key
62 to be entered manually as a password when **-m** is given; the default
63 is ``des-cbc-crc``.
64
65 The **-M** *mkeyname* option specifies the principal name for the master key
66 in the database (usually ``K/M`` in the KDC's realm).
67
68 The **-m** option specifies that the master database password should
69 be fetched from the keyboard rather than from a file on disk.
70
71 The **-n** option specifies that the KDC does not put itself in the
72 background and does not disassociate itself from the terminal.  In
73 normal operation, you should always allow the KDC to place itself in
74 the background.
75
76 The **-P** *pid_file* option tells the KDC to write its PID (followed
77 by a newline) into *pid_file* after it starts up.  This can be used to
78 identify whether the KDC is still running and to allow init scripts to
79 stop the correct process.
80
81 The **-p** *portnum* option specifies the default UDP port number
82 which the KDC should listen on for Kerberos version 5 requests.  This
83 value is used when no port is specified in the KDC profile and when no
84 port is specified in the Kerberos configuration file.  If no value is
85 available, then the value in ``/etc/services`` for service
86 ``kerberos`` is used.
87
88 The **-w** *numworkers* option tells the KDC to fork *numworkers*
89 processes to listen to the KDC ports and process requests in parallel.
90 The top level KDC process (whose pid is recorded in the pid file if
91 the **-P** option is also given) acts as a supervisor.  The supervisor
92 will relay SIGHUP signals to the worker subprocesses, and will
93 terminate the worker subprocess if the it is itself terminated or if
94 any other worker process exits.
95
96 .. note:: On operating systems which do not have *pktinfo* support,
97           using worker processes will prevent the KDC from listening
98           for UDP packets on network interfaces created after the KDC
99           starts.
100
101
102 EXAMPLE
103 -------
104
105 The KDC may service requests for multiple realms (maximum 32 realms).
106 The realms are listed on the command line.  Per-realm options that can
107 be specified on the command line pertain for each realm that follows
108 it and are superseded by subsequent definitions of the same option.
109
110 For example:
111  ::
112
113     krb5kdc -p 2001 -r REALM1 -p 2002 -r REALM2 -r REALM3
114
115 specifies that the KDC listen on port 2001 for REALM1 and on port 2002
116 for REALM2 and REALM3.  Additionally, per-realm parameters may be
117 specified in the :ref:`kdc.conf(5)` file.  The location of this file
118 may be specified by the **KRB5_KDC_PROFILE** environment variable.
119 Parameters specified in this file take precedence over options
120 specified on the command line.  See the :ref:`kdc.conf(5)` description
121 for further details.
122
123
124 ENVIRONMENT
125 -----------
126
127 krb5kdc uses the following environment variables:
128
129 * **KRB5_CONFIG**
130 * **KRB5_KDC_PROFILE**
131
132
133 SEE ALSO
134 --------
135
136 :ref:`kdb5_util(8)`, :ref:`kdc.conf(5)`, :ref:`krb5.conf(5)`,
137 :ref:`kdb5_ldap_util(8)`