JavaScript is required to for searching.
Omitir V�nculos de navegaci�n
Salir de la Vista de impresi�n
Administración de Oracle Solaris: servicios de seguridad     Oracle Solaris 11 Information Library (Español)
search filter icon
search icon

Información del documento

Prefacio

Parte I Descripción general de la seguridad

1.  Servicios de seguridad (descripción general)

Parte II Seguridad de sistemas, archivos y dispositivos

2.  Gestión de seguridad de equipos (descripción general)

3.  Control de acceso a sistemas (tareas)

4.  Servicio de análisis de virus (tareas)

5.  Control de acceso a dispositivos (tareas)

6.  Uso de la herramienta básica de creación de informes de auditoría (tareas)

7.  Control de acceso a archivos (tareas)

Parte III Roles, perfiles de derechos y privilegios

8.  Uso de roles y privilegios (descripción general)

9.  Uso del control de acceso basado en roles (tareas)

10.  Atributos de seguridad en Oracle Solaris (referencia)

Parte IV Servicios criptográficos

11.  Estructura criptográfica (descripción general)

12.  Estructura criptográfica (tareas)

13.  Estructura de gestión de claves

Parte V Servicios de autenticación y comunicación segura

14.  Autenticación de servicios de red (tareas)

15.  Uso de PAM

16.  Uso de SASL

17.  Uso de Secure Shell (tareas)

18.  Secure Shell (referencia)

Parte VI Servicio Kerberos

19.  Introducción al servicio Kerberos

20.  Planificación del servicio Kerberos

21.  Configuración del servicio Kerberos (tareas)

Configuración del servicio Kerberos (mapa de tareas)

Configuración de servicios Kerberos adicionales (mapa de tareas)

Configuración de servidores KDC

Cómo configurar automáticamente un KDC maestro

Cómo configurar interactivamente un KDC maestro

Cómo configurar manualmente un KDC maestro

Cómo configurar un KDC para utilizar un servidor de datos LDAP

Cómo configurar automáticamente un KDC esclavo

Cómo configurar interactivamente un KDC esclavo

Cómo configurar manualmente un KDC esclavo

Cómo refrescar las claves del servicio de otorgamiento de tickets en un servidor maestro

Configuración de autenticación entre dominios

Cómo establecer la autenticación entre dominios jerárquica

Cómo establecer la autenticación entre dominios directa

Configuración de servidores de aplicaciones de red de Kerberos

Cómo configurar un servidor de aplicaciones de red de Kerberos

Cómo utilizar el servicio de seguridad genérico con Kerberos al ejecutar FTP

Configuración de servidores NFS con Kerberos

Cómo configurar servidores NFS con Kerberos

Cómo crear una tabla de credenciales

Cómo agregar una única entrada a la tabla de credenciales

Cómo proporcionar asignación de credenciales entre dominios

Cómo configurar un entorno NFS seguro con varios modos de seguridad de Kerberos

Configuración de clientes Kerberos

Configuración de clientes Kerberos (mapa de tareas)

Cómo crear un perfil de instalación de cliente Kerberos

Cómo configurar automáticamente un cliente Kerberos

Cómo configurar interactivamente un cliente Kerberos

Cómo configurar un cliente Kerberos para un servidor de Active Directory

Cómo configurar manualmente un cliente Kerberos

Cómo deshabilitar la verificación del ticket de otorgamiento de tickets

Cómo acceder a un sistema de archivos NFS protegido con Kerberos como el usuario root

Cómo configurar la migración automática de usuarios en un dominio Kerberos

Cómo configurar el bloqueo de cuenta

Sincronización de relojes entre clientes Kerberos y KDC

Intercambio de un KDC maestro y un KDC esclavo

Cómo configurar un KDC esclavo intercambiable

Cómo intercambiar un KDC maestro y un KDC esclavo

Administración de la base de datos de Kerberos

Copia de seguridad y propagación de la base de datos de Kerberos

El archivo kpropd.acl

El comando kprop_script

Cómo realizar copias de seguridad de la base de datos de Kerberos

Cómo restaurar la base de datos de Kerberos

Cómo convertir una base de datos de Kerberos después de una actualización de servidor

Cómo reconfigurar un KDC maestro para utilizar la propagación incremental

Cómo reconfigurar un KDC esclavo para utilizar la propagación incremental

Cómo configurar un KDC esclavo para utilizar la propagación completa

Cómo verificar que los servidores KDC estén sincronizados

Cómo propagar manualmente la base de datos de Kerberos a los KDC esclavos

Configuración de propagación en paralelo

