Gestion de Kerberos et d'autres services d'authentification dans Oracle® Solaris 11.2

Quitter la vue de l'impression

Mis à jour : Septembre 2014
 
 

Echange d'un KDC maître et d'un KDC esclave

Dans cette procédure, le serveur de KDC maître échangé est appelé kdc1. Le KDC esclave qui devient le nouveau KDC maître est appelé kdc4. Cette procédure suppose que vous utilisez la propagation incrémentielle.

Avant de commencer

Terminez la procédure Configuration d'un KDC échangeable.

Vous devez prendre le rôle root. Pour plus d'informations, reportez-vous à la section A l’aide de vos droits administratifs attribués du manuel Sécurisation des utilisateurs et des processus dans Oracle Solaris 11.2 .

  1. Sur le nouveau KDC maître, démarrez kadmin.
    kdc4 # /usr/sbin/kadmin -p kws/admin
    Enter password: xxxxxxxx
    kadmin:
  2. Créez de nouveaux principaux pour le service kadmind.

    L'exemple suivant montre la première commande addprinc sur deux lignes, mais elle doit être saisie sur une seule ligne.

    kadmin: addprinc -randkey -allow_tgs_req +password_changing_service -clearpolicy \
    changepw/kdc4.example.com
    Principal "changepw/kdc4.example.com@EXAMPLE.COM" created.
    kadmin: addprinc -randkey -allow_tgs_req -clearpolicy kadmin/kdc4.example.com
    Principal "kadmin/kdc4.example.com@EXAMPLE.COM" created.
    kadmin:
  3. Quitter kadmin.
    kadmin: quit
  4. Sur le nouveau KDC maître, forcez la synchronisation.

    Les étapes suivantes forcent une mise à jour complète de KDC sur le serveur esclave.

    1. Désactivez le service krb5kdc et supprimez son fichier journal.
      kdc4 # svcadm disable network/security/krb5kdc
      kdc4 # rm /var/krb5/principal.ulog
    2. Vérifiez que la mise à jour est terminée.
      kdc4 # /usr/sbin/kproplog -h
    3. Redémarrez le service KDC.
      kdc4 # svcadm enable -r network/security/krb5kdc
    4. Réinitialisez le journal de mise à jour pour le nouveau serveur KDC maître.
      kdc4 # svcadm disable network/security/krb5kdc
      kdc4 # rm /var/krb5/principal.ulog
  5. Sur l'ancien KDC maître, arrêtez les services kadmin et krb5kdc.

    Lorsque vous interrompez le service kadmind, vous empêchez toute modification apportée à la base de données KDC.

    kdc1 # svcadm disable network/security/kadmin
    kdc1 # svcadm disable network/security/krb5kdc
  6. Sur l'ancien KDC maître, spécifiez la durée d'interrogation pour demander les propagations.

    Mettez en commentaire l'entrée sunw_dbprop_master_ulogsize dans /etc/krb5/kdc.conf et ajoutez une entrée qui définit l'intervalle d'interrogation de l'esclave. Cette entrée définit la durée d'interrogation sur deux minutes.

    kdc1 # pfedit /etc/krb5/kdc.conf
    [kdcdefaults]
    kdc_ports = 88,750
    
    [realms]
    EXAMPLE.COM= {
    profile = /etc/krb5/krb5.conf
    database_name = /var/krb5/principal
    acl_file = /etc/krb5/kadm5.acl
    kadmind_port = 749
    max_life = 8h 0m 0s
    max_renewable_life = 7d 0h 0m 0s
    sunw_dbprop_enable = true
    #  sunw_dbprop_master_ulogsize = 1000
    sunw_dbprop_slave_poll = 2m
    }
  7. Sur l'ancien KDC maître, déplacez les commandes de KDC maître et le fichier kadm5.acl.

    Commandes le KDC maître ne doivent pas être exécutées à partir de l'ancien KDC maître.

    kdc1 # mv /usr/lib/krb5/kprop /usr/lib/krb5/kprop.save
    kdc1 # mv /usr/lib/krb5/kadmind /usr/lib/krb5/kadmind.save
    kdc1 # mv /usr/sbin/kadmin.local /usr/sbin/kadmin.local.save
    kdc1 # mv /etc/krb5/kadm5.acl /etc/krb5/kadm5.acl.save
  8. Sur le serveur DNS, modifiez les noms d'alias du KDC maître.

    Pour changer de serveurs, modifiez le fichier de zone example.com et modifiez l'entrée pour masterkdc.

    masterkdc IN CNAME kdc4
  9. Serveur sur le recharger les nouvelles DNS, les informations sur les alias.
    # svcadm refresh network/dns/server
  10. Sur le nouveau KDC maître, déplacez les commandes de KDC maître et le fichier esclave kpropd.acl.

    Vous avez déplacé les commandes KDC maître dansStep 3 de la sectionConfiguration d'un KDC échangeable,

    kdc4 # mv /usr/lib/krb5/kprop.save /usr/lib/krb5/kprop
    kdc4 # mv /usr/lib/krb5/kadmind.save /usr/lib/krb5/kadmind
    kdc4 # mv /usr/sbin/kadmin.local.save /usr/sbin/kadmin.local
    kdc4 # mv /etc/krb5/kpropd.acl /etc/krb5/kpropd.acl.save
  11. Sur le nouveau KDC maître, créez le fichier de liste de contrôle d'accès Kerberos, kadm5.acl.

    Une fois renseigné, le fichier /etc/krb5/kadm5.acl doit contenir tous les noms de principaux autorisés à administrer le KDC. Ce fichier doit également répertorier tous les esclaves qui peuvent émettre des demandes de propagation incrémentielle. Pour plus d'informations, reportez-vous à la page de manuel kadm5.acl(4).

    kdc4 # pfedit /etc/krb5/kadm5.acl
    kws/admin@EXAMPLE.COM   *
    kiprop/kdc1.example.com@EXAMPLE.COM p
  12. Sur le nouveau KDC maître, spécifiez la taille de journal de mise à jour dans le fichier kdc.conf.

    Mettez en commentaire l'entrée sunw_dbprop_slave_poll et ajoutez une entrée qui définit sunw_dbprop_master_ulogsize. Cette entrée définit la taille du journal à 1000 entrées.

    kdc1 # pfedit /etc/krb5/kdc.conf
    [kdcdefaults]
    kdc_ports = 88,750
    
    [realms]
    EXAMPLE.COM= {
    profile = /etc/krb5/krb5.conf
    database_name = /var/krb5/principal
    acl_file = /etc/krb5/kadm5.acl
    kadmind_port = 749
    max_life = 8h 0m 0s
    max_renewable_life = 7d 0h 0m 0s
    sunw_dbprop_enable = true
    #               sunw_dbprop_slave_poll = 2m
    sunw_dbprop_master_ulogsize = 1000
    }
  13. Sur le nouveau KDC maître, activez les services kadmin et krb5kdc.
    kdc4 # svcadm enable -r network/security/krb5kdc
    kdc4 # svcadm enable -r network/security/kadmin
  14. Sur l'ancien KDC maître, ajoutez le principal de service kiprop.

    L'ajout du principal kiprop au fichier krb5.keytab permet au démon kpropd de s'authentifier auprès du service de propagation incrémentielle.

    kdc1 # /usr/sbin/kadmin -p kws/admin
    Authenticating as principal kws/admin@EXAMPLE.COM with password.
    Enter password: xxxxxxxx
    kadmin: ktadd kiprop/kdc1.example.com
    Entry for principal kiprop/kdc1.example.com with kvno 3,
    encryption type AES-256 CTS mode
    with 96-bit SHA-1 HMAC added to keytab WRFILE:/etc/krb5/krb5.keytab.
    Entry for principal kiprop/kdc1.example.com with kvno 3,
    encryption type AES-128 CTS mode
    with 96-bit SHA-1 HMAC added to keytab WRFILE:/etc/krb5/krb5.keytab.
    Entry for principal kiprop/kdc1.example.com with kvno 3, encryption type Triple DES cbc
    mode with HMAC/sha1 added to keytab WRFILE:/etc/krb5/krb5.keytab.
    kadmin: quit
  15. Sur l'ancien KDC maître, ajoutez une entrée pour chaque KDC dans le fichier krb5.conf au fichier de configuration de propagation.
    kdc1 # pfedit /etc/krb5/kpropd.acl
    host/kdc1.example.com@EXAMPLE.COM
    host/kdc2.example.com@EXAMPLE.COM
    host/kdc3.example.com@EXAMPLE.COM
    host/kdc4.example.com@EXAMPLE.COM
  16. Sur l'ancien KDC maître, activez les services kpropd et krb5kdc.
    kdc1 # svcadm enable -r network/security/krb5_prop
    kdc1 # svcadm enable -r network/security/krb5kdc