Para proporcionar un ejemplo completo, asuma que no ha ejecutado el procedimiento de configuración previa. Si lo ha utilizado al instalar el software, no deberá editar muchos de los archivos incluidos en este procedimiento; sin embargo, debería revisar su contenido.
En este procedimiento se utilizan los parámetros de configuración siguientes:
nombre de ámbito = ACME.COM
nombre de dominio de DNS = acme.com
KDC maestro = kdc1.acme.com
KDC esclavo = kdc2.acme.com
principal admin = kws/admin
URL de ayuda en línea = http://puebla:8888/ab2/coll.384.1/SEAM/@AB2PageView/6956
Ajuste el URL para que se dirija al apartado "Herramienta de administración de SEAM" tal y como se describe en SEAM: Notas sobre la instalación y la versión.
Requisitos previos para configurar un KDC maestro.
Este procedimiento requiere que esté instalado el software de KDC maestro. Además, DNS debe estar en ejecución. Si el maestro será intercambiable, véase "Intercambio de KDC maestro y esclavo" para obtener instrucciones de asignación de nombres adicionales.
Conviértase en superusuario en el KDC maestro.
Edite el archivo de configuración de Kerberos (krb5.conf).
Necesita cambiar los nombres de ámbito y los nombres de los servidores. Para obtener una descripción completa de este archivo, véase la página del comando man krb5.conf(4). Si ha instalado el software de SEAM mediante los archivos de configuración, verifique el contenido del archivo en lugar de editarlo.
kdc1 # cat /etc/krb5/krb5.conf [libdefaults] default_realm = ACME.COM [realms] ACME.COM = { kdc = kdc1.acme.com kdc = kdc2.acme.com admin_server = kdc1.acme.com } [domain_realm] .acme.com = ACME.COM # # si el nombre de dominio y el nombre de ámbito son equivalentes, # esta entrada no es necesaria # [logging] default = FILE:/var/krb5/kdc.log kdc = FILE:/var/krb5/kdc.log [appdefaults] gkadmin = { help_url = http://puebla:8888/ab2/coll.384.1/SEAM/@AB2PageView/6956 } |
En este ejemplo, se cambiaron las líneas para default_realm, kdc, admin_server y todas las entradas de domain_realm . Se incluye la línea para default_realm para completar el ejemplo, pero si los nombres del ámbito y del dominio son equivalentes, el programa de instalación no creará esta entrada. Además, se editó la línea que define help_url.
Edite el archivo de configuración del KDC (kdc.conf).
Necesita cambiar el nombre de ámbito. Para obtener una descripción completa de este archivo, véase la página del comando man kdc.conf(4). Si ha instalado el software de SEAM mediante los archivos de configuración, verifique el contenido del archivo en lugar de editarlo.
kdc1 # cat /etc/krb5/kdc.conf [kdcdefaults] kdc_ports = 88,750 [realms] ACME.COM= { 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 } |
En este ejemplo, se ha cambiado la definición del nombre del ámbito del apartado realms.
Cree la base de datos del KDC mediante kdb5_util.
El comando kdb5_util crea la base de datos del KDC y además, cuando se utiliza con la opción -s, crea un archivo de reserva que se utiliza para autenticar el KDC a sí mismo antes de que se inicien los daemons kadmind y krb5kdc.
kdc1 # /usr/krb5/sbin/kdb5_util create -r ACME.COM -s Inicializando la base de datos '/var/krb5/principal' para el ámbito 'ACME.COM' nombre de clave maestra 'K/M@ACME.COM' Se le solicitará la Contraseña maestra de la base de datos. Es importante que NO OLVIDE esta contraseña. Escriba la clave maestra de la base de datos de KDC: <escriba la clave> Vuelva a escribir la clave maestra de KDC para verificarla: <vuélvala a escribir |
Si el nombre del ámbito es equivalente al nombre de dominio del espacio de nombres del servidor, no es necesaria la opción -r seguida de nombre del ámbito.
Edite el archivo de lista de control de acceso de Kerberos (kadm5.acl).
Cuando esté lleno, /etc/krb5/kadm5.acl debería contener todos los nombres de los principales que tengan permiso para administrar el KDC. La primera entrada agregada puede tener un aspecto similar a:
kws/admin@ACME.COM * |
Esta entrada proporciona al principal kws/admin del ámbito ACME.COM la capacidad para modificar los principales o las normas del KDC. La instalación predeterminada incluye un "*" para que concuerde con todos los principales de admin . Esto podría ser un riesgo de seguridad, de forma que es más seguro incluir una lista de todos los principales admin.
Inicie kadmin.local.
Los sub-pasos siguientes crean los principales que utiliza SEAM.
kdc1 # /usr/krb5/sbin/kadmin.local kadmin.local: |
Puede agregar principales de administración a la base de datos mediante kadmin.local.
Puede agregar tantos principales admin como necesite. Para terminar el proceso de configuración de KDC, debe agregar un principal admin como mínimo. Para este ejemplo, se agrega un principal kws/admin. Puede sustituir el nombre de un principal apropiado por " kws."
kadmin.local: addprinc kws/admin Escriba la contraseña para el principal kws/admin@ACME.COM: <escriba la contraseña> Vuelva a escribir la contraseña para el principal kws/admin@ACME.COM: <escríbala de nuevo> Principal "kws/admin@ACME.COM" creado. kadmin.local: |
Cree un archivo de tabla de claves para kadmin mediante kadmin.local.
Esta secuencia de comandos crea un archivo de tabla de claves especial con entradas de principal para kadmin y changepw. Estos principales son necesarios para el servicio kadmind.
kadmin.local: ktadd -k /etc/krb5/kadm5.keytab kadmin/kdc1.acme.com Entrada para el principal kadmin/kdc1.acme.com con kvno 3, tipo de codificación DES-CBC-CRC agregado a la tabla de claves WRFILE:/etc/krb5/kadm5.keytab. kadmin.local: ktadd -k /etc/krb5/kadm5.keytab changepw/kdc1.acme.com Entrada para el principal changepw/kdc1.acme.com con kvno 3, tipo de codificación DES-CBC-CRC agregado a la tabla de claves WRFILE:/etc/krb5/kadm5.keytab. kadmin.local: |
Salga de kadmin.local
Ha agregado todos los principales necesarios para los pasos siguientes.
kadmin.local: quit |
Inicie los daemons de Kerberos.
kdc1 # /etc/init.d/kdc start kdc1 # /etc/init.d/kdc.master start |
Inicie kadmin.
En este punto, puede agregar los principales mediante la Herramienta de administración SEAM (SEAM Tool). El ejemplo de línea de comandos se muestra por su sencillez. Puede iniciar una sesión con uno de los nombres de principal admin que creó anteriormente en este procedimiento.
kdc1 # /usr/krb5/sbin/kadmin -p kws/admin Escriba la contraseña: <Escriba la contraseña de kws/admin> kadmin: |
Cree el principal del sistema KDC maestro mediante kadmin.
Las aplicaciones adaptadas a Kerberos (como klist y kprop), así como los servicios adaptados a Kerberos (como ftp y telnet) utilizan el principal de sistema.
kadmin: addprinc -randkey host/kdc1.acme.com Principal "host/kdc1.acme.com@ACME.COM" creado. kadmin: |
Opcional: cree el principal root del KDC maestro mediante kadmin.
Este principal se utiliza para los montajes NFS autenticados y, por tanto, posiblemente no sea necesario en un KDC maestro.
kadmin: addprinc root/kdc1.acme.com Escriba la contraseña para el principal root/kdc1.acme.com@ACME.COM: <escriba la contraseña> Vuelva a escribir la contraseña para el principal root/kdc1.acme.com@ACME.COM: <escríbala de nuevo> Principal "root/kdc1.acme.com@ACME.COM" creado. kadmin: |
Agregue el principal de sistema del KDC maestro al archivo de tabla de claves del KDC maestro.
La adición del principal de sistema al archivo de tabla de claves permite que se utilice este principal automáticamente.
kadmin: ktadd host/kdc1.acme.com kadmin: Entrada para el principal host/kdc1.acme.com con kvno 3, tipo de codificación DES-CBC-CRC agregado a la tabla de claves WRFILE:/etc/krb5/krb5.keytab. kadmin: quit |
Salga de kadmin
kadmin: quit |
Agregue una entrada para cada KDC en el archivo de configuración de la propagación (kpropd.acl).
Para obtener una descripción completa de este archivo, véase la página del comando man kprop(1M). Si ha instalado el software de SEAM mediante los archivos de configuración, verifique el contenido del archivo en lugar de editarlo.
kdc1 # cat /etc/krb5/kpropd.acl host/kdc1.acme.com@ACME.COM host/kdc2.acme.com@ACME.COM |
Opcional: sincronice el reloj de los KDC maestros mediante NTP u otro mecanismo de sincronización de relojes.
No es necesario instalar y utilizar NTP, pero, para que sea satisfactoria la autenticación, todos los relojes deben estar dentro del tiempo predeterminado definido en el apartado libdefaults del archivo krb5.conf. Véase "Sincronización de relojes entre los KDC y los clientes SEAM" para obtener información sobre NTP.