Pasos de configuración para la propagación en paralelo

Administración del archivo intermedio

Cómo eliminar un archivo intermedio

Cómo emplear una nueva clave maestra

Gestión de un KDC en un servidor de directorios LDAP

Cómo mezclar atributos de principales de Kerberos en un tipo de clase de objeto que no es de Kerberos

Cómo destruir un dominio en un servidor de directorios LDAP

Aumento de la seguridad en servidores Kerberos

Cómo habilitar sólo aplicaciones Kerberizadas

Cómo restringir el acceso a servidores KDC

Cómo utilizar un archivo de diccionario para aumentar la seguridad de contraseñas

22.  Mensajes de error y resolución de problemas de Kerberos

23.  Administración de las políticas y los principales de Kerberos (tareas)

24.  Uso de aplicaciones Kerberos (tareas)

25.  El servicio Kerberos (referencia)

Parte VII Auditoría en Oracle Solaris

26.  Auditoría (descripción general)

27.  Planificación de la auditoría

28.  Gestión de auditoría (tareas)

29.  Auditoría (referencia)

Glosario

Índice

Configuración de clientes Kerberos

Los clientes Kerberos incluyen cualquier host, que no es un servidor KDC, en la red que necesita utilizar servicios Kerberos. Esta sección proporciona procedimientos para instalar un cliente Kerberos, así como información específica sobre el uso de la autenticación de root para montar sistemas de archivos NFS.

Configuración de clientes Kerberos (mapa de tareas)

El siguiente mapa de tareas incluye todos los procedimientos asociados con la configuración de clientes Kerberos. Cada fila incluye un identificador de tarea y una descripción del motivo por el que desea realizar la tarea, seguidos de un enlace a la tarea.

Tarea
Descripción
Para obtener instrucciones
Establecer un perfil de instalación de cliente Kerberos
Genera un perfil de instalación de cliente que se puede utilizar para instalar automáticamente un cliente Kerberos.
Configurar un cliente Kerberos
Instala manualmente un cliente Kerberos. Utilizar este procedimiento si la instalación de cada cliente requiere parámetros de instalación únicos.
Instala automáticamente un cliente Kerberos. Utilice este procedimiento si los parámetros de instalación para cada cliente son los mismos.
Instala interactivamente un cliente Kerberos. Utilice este procedimiento si sólo algunos de los parámetros de instalación deben cambiarse.
Instala automáticamente un cliente Kerberos de un servidor de Active Directory.
Permitir que un cliente acceda a un sistema de archivos NFS como el usuario root
Crea un principal root en el cliente, para que el cliente pueda montar un sistema de archivos NFS compartido con el acceso root. Además, permite que el cliente configure acceso root no interactivo al sistema de archivos NFS, de modo que se puedan ejecutar trabajos cron.
Deshabilitar la verificación del KDC que ha emitido un ticket de otorgamiento de tickets (TGT) de cliente
Permite a los clientes que no tienen un principal host almacenado en el archivo keytab local omitir la comprobación de seguridad que verifica que el KDC que ha emitido el TGT sea el mismo servidor que ha emitido el principal host.

Cómo crear un perfil de instalación de cliente Kerberos

Este procedimiento crea un perfil kclient que se puede utilizar al instalar un cliente Kerberos. Mediante el perfil kclient, se reducen las probabilidades de errores de escritura. Asimismo, el uso del perfil reduce la intervención del usuario, en comparación con el proceso interactivo.

  1. Conviértase en superusuario.
  2. Cree un perfil de instalación kclient.

    Un ejemplo de perfil kclient podría ser similar al siguiente:

    client# cat /net/denver.example.com/export/install/profile
    REALM EXAMPLE.COM
    KDC kdc1.example.com
    ADMIN clntconfig
    FILEPATH /net/denver.example.com/export/install/krb5.conf
    NFS 1
    DNSLOOKUP none

Cómo configurar automáticamente un cliente Kerberos

Antes de empezar

Este procedimiento utiliza un perfil de instalación. Consulte Cómo crear un perfil de instalación de cliente Kerberos.

  1. Conviértase en administrador o asuma un rol o nombre de usuario que se haya asignado al perfil de gestión de clientes de Kerberos.

    Para obtener más información, consulte Cómo obtener derechos administrativos.

  2. Ejecute la secuencia de comandos de instalación de kclient.

    Debe proporcionar la contraseña para el principal clntconfig con el fin de completar el proceso.

    client# /usr/sbin/kclient -p /net/denver.example.com/export/install/profile
    
    Starting client setup
    ---------------------------------------------------
    
    kdc1.example.com
    
    Setting up /etc/krb5/krb5.conf.
    
    Obtaining TGT for clntconfig/admin ...
    Password for clntconfig/admin@EXAMPLE.COM: <Type the password>
    
    nfs/client.example.com entry ADDED to KDC database.
    nfs/client.example.com entry ADDED to keytab.
    
    host/client.example.com entry ADDED to KDC database.
    host/client.example.com entry ADDED to keytab.
    
    Copied /net/denver.example.com/export/install/krb5.conf.
    
    ---------------------------------------------------
    Setup COMPLETE.
    
    client#

