Make sure that
[krb5.git] / doc / rst_source / krb_admins / admin_commands / kpropd.rst
1 .. _kpropd(8):
2
3 kpropd
4 ======
5
6 SYNOPSIS
7 --------
8
9 **kpropd**
10 [**-r** *realm*]
11 [**-a** *acl_file*]
12 [**-f** *slave_dumpfile*]
13 [**-F** *principal_database*]
14 [**-p** *kdb5_util_prog*]
15 [**-P** *port*]
16 [**-d**]
17 [**-S**]
18
19 DESCRIPTION
20 -----------
21
22 The *kpropd* command runs on the slave KDC server.  It listens for
23 update requests made by the :ref:`kprop(8)` program, and periodically
24 requests incremental updates from the master KDC.
25
26 When the slave receives a kprop request from the master, kpropd
27 accepts the dumped KDC database and places it in a file, and then runs
28 :ref:`kdb5_util(8)` to load the dumped database into the active
29 database which is used by :ref:`krb5kdc(8)`.  Thus, the master
30 Kerberos server can use :ref:`kprop(8)` to propagate its database to
31 the slave servers.  Upon a successful download of the KDC database
32 file, the slave Kerberos server will have an up-to-date KDC database.
33
34 Normally, kpropd is invoked out of inetd(8).  This is done by adding
35 a line to the ``/etc/inetd.conf`` file which looks like this:
36
37  ::
38
39     kprop     stream    tcp  nowait    root /usr/local/sbin/kpropd   kpropd
40
41 However, kpropd can also run as a standalone daemon, if the **-S**
42 option is turned on.  This is done for debugging purposes, or if for
43 some reason the system administrator just doesn't want to run it out
44 of inetd(8).
45
46 When the slave periodically requests incremental updates, kpropd
47 updates its principal.ulog file with any updates from the master.
48 :ref:`kproplog(8)` can be used to view a summary of the update entry
49 log on the slave KDC.  Incremental propagation is not enabled by
50 default; it can be enabled using the **iprop_enable** and
51 **iprop_slave_poll** settings in :ref:`kdc.conf(5)`.  The principal
52 ``kiprop/slavehostname@REALM`` (where *slavehostname* is the name of
53 the slave KDC host, and *REALM* is the name of the Kerberos realm)
54 must be present in the slave's keytab file.
55
56
57 OPTIONS
58 --------
59
60 **-r** *realm*
61     Specifies the realm of the master server.
62
63 **-f** *file*
64     Specifies the filename where the dumped principal database file is
65     to be stored; by default the dumped database file
66     ``/usr/local/var/krb5kdc/from_master``.
67
68 **-p**
69     Allows the user to specify the pathname to the :ref:`kdb5_util(8)` program;
70     by default the pathname used is /usr/local/sbin/kdb5_util.
71
72 **-S**
73     Turn on standalone mode.  Normally, kpropd is invoked out of
74     inetd(8) so it expects a network connection to be passed to it
75     from inetd(8).  If the **-S** option is specified, kpropd will put
76     itself into the background, and wait for connections to the
77     ``krb5_prop`` port specified in ``/etc/services``.
78
79 **-d**
80     Turn on debug mode.  In this mode, if the **-S** option is
81     selected, kpropd will not detach itself from the current job and
82     run in the background.  Instead, it will run in the foreground and
83     print out debugging messages during the database propagation.
84
85 **-P**
86     Allow for an alternate port number for kpropd to listen on.  This
87     is only useful if the program is run in standalone mode.
88
89 **-a** *acl_file*
90     Allows the user to specify the path to the kpropd.acl file; by
91     default the path used is ``/usr/local/var/krb5kdc/kpropd.acl``.
92
93 ENVIRONMENT
94 -----------
95
96 kpropd uses the following environment variables:
97
98 * **KRB5_CONFIG**
99 * **KRB5_KDC_PROFILE**
100
101 FILES
102 -----
103
104 kpropd.acl
105     Access file for kpropd; the default location is
106     ``/usr/local/var/krb5kdc/kpropd.acl``.  Each entry is a line
107     containing the principal of a host from which the local machine
108     will allow Kerberos database propagation via :ref:`kprop(8)`.
109
110 SEE ALSO
111 --------
112
113 :ref:`kprop(8)`, :ref:`kdb5_util(8)`, :ref:`krb5kdc(8)`, inetd(8)