Manuale di Sun Enterprise Authentication Mechanism

Configurare un KDC master

In questo esempio si presume che la procedura di preconfigurazione non sia stata eseguita. Se questa procedura è invece stata utilizzata per l'installazione del software, molti dei file indicati qui di seguito non richiederanno di essere modificati; si consiglia tuttavia di esaminare il contenuto dei file.

In questa procedura verranno utilizzati i seguenti parametri di configurazione:

  1. Prerequisiti per la configurazione di un KDC master.

    Questa procedura richiede che il KDC master sia installato e che il DNS sia in esecuzione. Per istruzioni specifiche sull'assegnazione dei nomi se si desidera rendere il master intercambiabile, vedere "Sostituzione di un KDC master con uno slave".

  2. Diventare superutente sul KDC master.

  3. Aprire con un editor il file di configurazione di Kerberos (krb5.conf).

    Si dovranno cambiare i nomi dei settori e i nomi dei server. Per una descrizione completa di questo file, vedere la pagina man krb5.conf(4). Se il software SEAM è stato installato usando i file di configurazione, sarà sufficiente verificare il contenuto del file.


    kdc1 # cat /etc/krb5/krb5.conf
    [libdefaults]
            default_realm = SPA.IT
     
    [realms]
                    SPA.IT = {
                    kdc = kdc1.spa.it
                    kdc = kdc2.spa.it
                    admin_server = kdc1.spa.it
            }
     
    [domain_realm]
            .spa.it = SPA.IT
    #
    # if the domain name and realm name are equivalent, 
    # this entry is not needed
    #
    [logging]
            default = FILE:/var/krb5/kdc.log
            kdc = FILE:/var/krb5/kdc.log
     
    [appdefaults]
        gkadmin = {
            help_url = http://milano:8888/ab2/coll.384.1/SEAM/@AB2PageView/6956
            }

    In questo esempio, sono state modificate le righe per default_realm, kdc, admin_server e tutte le voci domain_realm. La riga per default_realm è stata inclusa per ragioni di completezza, ma non viene creata dal processo di installazione se il nome del settore e il nome del dominio sono uguali. È stata inoltre modificata la riga che definisce l'help_url.

  4. Aprire con un editor il file di configurazione del KDC (kdc.conf).

    Occorrerà modificare il nome del settore. Per una descrizione completa di questo file, vedere la pagina man kdc.conf(4). Se il software SEAM è stato installato usando i file di configurazione, sarà sufficiente verificare il contenuto del file.


    kdc1 # cat /etc/krb5/kdc.conf
    [kdcdefaults]
            kdc_ports = 88,750
     
    [realms]
            SPA.IT= {
                    profile = /etc/krb5/krb5.conf
                    database_name = /var/krb5/principal
                    admin_keytab = /var/krb5/kadm5.keytab
                    acl_file = /var/krb5/kadm5.acl
                    kadmind_port = 749
                    max_life = 8h 0m 0s
                    max_renewable_life = 7d 0h 0m 0s
            }

    In questo esempio, è stata modificata la definizione del nome del settore nella sezione realms.

  5. Creare il database del KDC usando kdb5_util.

    Il comando kdb5_util crea il database del KDC e, se usato con l'opzione -s, crea un file segreto che viene usato per autenticare il KDC prima dell'avvio dei daemon kadmind e krb5kdc.


    kdc1 # /usr/krb5/sbin/kdb5_util create -r SPA.IT -s
    Inizializzazione del database '/var/krb5/principal' per il settore 'SPA.IT'
    nome della chiave master 'K/M@SPA.IT'
    Verrà richiesto di inserire la password master per il database.
    È importante NON DIMENTICARE questa password.
    Inserire la chiave master del database KDC: <digitare la chiave>
    	Reinserire la chiave master del database KDC: <digitare nuovamente la chiave>
    

    L'opzione -r seguita dal nome del settore non è richiesta se il nome del settore è uguale al nome del dominio nello spazio di denominazione dei server.

  6. Aprire con un editor il file contenente la lista di controllo degli accessi di Kerberos (kadm5.acl).

    Una volta popolato, il file /etc/krb5/kadm5.acl dovrebbe contenere tutti i nomi principali autorizzati ad amministrare il KDC. La prima voce aggiunta potrebbe apparire come segue:


    kws/admin@SPA.IT   *

    Questa riga assegna al nome principale kws/admin del settore SPA.IT l'autorizzazione a modificare i nomi principali o i criteri all'interno del KDC. L'installazione predefinita include un simbolo "*" per designare tutti i nomi principali di tipo admin. Questo potrebbe rappresentare un rischio per la sicurezza, perciò si raccomanda di specificare un elenco dei nomi principali di tipo admin.

  7. Avviare kadmin.local.

    La sottoprocedura seguente permette di creare i nomi principali usati da SEAM.


    kdc1 # /usr/krb5/sbin/kadmin.local
    kadmin.local: 
    1. Aggiungere i nomi principali di amministrazione al database usando kadmin.local.

      È possibile aggiungere tutti i nomi principali admin desiderati. È tuttavia necessario aggiungere almeno un nome principale admin per completare il processo di configurazione del KDC. In questo esempio, viene aggiunto un nome principale kws/admin. Al posto di "kws" si potrà usare un altro nome principale appropriato.


      kadmin.local: addprinc kws/admin
      Inserire la password per il nome principale kws/admin@SPA.IT: 
      <inserire la password>
      Reinserire la password per il nome principale kws/admin@SPA.IT: 
      <reinserire la password>
      Nome principale "kws/admin@SPA.IT" creato.
      kadmin.local: 
    2. Creare una tabella di chiavi per kadmin usando kadmin.local.

      Questa sequenza di comandi crea una tabella di chiavi speciale con i nomi principali per kadmin e changepw. Questi nomi principali sono richiesti per il servizio kadmind.


      kadmin.local: ktadd -k /etc/krb5/kadm5.keytab kadmin/kdc1.spa.it
      Voce per nome principale kadmin/kdc1.spa.it con kvno 3, tipo di cifratura DES-CBC-CRC
                aggiunta alla tabella di chiavi WRFILE:/etc/krb5/kadm5.keytab.
      kadmin.local: ktadd -k /etc/krb5/kadm5.keytab changepw/kdc1.spa.it
      Voce per nome principale changepw/kdc1.spa.it con kvno 3, tipo di cifratura DES-CBC-CRC 
                aggiunta alla tabella di chiavi WRFILE:/etc/krb5/kadm5.keytab.
      kadmin.local: 
    3. Uscire da kadmin.local

      Sono stati aggiunti tutti i nomi principali richiesti per le operazioni successive.


      kadmin.local: quit
      
  8. Avviare i daemon di Kerberos.


    kdc1 # /etc/init.d/kdc start
    kdc1 # /etc/init.d/kdc.master start
    
  9. Avviare kadmin.

    A questo punto, si potranno aggiungere i nomi principali usando lo strumento di amministrazione di SEAM. Il comando di esempio seguente è presentato in forma semplificata. È necessario eseguire il login con uno dei nomi principali admin creati precedentemente in questa procedura.


    kdc1 # /usr/krb5/sbin/kadmin -p kws/admin
    Inserire la password: <Inserire la password per kws/admin>
    kadmin: 
    1. Creare il nome principale del KDC master usando kadmin.

      Il nome principale dell'host verrà usato dalle applicazioni basate su Kerberos (come klist e kprop) e dai servizi basati su Kerberos (come ftp e telnet).


      kadmin: addprinc -randkey host/kdc1.spa.it
      Nome principale "host/kdc1.spa.it@SPA.IT" creato.
      kadmin: 
    2. Opzionale: Creare il nome principale root per il KDC master usando kadmin.

      Questo nome principale verrà usato per le attivazioni NFS autenticate, e potrebbe perciò non essere necessario su un KDC master.


      kadmin: addprinc root/kdc1.spa.it
      Inserire la password per il nome principale root/kdc1.spa.it@SPA.IT: <inserire la password>
      Reinserire la password per il nome principale root/kdc1.spa.it@SPA.IT: <reinserire la password>
      Nome principale "root/kdc1.spa.it@SPA.IT" creato.
      kadmin: 
    3. Aggiungere il nome principale dell'host usato come KDC master alla tabella di chiavi del KDC master.

      Aggiungendo il nome principale dell'host alla tabella di chiavi, questo nome principale potrà essere usato automaticamente.


      kadmin: ktadd host/kdc1.spa.it
      kadmin: Voce per nome principale host/kdc1.spa.it con
        kvno 3, tipo di cifratura DES-CBC-CRC aggiunta alla tabella di chiavi 
        WRFILE:/etc/krb5/krb5.keytab
      kadmin: quit
      
    4. Uscire da kadmin


      kadmin: quit
      
  10. Aggiungere una voce per ogni KDC nel file di configurazione usato per la propagazione (kpropd.acl).

    Per una descrizione completa di questo file, vedere la pagina man kprop(1M). Se il software SEAM è stato installato usando i file di configurazione, sarà sufficiente verificare il contenuto del file.


    kdc1 # cat /etc/krb5/kpropd.acl
    host/kdc1.spa.it@SPA.IT
    host/kdc2.spa.it@SPA.IT
  11. Opzionale: Sincronizzare l'orologio del KDC master usando NTP o un altro meccanismo di sincronizzazione.

    Non è necessario installare e usare NTP, ma perché l'autenticazione riesca tutti gli orologi dovranno rientrare nello spazio orario definito nella sezione libdefaults del file krb5.conf. Per informazioni su NTP, vedere "Sincronizzazione degli orologi tra i KDC e i client SEAM".