Ejemplo 21-8 Configuración automática de un cliente Kerberos con valores de sustitución de línea de comandos

El siguiente ejemplo sustituye los parámetros DNSARG y KDC que se establecen en el perfil de instalación.

# /usr/sbin/kclient -p /net/denver.example.com/export/install/profile\
-d dns_fallback -k kdc2.example.com

Starting client setup
---------------------------------------------------

kdc1.example.com

Setting up /etc/krb5/krb5.conf.

Obtaining TGT for clntconfig/admin ...
Password for clntconfig/admin@EXAMPLE.COM: <Type the password>

nfs/client.example.com entry ADDED to KDC database.
nfs/client.example.com entry ADDED to keytab.

host/client.example.com entry ADDED to KDC database.
host/client.example.com entry ADDED to keytab.

Copied /net/denver.example.com/export/install/krb5.conf.

---------------------------------------------------
Setup COMPLETE.

client#

Cómo configurar interactivamente un cliente Kerberos

Este procedimiento utiliza la utilidad de instalación kclient sin un perfil de instalación. En la versión Oracle Solaris 11, la utilidad kclient incrementó la facilidad de uso y la capacidad de trabajar con servidores de Active Directory. Consulte Cómo configurar un cliente Kerberos para un servidor de Active Directory para obtener más información. Consulte el Ejemplo 21-10 para obtener un ejemplo de ejecución de kclient en una versión anterior.

  1. Conviértase en administrador o asuma un rol o nombre de usuario que se haya asignado al perfil de gestión de clientes de Kerberos.

    Para obtener más información, consulte Cómo obtener derechos administrativos.

  2. Ejecute la secuencia de comandos de instalación de kclient.

    Necesita proporcionar la siguiente información:

    • Nombre de dominio Kerberos

    • Nombre de host de KDC maestro

    • Nombres de host de KDC esclavos

    • Dominios que se van a asignar al dominio local

    • Nombres de servicio PAM y opciones que se utilizarán para la autentificación Kerberos

    1. Indique si el servidor KDC no ejecuta una versión Oracle Solaris.

      Si el sistema es un cliente de un servidor KDC que no ejecuta una versión Oracle Solaris, es necesario definir el tipo de servidor que está ejecutando el KDC. Los servidores disponibles son: Microsoft Active Directory, servidor KDC MIT, servidor KDC Heimdal y servidor KDC Shishi.

    2. Seleccione si DNS se debe utilizar para las consultas de Kerberos.

      Si utiliza el DNS para las consultas de Kerberos, deberá introducir la opción de consulta de DNS que desea utilizar. Las opciones válidas son dns_lookup_kdc, dns_lookup_realm y dns_fallback. Consulte la página del comando man krb5.conf(4) para obtener más información sobre estos valores.

    3. Defina el nombre del dominio de Kerberos y el nombre de host de KDC maestro.

      Esta información se ha agregado al archivo de configuración /etc/krb5/krb5.conf.

    4. Seleccione si existen KDC esclavos.

      Si hay KDC esclavos en el dominio, entonces es necesario introducir los nombres de host de KDC esclavos. Esta información se utiliza para crear entradas KDC adicionales en el archivo de configuración del cliente.

    5. Indique si el servicio o las claves de host son necesarios.

      Normalmente, el servicio o las claves de host no son necesarios, a menos que el sistema cliente aloje servicios kerberizados.

    6. Especifique si el cliente es un miembro de un clúster.

      Si el cliente es un miembro de un clúster, entonces tendrá que proporcionar el nombre lógico del clúster. El nombre de host lógico se utiliza al crear claves de servicio, que es necesario cuando se alojan servicios Kerberos de los clústeres.

    7. Identifique cualquier host o dominio que se va a asignar al dominio actual.

      Esta asignación permite que otros dominios pertenezcan al dominio predeterminado del cliente.

    8. Especifique si el cliente utilizará NFS Kerberizado.

      Las claves de servicio NFS se deben crear si el cliente alojará servicios NFS mediante Kerberos.

    9. Indique si el archivo /etc/pam.conf debe actualizarse.

      Esta opción permite al usuario definir qué servicios PAM utilizan Kerberos para la autenticación. Es necesario introducir el nombre del servicio y un indicador que determine cómo se utilizará la autenticación Kerberos. Las opciones de indicadores válidos son:

      • first: utilice primero la autenticación Kerberos y sólo utilice UNIX si la autenticación Kerberos falla

      • only: utilice sólo autenticación Kerberos

      • optional: utilice autenticación Kerberos de manera optativa

    10. Seleccione esta opción si el archivo /etc/krb5/krb5.conf maestro se debe copiar.

      Esta opción permite que se utilice información de configuración específica cuando los argumentos para kclient no son suficientes.

