Gestión de Kerberos y otros servicios de autenticación en Oracle® Solaris 11.2

Salir de la Vista de impresión

Actualización: Septiembre de 2014
 
 

Cómo intercambiar un KDC maestro y un KDC esclavo

En este procedimiento, el servidor KDC maestro que se está intercambiando se denomina kdc1. El KDC esclavo que se convertirá en el nuevo KDC maestro se denomina kdc4. Este procedimiento supone que utiliza la propagación incremental.

Antes de empezar

Complete el procedimiento Cómo configurar un KDC esclavo intercambiable.

Debe asumir el rol root. Para obtener más información, consulte Uso de sus derechos administrativos asignados de Protección de los usuarios y los procesos en Oracle Solaris 11.2 .

  1. En el nuevo KDC maestro, inicie kadmin.
    kdc4 # /usr/sbin/kadmin -p kws/admin
    Enter password: xxxxxxxx
    kadmin:
  2. Cree nuevos principales para el servicio kadmind.

    El ejemplo siguiente muestra el primer comando addprinc en dos líneas, pero debe escribirse en una línea.

    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. Salga de kadmin.
    kadmin: quit
  4. En el nuevo KDC maestro, fuerce la sincronización.

    Los siguientes pasos fuerzan una actualización completa del KDC en el servidor esclavo.

    1. Desactive el servicio krb5kdc y elimine su archivo log.
      kdc4 # svcadm disable network/security/krb5kdc
      kdc4 # rm /var/krb5/principal.ulog
    2. Verifique que la actualización se haya completado.
      kdc4 # /usr/sbin/kproplog -h
    3. Reinicie el servicio KDC.
      kdc4 # svcadm enable -r network/security/krb5kdc
    4. Reinicialice el log de actualización para el nuevo servidor KDC maestro.
      kdc4 # svcadm disable network/security/krb5kdc
      kdc4 # rm /var/krb5/principal.ulog
  5. En el KDC maestro antiguo, termine los servicios kadmin y krb5kdc.

    Al terminar el servicio kadmin, evita que se realicen cambios en la base de datos del KDC.

    kdc1 # svcadm disable network/security/kadmin
    kdc1 # svcadm disable network/security/krb5kdc
  6. En el KDC maestro antiguo, especifique el tiempo de sondeo para solicitar propagaciones.

    Elimine el comentario de la entrada sunw_dbprop_master_ulogsize en /etc/krb5/kdc.conf y agregue una entrada que defina el intervalo de sondeo del esclavo. Esta entrada establece el tiempo de sondeo en dos minutos.

    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. En el KDC maestro antiguo, mueva los comandos del KDC maestro y el archivo kadm5.acl.

    Los comandos del KDC maestro no se deben ejecutar desde el KDC maestro antiguo.

    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. En el servidor DNS, cambie los nombres de alias del KDC maestro.

    Para cambiar los servidores, edite el archivo de zona example.com y cambie la entrada para masterkdc.

    masterkdc IN CNAME kdc4
  9. En el servidor DNS, vuelva a cargar la nueva información de alias.
    # svcadm refresh network/dns/server
  10. En el nuevo KDC maestro, mueva los comandos del KDC maestro y el archivo kpropd.acl esclavo.

    Movió los comandos del KDC maestro en Step 3 of Cómo configurar un KDC esclavo intercambiable.

    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. En el nuevo KDC maestro, cree el archivo de lista de control de acceso de Kerberos, kadm5.acl.

    Una vez que se rellena, el archivo /etc/krb5/kadm5.acl debe contener todos los nombres de principales que tienen permitido administrar el KDC. El archivo también debe mostrar todos los esclavos que pueden realizar solicitudes de propagación incremental. Para obtener más información, consulte la página del comando man kadm5.acl(4).

    kdc4 # pfedit /etc/krb5/kadm5.acl
    kws/admin@EXAMPLE.COM   *
    kiprop/kdc1.example.com@EXAMPLE.COM p
  12. En el nuevo KDC maestro, especifique el tamaño de log de actualización en el archivo kdc.conf.

    Elimine el comentario de la entrada sunw_dbprop_slave_poll y agregue una entrada que defina sunw_dbprop_master_ulogsize. Esta entrada establece el tamaño de log en 1.000 entradas.

    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. En el nuevo KDC maestro, active los servicios kadmin y krb5kdc.
    kdc4 # svcadm enable -r network/security/krb5kdc
    kdc4 # svcadm enable -r network/security/kadmin
  14. En el KDC maestro antiguo, agregue el principal de servicio kiprop.

    La agregación del principal kiprop al archivo krb5.keytab permite que el daemon kpropd se autentique para el servicio de propagación incremental.

    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. En el KDC maestro antiguo, agregue una entrada para cada KDC en el archivo krb5.conf al archivo de configuración de propagación.
    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. En el KDC maestro antiguo, active los servicios kpropd y krb5kdc.
    kdc1 # svcadm enable -r network/security/krb5_prop
    kdc1 # svcadm enable -r network/security/krb5kdc