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 .
kdc4 # /usr/sbin/kadmin -p kws/admin Enter password: xxxxxxxx kadmin:
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:
kadmin: quit
Los siguientes pasos fuerzan una actualización completa del KDC en el servidor esclavo.
kdc4 # svcadm disable network/security/krb5kdc kdc4 # rm /var/krb5/principal.ulog
kdc4 # /usr/sbin/kproplog -h
kdc4 # svcadm enable -r network/security/krb5kdc
kdc4 # svcadm disable network/security/krb5kdc kdc4 # rm /var/krb5/principal.ulog
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
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 }
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
Para cambiar los servidores, edite el archivo de zona example.com y cambie la entrada para masterkdc.
masterkdc IN CNAME kdc4
# svcadm refresh network/dns/server
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
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
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 }
kdc4 # svcadm enable -r network/security/krb5kdc kdc4 # svcadm enable -r network/security/kadmin
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
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
kdc1 # svcadm enable -r network/security/krb5_prop kdc1 # svcadm enable -r network/security/krb5kdc