Ejemplo 21-9 Ejecución de la utilidad de instalación kclient

client# /usr/sbin/kclient

Starting client setup
---------------------------------------------------

Is this a client of a non-Solaris KDC ? [y/n]: n
        No action performed.
Do you want to use DNS for kerveros lookups ? [y/n]: n
        No action performed.
Enter the Kerberos realm: EXAMPLE.COM
Specify the KDC hostname for the above realm: kdc1.example.com

Note, this system and the KDC's time must be within 5 minutes of each other for
Kerberos to function. Both systems should run some form of time synchronization
system like Network Time Protocol (NTP).
Do you have any slave KDC(s) ? [y/n]: y
Enter a comma-separated list of slave KDC host names: kdc2.example.com

Will this client need service keys ? [y/n]: n
        No action performed.
Is this client a member of a cluster that uses a logical host name ? [y/n]: n
        No action performed.
Do you have multiple domains/hosts to map to realm ? [y/n]: y
Enter a comma-separated list of domain/hosts to map to the default realm: engineering.example.com, \ example.com

Setting up /etc/krb5/krb5.conf.

Do you plan on doing Kerberized nfs ? [y/n]: y
Do you want to update /etc/pam.conf ? [y/n]: y
Enter a comma-separated list of PAM service names in the following format:
service:{first|only|optional}: xscreensaver:first
Configuring /etc/pam.conf.

Do you want to copy over the master krb5.conf file ? [y/n]: n
        No action performed.

---------------------------------------------------
Setup COMPLETE.

Ejemplo 21-10 Ejecución de la utilidad de instalación kclient en la versión Oracle Solaris 10

A continuación, se muestra la salida de los resultados de la ejecución del comando kclient.

client# /usr/sbin/kclient

Starting client setup
---------------------------------------------------

Do you want to use DNS for kerberos lookups ? [y/n]: n
        No action performed.
Enter the Kerberos realm: EXAMPLE.COM
Specify the KDC hostname for the above realm: kdc1.example.com

Setting up /etc/krb5/krb5.conf.

Enter the krb5 administrative principal to be used: clntconfig/admin
Obtaining TGT for clntconfig/admin ...
Password for clntconfig/admin@EXAMPLE.COM: <Type the password>
Do you plan on doing Kerberized nfs ? [y/n]: n

host/client.example.com entry ADDED to KDC database.
host/client.example.com entry ADDED to keytab.

Do you want to copy over the master krb5.conf file ? [y/n]: y
Enter the pathname of the file to be copied: \
/net/denver.example.com/export/install/krb5.conf

Copied /net/denver.example.com/export/install/krb5.conf.

---------------------------------------------------
Setup COMPLETE !
#

Cómo configurar un cliente Kerberos para un servidor de Active Directory

Este procedimiento utiliza la utilidad de instalación kclient sin un perfil de instalación.

  1. Conviértase en superusuario.
  2. (Opcional) Habilite la creación de registros de recursos DNS para el cliente.
    client# sharectl set -p ddns_enable=true smb
  3. Ejecute la utilidad kclient.

    La opción -T selecciona un tipo de servidor KDC. En este caso se selecciona un servidor de Active Directory.

    client# kclient -T ms_ad

    De manera predeterminada, deberá proporcionar la contraseña del administrador principal.

Ejemplo 21-11 Configuración de un cliente Kerberos para un servidor de Active Directory mediante kclient

La siguiente salida muestra los resultados de la ejecución del comando kclient mediante el argumento de tipo de servidor ms_ad (Microsoft Active Directory). El cliente se unirá al dominio de Active Directory denominado EXAMPLE.COM.

client# /usr/sbin/kclient -T ms_ad

Starting client setup
---------------------------------------------------

