La propagation de la base de données Kerberos du KDC maître vers les KDC esclaves est l'une des tâches de configuration les plus importantes. Si la propagation n'est pas assez fréquente, le KDC maître et les KDC esclaves se désynchroniseraient, et si le KDC maître tombait en panne, les KDC esclaves ne posséderaient pas les informations de base de données les plus récentes. En outre, si un KDC esclave a été configuré en tant que maître à des fins d'équilibrage de charge, les clients utilisant cet esclave comme KDC maître n'auront pas les informations les plus récentes. Il est donc important de s'assurer que la propagation est effectuée à une fréquence suffisante, en fonction de la fréquence à laquelle vous modifiez la base de données Kerberos.
Lorsque vous configurez le KDC maître, vous définissez le script kprop_script dans une tâche cron de manière à sauvegarder automatiquement la base de données Kerberos dans le fichier de vidage /var/krb5/slave_datatrans et de la propager vers les KDC esclaves. Cependant, comme tout autre fichier, la base de données Kerberos peut s'endommager. Si cela se produit sur un des KDC esclaves, vous pourriez ne pas le remarquer, étant donné que la propagation automatique suivante de la base de données installe une nouvelle copie. Mais si cela se produit sur le KDC maître, la base de données erronée est propagée vers tous les esclaves lors de la propagation suivante, et le fichier de sauvegarde erroné remplace le fichier de sauvegarde non erroné antérieur sur le KDC maître.
Comme il n'y a pas de copie de sauvegarde "sécuritaire" dans ce scénario, vous devriez également configurer une tâche cron afin de copier périodiquement le fichier de vidage slave_datatrans dans un autre emplacement, ou afin de créer une autre copie de sauvegarde distincte au moyen de la commande dump de kdb5_util. Ensuite, si votre base de données est altérée, vous pourrez restaurer la sauvegarde la plus récente sur le KDC maître au moyen de la commande load de kdb5_util.
Il est également important de noter que, comme le fichier de vidage de la base de données contient des clés de principal, vous devez protéger le fichier contre les utilisateurs non autorisés (par défaut, le fichier de vidage de la base de données n'a des permissions en lecture/écriture que pour root). Cela inclut l'utilisation exclusive de la commande kprop pour propager le fichier de vidage de la base de données, qui chiffre les données transférées. En outre, kprop propage les données uniquement aux KDC esclaves, ce qui minimise la possibilité d'un envoi accidentel du vidage de la base de données à des hôtes non autorisés.
Si la base de données Kerberos est actualisée après avoir été propagée et qu'elle est ultérieurement endommagée avant la propagation suivante, les esclaves ne contiendront pas les mises à jour : celles-ci seront perdues. En raison de ce scénario, si vous apportez des modifications considérables à la base de données avant une propagation périodique, vous devriez propager manuellement la base de données afin d'éviter les pertes de données.
Le fichier kpropd.acl d'un centre de distribution de clés (KDC) contient une liste de noms de principal d'hôte, un par ligne, spécifiant les systèmes desquels le KDC peut recevoir une base de données actualisée au moyen du mécanisme de propagation. Si le KDC maître est employé pour propager tous les KDC esclaves, le fichier kpropd.acl de chaque esclave ne doit contenir que le nom de principal de l'hôte du maître.
Cependant, les étapes d'installation et de configuration subséquentes de ce guide vous indiquent d'ajouter le même fichier kpropd.acl aux KDC maître et esclaves. Le fichier contient tous les noms de principal d'hôte KDC. Cette configuration vous permet d'effectuer la propagation depuis tout KDC, au cas où les KDC de propagation deviennent temporairement indisponibles. En outre, la conservation d'une copie identique sur tous les KDC en facilite la mise à jour.
La commande kprop_script fait appel à la commande kprop pour propager la base de données Kerberos à d'autres KDC. (Si le script kprop_script est exécuté sur un KDC esclave, il propage la copie de l'esclave de la base de données Kerberos vers d'autres KDC.) Le script kprop_script accepte une liste de noms d'hôte comme arguments, séparés par des espaces, qui spécifient les KDC à propager.
Lorsque le script kprop_script est exécuté, il crée une copie de sauvegarde de la base de données Kerberos dans le fichier /var/krb5/slave_datatrans, et copie le fichier dans les KDC spécifiés. La base de données Kerberos est verrouillée jusqu'à la fin de la propagation.