1*ae771770SStanislav Sedov.\" $Id$ 2c19800e8SDoug Rabson.\" 3*ae771770SStanislav Sedov.\" Copyright (c) 2005 Kungliga Tekniska Högskolan 4c19800e8SDoug Rabson.\" (Royal Institute of Technology, Stockholm, Sweden). 5c19800e8SDoug Rabson.\" All rights reserved. 6c19800e8SDoug Rabson.\" 7c19800e8SDoug Rabson.\" Redistribution and use in source and binary forms, with or without 8c19800e8SDoug Rabson.\" modification, are permitted provided that the following conditions 9c19800e8SDoug Rabson.\" are met: 10c19800e8SDoug Rabson.\" 11c19800e8SDoug Rabson.\" 1. Redistributions of source code must retain the above copyright 12c19800e8SDoug Rabson.\" notice, this list of conditions and the following disclaimer. 13c19800e8SDoug Rabson.\" 14c19800e8SDoug Rabson.\" 2. Redistributions in binary form must reproduce the above copyright 15c19800e8SDoug Rabson.\" notice, this list of conditions and the following disclaimer in the 16c19800e8SDoug Rabson.\" documentation and/or other materials provided with the distribution. 17c19800e8SDoug Rabson.\" 18c19800e8SDoug Rabson.\" 3. Neither the name of the Institute nor the names of its contributors 19c19800e8SDoug Rabson.\" may be used to endorse or promote products derived from this software 20c19800e8SDoug Rabson.\" without specific prior written permission. 21c19800e8SDoug Rabson.\" 22c19800e8SDoug Rabson.\" THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND 23c19800e8SDoug Rabson.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 24c19800e8SDoug Rabson.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 25c19800e8SDoug Rabson.\" ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE 26c19800e8SDoug Rabson.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 27c19800e8SDoug Rabson.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 28c19800e8SDoug Rabson.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 29c19800e8SDoug Rabson.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 30c19800e8SDoug Rabson.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 31c19800e8SDoug Rabson.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 32c19800e8SDoug Rabson.\" SUCH DAMAGE. 33c19800e8SDoug Rabson.\" 34c19800e8SDoug Rabson.Dd May 24, 2005 35c19800e8SDoug Rabson.Dt IPROP 8 36c19800e8SDoug Rabson.Os Heimdal 37c19800e8SDoug Rabson.Sh NAME 38c19800e8SDoug Rabson.Nm iprop , 39c19800e8SDoug Rabson.Nm ipropd-master , 40c19800e8SDoug Rabson.Nm ipropd-slave 41*ae771770SStanislav Sedov.Nd propagate changes to a Heimdal Kerberos master KDC to slave KDCs 42c19800e8SDoug Rabson.Sh SYNOPSIS 43c19800e8SDoug Rabson.Nm ipropd-master 44c19800e8SDoug Rabson.Oo Fl c Ar string \*(Ba Xo 45*ae771770SStanislav Sedov.Fl Fl config-file= Ns Ar string 46c19800e8SDoug Rabson.Xc 47c19800e8SDoug Rabson.Oc 48c19800e8SDoug Rabson.Oo Fl r Ar string \*(Ba Xo 49*ae771770SStanislav Sedov.Fl Fl realm= Ns Ar string 50c19800e8SDoug Rabson.Xc 51c19800e8SDoug Rabson.Oc 52c19800e8SDoug Rabson.Oo Fl k Ar kspec \*(Ba Xo 53*ae771770SStanislav Sedov.Fl Fl keytab= Ns Ar kspec 54c19800e8SDoug Rabson.Xc 55c19800e8SDoug Rabson.Oc 56c19800e8SDoug Rabson.Oo Fl d Ar file \*(Ba Xo 57*ae771770SStanislav Sedov.Fl Fl database= Ns Ar file 58c19800e8SDoug Rabson.Xc 59c19800e8SDoug Rabson.Oc 60*ae771770SStanislav Sedov.Op Fl Fl slave-stats-file= Ns Ar file 61*ae771770SStanislav Sedov.Op Fl Fl time-missing= Ns Ar time 62*ae771770SStanislav Sedov.Op Fl Fl time-gone= Ns Ar time 63*ae771770SStanislav Sedov.Op Fl Fl detach 64*ae771770SStanislav Sedov.Op Fl Fl version 65*ae771770SStanislav Sedov.Op Fl Fl help 66c19800e8SDoug Rabson.Nm ipropd-slave 67c19800e8SDoug Rabson.Oo Fl c Ar string \*(Ba Xo 68*ae771770SStanislav Sedov.Fl Fl config-file= Ns Ar string 69c19800e8SDoug Rabson.Xc 70c19800e8SDoug Rabson.Oc 71c19800e8SDoug Rabson.Oo Fl r Ar string \*(Ba Xo 72*ae771770SStanislav Sedov.Fl Fl realm= Ns Ar string 73c19800e8SDoug Rabson.Xc 74c19800e8SDoug Rabson.Oc 75c19800e8SDoug Rabson.Oo Fl k Ar kspec \*(Ba Xo 76*ae771770SStanislav Sedov.Fl Fl keytab= Ns Ar kspec 77c19800e8SDoug Rabson.Xc 78c19800e8SDoug Rabson.Oc 79*ae771770SStanislav Sedov.Op Fl Fl time-lost= Ns Ar time 80*ae771770SStanislav Sedov.Op Fl Fl detach 81*ae771770SStanislav Sedov.Op Fl Fl version 82*ae771770SStanislav Sedov.Op Fl Fl help 83c19800e8SDoug Rabson.Ar master 84c19800e8SDoug Rabson.Sh DESCRIPTION 85c19800e8SDoug Rabson.Nm ipropd-master 86c19800e8SDoug Rabsonis used to propagate changes to a Heimdal Kerberos database from the 87c19800e8SDoug Rabsonmaster Kerberos server on which it runs to slave Kerberos servers 88c19800e8SDoug Rabsonrunning 89c19800e8SDoug Rabson.Nm ipropd-slave . 90c19800e8SDoug Rabson.Pp 91c19800e8SDoug RabsonThe slaves are specified by the contents of the 92c19800e8SDoug Rabson.Pa slaves 93c19800e8SDoug Rabsonfile in the KDC's database directory, e.g.\& 94c19800e8SDoug Rabson.Pa /var/heimdal/slaves . 95c19800e8SDoug RabsonThis has principals one per-line of the form 96c19800e8SDoug Rabson.Dl iprop/ Ns Ar slave Ns @ Ns Ar REALM 97c19800e8SDoug Rabsonwhere 98c19800e8SDoug Rabson.Ar slave 99c19800e8SDoug Rabsonis the hostname of the slave server in the given 100c19800e8SDoug Rabson.Ar REALM , 101c19800e8SDoug Rabsone.g.\& 102c19800e8SDoug Rabson.Dl iprop/kerberos-1.example.com@EXAMPLE.COM 103c19800e8SDoug RabsonOn a slave, the argument 104c19800e8SDoug Rabson.Fa master 105c19800e8SDoug Rabsonspecifies the hostname of the master server from which to receive updates. 106c19800e8SDoug Rabson.Pp 107c19800e8SDoug RabsonIn contrast to 108c19800e8SDoug Rabson.Xr hprop 8 , 109c19800e8SDoug Rabsonwhich sends the whole database to the slaves regularly, 110c19800e8SDoug Rabson.Nm 111*ae771770SStanislav Sedovnormally sends only the changes as they happen on the master. 112*ae771770SStanislav SedovThe master keeps track of all the changes by assigning a version 113*ae771770SStanislav Sedovnumber to every change to the database. 114*ae771770SStanislav SedovThe slaves know which was the latest version they saw, and in this 115*ae771770SStanislav Sedovway it can be determined if they are in sync or not. 116*ae771770SStanislav SedovA log of all the changes is kept on the master. 117*ae771770SStanislav SedovWhen a slave is at an older version than the oldest one in the log, 118*ae771770SStanislav Sedovthe whole database has to be sent. 119c19800e8SDoug Rabson.Pp 120c19800e8SDoug RabsonThe changes are propagated over a secure channel (on port 2121 by 121*ae771770SStanislav Sedovdefault). 122*ae771770SStanislav SedovThis should normally be defined as 123c19800e8SDoug Rabson.Dq iprop/tcp 124c19800e8SDoug Rabsonin 125c19800e8SDoug Rabson.Pa /etc/services 126*ae771770SStanislav Sedovor another source of the services database. 127*ae771770SStanislav SedovThe master and slaves 128c19800e8SDoug Rabsonmust each have access to a keytab with keys for the 129c19800e8SDoug Rabson.Nm iprop 130c19800e8SDoug Rabsonservice principal on the local host. 131c19800e8SDoug Rabson.Pp 132c19800e8SDoug RabsonThere is a keep-alive feature logged in the master's 133c19800e8SDoug Rabson.Pa slave-stats 134c19800e8SDoug Rabsonfile (e.g.\& 135c19800e8SDoug Rabson.Pa /var/heimdal/slave-stats ) . 136c19800e8SDoug Rabson.Pp 137c19800e8SDoug RabsonSupported options for 138c19800e8SDoug Rabson.Nm ipropd-master : 139c19800e8SDoug Rabson.Bl -tag -width Ds 140*ae771770SStanislav Sedov.It Fl c Ar string , Fl Fl config-file= Ns Ar string 141*ae771770SStanislav Sedov.It Fl r Ar string , Fl Fl realm= Ns Ar string 142*ae771770SStanislav Sedov.It Fl k Ar kspec , Fl Fl keytab= Ns Ar kspec 143c19800e8SDoug Rabsonkeytab to get authentication from 144*ae771770SStanislav Sedov.It Fl d Ar file , Fl Fl database= Ns Ar file 145c19800e8SDoug RabsonDatabase (default per KDC) 146*ae771770SStanislav Sedov.It Fl Fl slave-stats-file= Ns Ar file 147c19800e8SDoug Rabsonfile for slave status information 148*ae771770SStanislav Sedov.It Fl Fl time-missing= Ns Ar time 149c19800e8SDoug Rabsontime before slave is polled for presence (default 2 min) 150*ae771770SStanislav Sedov.It Fl Fl time-gone= Ns Ar time 151c19800e8SDoug Rabsontime of inactivity after which a slave is considered gone (default 5 min) 152*ae771770SStanislav Sedov.It Fl Fl detach 153c19800e8SDoug Rabsondetach from console 154*ae771770SStanislav Sedov.It Fl Fl version 155*ae771770SStanislav Sedov.It Fl Fl help 156c19800e8SDoug Rabson.El 157c19800e8SDoug Rabson.Pp 158c19800e8SDoug RabsonSupported options for 159c19800e8SDoug Rabson.Nm ipropd-slave : 160c19800e8SDoug Rabson.Bl -tag -width Ds 161*ae771770SStanislav Sedov.It Fl c Ar string , Fl Fl config-file= Ns Ar string 162*ae771770SStanislav Sedov.It Fl r Ar string , Fl Fl realm= Ns Ar string 163*ae771770SStanislav Sedov.It Fl k Ar kspec , Fl Fl keytab= Ns Ar kspec 164c19800e8SDoug Rabsonkeytab to get authentication from 165*ae771770SStanislav Sedov.It Fl Fl time-lost= Ns Ar time 166c19800e8SDoug Rabsontime before server is considered lost (default 5 min) 167*ae771770SStanislav Sedov.It Fl Fl detach 168c19800e8SDoug Rabsondetach from console 169*ae771770SStanislav Sedov.It Fl Fl version 170*ae771770SStanislav Sedov.It Fl Fl help 171c19800e8SDoug Rabson.El 172c19800e8SDoug RabsonTime arguments for the relevant options above may be specified in forms 173c19800e8SDoug Rabsonlike 5 min, 300 s, or simply a number of seconds. 174c19800e8SDoug Rabson.Sh FILES 175c19800e8SDoug Rabson.Pa slaves , 176c19800e8SDoug Rabson.Pa slave-stats 177c19800e8SDoug Rabsonin the database directory. 178c19800e8SDoug Rabson.Sh SEE ALSO 179*ae771770SStanislav Sedov.Xr krb5.conf 5 , 180c19800e8SDoug Rabson.Xr hprop 8 , 181*ae771770SStanislav Sedov.Xr hpropd 8 , 182*ae771770SStanislav Sedov.Xr iprop-log 8 , 183*ae771770SStanislav Sedov.Xr kdc 8 . 184