Attempting to join 'CLIENT' to the 'EXAMPLE.COM' domain.
Password for Administrator@EXAMPLE.COM: <Type the password>
Forest name found: example.com
Looking for local KDCs, DCs and global catalog servers (SVR RRs).

Setting up /etc/krb5/krb5.conf

Creating the machine account in AD via LDAP.
---------------------------------------------------
Setup COMPLETE.
#

Cómo configurar manualmente un cliente Kerberos

En este procedimiento, se utilizan los siguientes parámetros de configuración:

  1. Conviértase en superusuario.
  2. Edite el archivo de configuración de Kerberos (krb5.conf).

    Para cambiar el archivo de la versión predeterminada de Kerberos, debe cambiar los nombres de dominios y los nombres de servidores. También tiene que identificar la ruta a los archivos de ayuda para gkadmin.

    kdc1 # cat /etc/krb5/krb5.conf
    [libdefaults]
            default_realm = EXAMPLE.COM
    
    [realms]
            EXAMPLE.COM = {
            kdc = kdc1.example.com
            kdc = kdc2.example.com
            admin_server = kdc1.example.com
            }
    
    [domain_realm]
            .example.com = EXAMPLE.COM
    #
    # 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://download.oracle.com/docs/cd/E23824_01/html/821-1456/aadmin-23.html

    Nota - Si desea restringir los tipos de cifrado, puede definir las líneas default_tkt_enctypes o default_tgs_enctypes. Consulte Uso de los tipos de cifrado de Kerberos para obtener una descripción de los problemas relacionados con la restricción de los tipos de cifrado.


  3. (Opcional) Cambie el proceso utilizado para ubicar los KDC.

    De manera predeterminada, el dominio de Kerberos para la asignación KDC se determina en el siguiente orden:

    • La definición en la sección realms, en krb5.conf.

    • Mediante la búsqueda de registros SRV en DNS.

    Puede cambiar este comportamiento agregando dns_lookup_kdc o dns_fallback a la sección libdefaults del archivo krb5.conf. Consulte la página del comando man krb5.conf(4) para obtener más información. Tenga en cuenta que las referencias siempre se intentan en primer lugar.

  4. (Opcional) Cambie el proceso que se utiliza para determinar el dominio para un host.

    De manera predeterminada, el host para la asignación de dominio se determina en el siguiente orden:

    • Si el KDC admite referencias, el KDC puede informar al cliente a qué dominio pertenece el host.

    • Por la definición de domain_realm en el archivo krb5.conf.

    • El nombre de dominio DNS del host.

    • El dominio predeterminado.

    Puede cambiar este comportamiento agregando dns_lookup_kdc o dns_fallback a la sección libdefaults del archivo krb5.conf. Consulte la página del comando man krb5.conf(4) para obtener más información. Tenga en cuenta que las referencias siempre se intentarán en primer lugar.

  5. (Opcional) Sincronice el reloj del cliente con el reloj del KDC maestro mediante NTP u otro mecanismo de sincronización de relojes.

    No es necesario instalar ni utilizar el protocolo de hora de red (NTP). Sin embargo, cada reloj debe estar sincronizado con la hora en el servidor KDC dentro de una diferencia máxima definida por la relación clockskew en el archivo krb5.conf para que la autenticación se realice con éxito. Consulte Sincronización de relojes entre clientes Kerberos y KDC para obtener información sobre el NTP.

  6. Inicie kadmin.

    Si desea obtener información sobre cómo utilizar la herramienta gráfica de administración de Kerberos para agregar un principal, consulte Cómo crear un nuevo principal de Kerberos. Para ello, debe iniciar sesión con uno de los nombres de principales admin que creó cuando configuró el KDC maestro. Sin embargo, el siguiente ejemplo muestra cómo agregar los principales necesarios mediante la línea de comandos.

    denver # /usr/sbin/kadmin -p kws/admin
    Enter password: <Type kws/admin password>
    kadmin: 
    1. (Opcional) Cree un principal de usuario si aún no existe ningún principal de usuario.

      Necesita crear un principal de usuario sólo si el usuario asociado con este host no tiene un principal asignado a él.

      kadmin: addprinc mre
      Enter password for principal mre@EXAMPLE.COM: <Type the password>
      Re-enter password for principal mre@EXAMPLE.COM: <Type it again>
      kadmin: 
    2. (Opcional) Cree un principal root y agregue el principal al archivo keytab del servidor.

      Este paso es necesario para que el cliente pueda tener acceso root a sistemas de archivos montados mediante el servicio NFS. Este paso también es necesario si se necesita acceso root no interactivo, por ejemplo, la ejecución de trabajos cron como root.

      Si el cliente no requiere acceso root a un sistema de archivos remoto que está montado mediante el servicio NFS, puede omitir este paso. El principal root debe ser un principal de dos componentes, donde el segundo componente es el nombre de host del sistema cliente Kerberos, para evitar la creación de un principal root de todo el dominio. Tenga en cuenta que cuando la instancia de principal es un nombre de host, el FQDN se debe especificar en letras minúsculas, independientemente de si el nombre de dominio está en mayúsculas o minúsculas en el servicio de nombres.

      kadmin: addprinc -randkey root/client.example.com
      Principal "root/client.example.com" created.
      kadmin: ktadd root/client.example.com
      Entry for principal root/client.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 root/client.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 root/client.example.com with kvno 3, encryption type Triple DES cbc
                mode with HMAC/sha1 added to keytab WRFILE:/etc/krb5/krb5.keytab.
      Entry for principal root/client.example.com with kvno 3, encryption type ArcFour
                with HMAC/md5 added to keytab WRFILE:/etc/krb5/krb5.keytab.
      Entry for principal root/client.example.com with kvno 3, encryption type DES cbc mode
                with RSA-MD5 added to keytab WRFILE:/etc/krb5/krb5.keytab.
      kadmin: 
    3. Cree un principal host y agregue el principal al archivo keytab del servidor.

      El principal host es utilizado por servicios de acceso remoto para proporcionar autenticación. El principal permite que root adquiera una credencial si ya no hay una en el archivo keytab.

      kadmin: addprinc -randkey host/denver.example.com
      Principal "host/denver.example.com@EXAMPLE.COM" created.
      kadmin: ktadd host/denver.example.com
      Entry for principal host/denver.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 host/denver.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 host/denver.example.com with kvno 3, encryption type Triple DES cbc
                mode with HMAC/sha1 added to keytab WRFILE:/etc/krb5/krb5.keytab.
      Entry for principal host/denver.example.com with kvno 3, encryption type ArcFour
                with HMAC/md5 added to keytab WRFILE:/etc/krb5/krb5.keytab.
      Entry for principal host/denver.example.com with kvno 3, encryption type DES cbc mode
                with RSA-MD5 added to keytab WRFILE:/etc/krb5/krb5.keytab.
      kadmin:
    4. (Opcional) Agregue el principal de servicio NFS del servidor al archivo keytab del servidor.

      Este paso sólo es necesario si el cliente necesita acceder a sistemas de archivos NFS utilizando la autenticación Kerberos.

      kadmin: ktadd nfs/denver.example.com
      Entry for principal nfs/denver.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 nfs/denver.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 nfs/denver.example.com with kvno 3, encryption type Triple DES cbc
                mode with HMAC/sha1 added to keytab WRFILE:/etc/krb5/krb5.keytab.
      Entry for principal nfs/denver.example.com with kvno 3, encryption type ArcFour
                with HMAC/md5 added to keytab WRFILE:/etc/krb5/krb5.keytab.
      Entry for principal nfs/denver.example.com with kvno 3, encryption type DES cbc mode
                with RSA-MD5 added to keytab WRFILE:/etc/krb5/krb5.keytab.
      kadmin: 
    5. Salga de kadmin.
      kadmin: quit
  7. (Opcional) Habilite Kerberos con NFS.
    1. Habilite los modos de seguridad de Kerberos en el archivo /etc/nfssec.conf.

      Edite el archivo /etc/nfssec.conf y elimine el símbolo “#” que se encuentra delante de los modos de seguridad de Kerberos.

      # cat /etc/nfssec.conf
       .
       .
      #
      # Uncomment the following lines to use Kerberos V5 with NFS
      #
      krb5            390003  kerberos_v5     default -               # RPCSEC_GSS
      krb5i           390004  kerberos_v5     default integrity       # RPCSEC_GSS
      krb5p           390005  kerberos_v5     default privacy         # RPCSEC_GSS
    2. Habilite el DNS.

      Si el servicio svc:/network/dns/client:default no está habilitado, debe habilitarlo. Consulte la página del comando man resolv.conf(4) para obtener más información.

    3. Reinicie el servicio gssd.
      # svcadm restart network/rpc/gss
  8. Si desea que el cliente renueve automáticamente el TGT o advierta a los usuarios acerca de la caducidad del ticket Kerberos, cree una entrada en el archivo /etc/krb5/warn.conf.

    Consulte la página del comando man warn.conf(4) para obtener más información.

