Manuale di Sun Enterprise Authentication Mechanism

Backup e propagazione del database di Kerberos

La propagazione del database di Kerberos dal KDC master ai KDC slave è una delle operazioni di configurazione più importanti. Se la propagazione non viene eseguita con una frequenza sufficiente, il KDC master e i KDC slave rischiano di non essere sincronizzati; in questo caso, se il KDC master dovesse arrestarsi, i KDC slave non disporranno delle informazioni più recenti del database. Inoltre, se un KDC slave è stato configurato come master per scopi di bilanciamento dei carichi, i client che utilizzano questo slave come KDC master non disporranno delle informazioni più recenti. Per queste ragioni, è importante impostare la propagazione con una frequenza sufficiente in base alla frequenza delle modifiche effettuate al database di Kerberos.

Durante la configurazione del KDC master, lo script kprop_script viene inserito in un lavoro cron perché esegua automaticamente il backup del database di Kerberos nel file /var/krb5/slave_datatrans e lo propaghi ai KDC slave. Può accadere, tuttavia, che il database di Kerberos venga danneggiato. Se questo accade su uno dei KDC slave, tale danneggiamento può passare completamente inosservato, poiché la successiva propagazione automatica del database ne installerà una nuova copia. Se invece il file viene danneggiato sul KDC master, il database danneggiato verrà copiato su tutti i server slave durante la propagazione successiva, e il backup danneggiato sovrascriverà la copia corretta precedente sul KDC master.

Poiché questo scenario non prevede l'esistenza di una copia di backup "sicura", è consigliabile configurare un lavoro cron che copi periodicamente il file slave_datatrans in un'altra posizione, o che crei una copia di backup separata usando il comando dump di kdb5_util. In questo modo, se il database dovesse essere danneggiato, sarà possibile ripristinare il backup più recente sul KDC master usando il comando load di kdb5_util.

Un altro aspetto importante da osservare è che, poiché il file di salvataggio del database contiene le chiavi dei nomi principali, è necessario proteggere questo file dagli accessi non autorizzati (nella configurazione predefinita, il file di salvataggio del database ha le autorizzazioni di lettura/scrittura solo per l'utente root). Questo significa che si dovrà usare solo il comando kprop per propagare il file di archiviazione del database, il quale esegue una cifratura dei dati trasferiti. Inoltre, kprop propaga i dati solo ai KDC slave, riducendo la probabilità che il file del database venga inviato accidentalmente a un host non autorizzato.


Avvertenza - Avvertenza -

Se il database di Kerberos viene aggiornato dopo essere stato propagato e il file del database viene danneggiato prima della propagazione successiva, gli slave non conterranno gli aggiornamenti, che andranno perduti. Per questa ragione, se vengono effettuate numerose modifiche al database diverso tempo prima di una propagazione pianificata, è consigliabile propagare il database manualmente per evitare la perdita di dati.


File kpropd.acl

Il file kpropd.acl di un KDC contiene un elenco di nomi principali di host, uno per riga, che specifica i sistemi da cui il KDC può ricevere un database aggiornato attraverso il meccanismo di propagazione. Se si utilizza il KDC master per propagare il database a tutti i KDC slave, il file kpropd.acl di ogni slave dovrà contenere solo il nome principale dell'host del master.

Tuttavia, l'installazione di SEAM e le successive procedure di configurazione descritte in questo manuale permettono di aggiungere lo stesso file kpropd.acl sia al KDC master che ai KDC slave. Il file contiene tutti i nomi principali degli host KDC. Questa configurazione permette di propagare il database da qualunque KDC, nel caso in cui i KDC designati perla propagazione diventino temporaneamente indisponibili. Inoltre, la presenza di una copia identica del file su tutti i KDC ne facilita la manutenzione.

Comando kprop_script

Il comando kprop_script utilizza il comando kprop per propagare il database di Kerberos ad altri KDC. (Se kprop_script viene eseguito su un KDC slave, esso propagherà la copia del database di Kerberos di quello slave agli altri KDC.) kprop_script può accettare come argomenti un elenco di nomi host, separati da spazi, che denotino i KDC su cui eseguire la propagazione.

L'esecuzione di kprop_script crea una copia di backup del database di Kerberos nel file /var/krb5/slave_datatrans e copia questo file sui KDC specificati. Il database di Kerberos rimane bloccato fino al termine della propagazione.