Ejemplo 21-12 Configuración de un cliente Kerberos mediante un KDC que no sea Solaris

Un cliente Kerberos se puede configurar para trabajar con un KDC que no sea Solaris. En este caso, se debe incluir una línea en el archivo /etc/krb5/krb5.conf, en la sección realms. Esta línea cambia el protocolo que se utiliza cuando el cliente se comunica con el servidor de cambio de contraseña de Kerberos. A continuación, se indica el formato de esta línea.

[realms]
                EXAMPLE.COM = {
                kdc = kdc1.example.com
                kdc = kdc2.example.com
                admin_server = kdc1.example.com
                kpasswd_protocol = SET_CHANGE
        }

Ejemplo 21-13 Registros TXT de DNS para la asignación de nombre de host y dominio al dominio Kerberos

@ IN SOA kdc1.example.com root.kdc1.example.com (
                                1989020501   ;serial
                                10800        ;refresh
                                3600         ;retry
                                3600000      ;expire
                                86400 )      ;minimum

                        IN      NS      kdc1.example.com.
kdc1                    IN      A       192.146.86.20
kdc2                    IN      A       192.146.86.21

_kerberos.example.com.             IN      TXT     "EXAMPLE.COM"
_kerberos.kdc1.example.com.        IN      TXT     "EXAMPLE.COM"
_kerberos.kdc2.example.com.        IN      TXT     "EXAMPLE.COM"

Ejemplo 21-14 Registros SRV de DNS para ubicaciones del servidor Kerberos

En este ejemplo, se definen los registros para la ubicación de los KDC, el servidor admin y el servidor kpasswd, respectivamente.

@ IN SOA kdc1.example.com root.kdc1.example.com (
                                1989020501   ;serial
                                10800        ;refresh
                                3600         ;retry
                                3600000      ;expire
                                86400 )      ;minimum

                                   IN      NS      kdc1.example.com.
kdc1                               IN      A       192.146.86.20
kdc2                               IN      A       192.146.86.21

_kerberos._udp.EXAMPLE.COM         IN      SRV 0 0 88  kdc2.example.com
_kerberos._tcp.EXAMPLE.COM         IN      SRV 0 0 88  kdc2.example.com
_kerberos._udp.EXAMPLE.COM         IN      SRV 1 0 88  kdc1.example.com
_kerberos._tcp.EXAMPLE.COM         IN      SRV 1 0 88  kdc1.example.com
_kerberos-adm._tcp.EXAMPLE.COM     IN      SRV 0 0 749 kdc1.example.com
_kpasswd._udp.EXAMPLE.COM          IN      SRV 0 0 749 kdc1.example.com

Cómo deshabilitar la verificación del ticket de otorgamiento de tickets

Este procedimiento desactiva la comprobación de seguridad que comprueba que el KDC del principal de host almacenado en el archivo /etc/krb5/krb5.keytab local sea el mismo KDC que ha emitido el ticket de otorgamiento de tickets (TGT). Esta comprobación impide ataques de falsificación de DNS. Sin embargo, para algunas configuraciones de clientes, el principal host puede no estar disponible, por lo que esta comprobación debería ser deshabilitada para permitir que el cliente funcione. Éstas son las configuraciones que requieren que esta comprobación esté deshabilitada:

  1. Conviértase en superusuario.
  2. Cambie el archivo krb5.conf.

    Si la opción verify_ap_req_nofail se establece en false, el proceso de verificación de TGT no está activado. Consulte la página del comando man krb5.conf(4) para obtener más información sobre esta opción.

    client # cat /etc/krb5/krb5.conf
    [libdefaults]
            default_realm = EXAMPLE.COM
            verify_ap_req_nofail = false
      ...

    Nota - La opción verify_ap_req_nofail se puede introducir en la sección [libdefaults] o [realms] del archivo krb5.conf. Si la opción está en la sección [libdefaults], el valor se utiliza para todos los dominios. Si la opción está en la sección [realms], el valor sólo se aplica al dominio definido.


Cómo acceder a un sistema de archivos NFS protegido con Kerberos como el usuario root

Este procedimiento permite a un cliente acceder a un sistema de archivos NFS que requiere la autenticación Kerberos con el privilegio de ID root. En particular, cuando el sistema de archivos NFS está compartido con opciones, como: -o sec=krb5,root=client1.sun.com.

Cómo configurar la migración automática de usuarios en un dominio Kerberos

Los usuarios, que no tienen un principal de Kerberos, se pueden migrar automáticamente a un dominio Kerberos existente. La migración se logra utilizando la estructura PAM para el servicio en uso mediante el apilamiento del módulo pam_krb5_migrate en la pila de autenticación del servicio, en /etc/pam.conf.

En este ejemplo, los nombres de servicio PAM gdm y other se configuran para usar la migración automática. Se utilizan los siguientes parámetros de configuración:

Antes de empezar

Configure server1 como un cliente Kerberos del dominio EXAMPLE.COM. Consulte Configuración de clientes Kerberos para obtener más información.

  1. Conviértase en superusuario.
  2. Compruebe si existe un principal de servicio de host para server1.

    El principal de servicio de host en el archivo keytab de server1 se utiliza para autenticar el servidor en el KDC maestro.

    server1 # klist -k
    Keytab name: FILE:/etc/krb5/krb5.keytab
        KVNO Principal
        ---- ------------------------------------------------
           3 host/server1.example.com@EXAMPLE.COM
           3 host/server1.example.com@EXAMPLE.COM
           3 host/server1.example.com@EXAMPLE.COM
           3 host/server1.example.com@EXAMPLE.COM
  3. Realice cambios en el archivo de configuración de PAM.
    1. Agregue entradas para el servicio gdm.
      # cat /etc/pam.conf
       .
       .
      # # gdm service # gdm auth requisite pam_authtok_get.so.1 gdm auth required pam_dhkeys.so.1 gdm auth required pam_unix_cred.so.1 gdm auth sufficient pam_krb5.so.1 gdm auth requisite pam_unix_auth.so.1 gdm auth optional pam_krb5_migrate.so.1
    2. (Opcional) Fuerce un cambio inmediato de contraseña si es necesario.

      Las cuentas de Kerberos recién creadas pueden tener el tiempo de caducidad de contraseña establecido en la hora actual (ahora) para forzar un cambio inmediato de contraseña Kerberos. Para establecer el tiempo de caducidad en la hora actual, agregue la opción expire_pw a las líneas que utilizan el módulo pam_krb5_migrate. Consulte la página del comando man pam_krb5_migrate(5) para obtener más información.

      # cat /etc/pam.conf
       .
       .
      gdm auth optional pam_krb5_migrate.so.1 expire_pw
    3. Agregue el módulo pam_krb5 a la pila de cuentas.

      Esta adición permite la caducidad de la contraseña en Kerberos para bloquear el acceso.

      # cat /etc/pam.conf
       .
       .
      #
      # Default definition for Account management
      # Used when service name is not explicitly mentioned for account management
      #
      other   account requisite       pam_roles.so.1
      other account required pam_krb5.so.1
      other   account required        pam_unix_account.so.1
    4. Agregue el módulo pam_krb5 a la pila de contraseñas.

      Esta adición permite que las contraseñas se actualicen cuando la contraseña caduca.

      # cat /etc/pam.conf
       .
       .
      #
      # Default definition for Password management
      # Used when service name is not explicitly mentioned for password management
      #
      other   password required       pam_dhkeys.so.1
      other   password requisite      pam_authtok_get.so.1
      other   password requisite      pam_authtok_check.so.1
      other   password sufficient     pam_krb5.so.1
      other   password required       pam_authtok_store.so.1
  4. En el KDC maestro, actualice el archivo de control de acceso.

    Las entradas siguientes otorgan privilegios de migración y consulta al principal de servicio host/server1.example.com para todos los usuarios, excepto el usuario root. Es importante que los usuarios que no se deben migrar se enumeren en el archivo kadm5.acl utilizando el privilegio U. Estas entradas deben estar antes de la entrada ui o permitir todo. Consulte la página del comando man kadm5.acl(4) para obtener más información.

    kdc1 # cat /etc/krb5/kadm5.acl
    host/server1.example.com@EXAMPLE.COM U root
    host/server1.example.com@EXAMPLE.COM ui *
    */admin@EXAMPLE.COM *
  5. En el KDC maestro, reinicie el daemon de administración Kerberos.

    Este paso permite al daemon kadmind utilizar las nuevas entradas kadm5.acl.

    kdc1 # svcadm restart network/security/kadmin
  6. En el KDC maestro, agregue entradas al archivo pam.conf.

    Las entradas siguientes permiten que el daemon kadmind utilice el servicio PAM k5migrate para validar la contraseña de usuario de UNIX para las cuentas que necesitan migración.

    # grep k5migrate /etc/pam.conf
    k5migrate        auth    required        pam_unix_auth.so.1
    k5migrate        account required        pam_unix_account.so.1

Cómo configurar el bloqueo de cuenta

Ejemplo 21-15 Desbloqueo de principal bloqueado

En el siguiente ejemplo, un principal de usuario se desbloquea:

# kadmin
kadmin: add_policy -unlock principal