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 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 mediante PAM. Personaliza archivos de configuración del PAM por sistema en el servidor de migración y el servidor maestro para controlar el reconocimiento de credenciales UNIX y la nueva autenticación en el dominio Kerberos.

Para obtener información sobre PAM, consulte Chapter 1, Uso de módulos de autenticación conectables y la página del comando man pam.conf(4).

    En este procedimiento, los nombres del servicio de inicio de sesión se configuran para usar la migración automática. Este ejemplo utiliza los siguientes parámetros de configuración:

  • Nombre de dominio = EXAMPLE.COM

  • KDC maestro = kdc1.example.com

  • Equipo que hospeda el servicio de migración = server1.example.com

  • Principal de servicio de migración = host/server1.example.com

Antes de empezar

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. Asegúrese de que 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
    ...

    Para obtener información sobre las opciones del comando, consulte la página del comando man klist(1).

  2. Si server1 no aparece, configúrelo como un cliente Kerberos del dominio EXAMPLE.COM.

    Para conocer los pasos, consulte los ejemplos en Configuración de clientes Kerberos.

  3. Modifique la política del PAM para server1.

    Para obtener más información, consulte Asignación de una política del PAM por usuario.

    1. Determine qué política de Kerberos está en uso en server1.
      % grep PAM_POLICY /etc/security/policy.conf
      # PAM_POLICY specifies the system-wide PAM policy (see pam_user_policy(5))
      ...
      PAM_POLICY=krb5_first
    2. Copie ese archivo de política del PAM y, a continuación, modifique el archivo de la nueva política que desea agregar al módulo pam_krb5_migrate.so.1 para cada pila de autenticación.
      server1 # cd /etc/security/pam_policy/; cp krb5_first krb5_firstmigrate
      server1 # pfedit /etc/security/pam_policy/krb5_firstmigrate.
      # login service (explicit because of pam_dial_auth)
      #
      login	auth requisite	   pam_authtok_get.so.1
      ...
      login	auth required		pam_unix_auth.so.1
      login    auth optional		pam_krb5_migrate.so.1
      #
      # rlogin service (explicit because of pam_rhost_auth)
      #
      rlogin	auth sufficient	 pam_rhosts_auth.so.1
      ...
      rlogin	auth required	   pam_unix_auth.so.1
      rlogin   auth optional        pam_krb5_migrate.so.1
      #
      # Kerberized rlogin service
      #
      krlogin	auth required		pam_unix_cred.so.1
      krlogin	auth required		pam_krb5.so.1
      krlogin	auth optional		pam_krb5_migrate.so.1
      #
      # rsh service (explicit because of pam_rhost_auth)
      #
      rsh	auth sufficient		pam_rhosts_auth.so.1
      rsh	auth required		  pam_unix_cred.so.1
      rsh	auth optional		  pam_krb5_migrate.so.1
      #
      # Kerberized rsh service
      #
      krsh	auth required		pam_unix_cred.so.1
      krsh	auth required		pam_krb5.so.1
      krsh	auth optional		pam_krb5_migrate.so.1
      #
      # Kerberized telnet service
      #
      ktelnet	auth required		pam_unix_cred.so.1
      ktelnet	auth required		pam_krb5.so.1
      ktelnet	auth optional		pam_krb5_migrate.so.1
      #
      # PPP service (explicit because of pam_dial_auth)
      #
      ppp	auth requisite	   pam_authtok_get.so.1
      ...
      ppp	auth required		pam_unix_auth.so.1
      ppp	auth optional		pam_krb5_migrate.so.1
      #
      # GDM Autologin (explicit because of pam_allow).  These need to be
      # here as there is no mechanism for packages to amend pam.conf as
      # they are installed.
      #
      gdm-autologin auth  required    pam_unix_cred.so.1
      gdm-autologin auth  sufficient  pam_allow.so.1
      gdm-autologin auth optional    pam_krb5_migrate.so.1
      #
      # Default definitions for Authentication management
      # Used when service name is not explicitly mentioned for authentication
      #
      OTHER	auth requisite	   pam_authtok_get.so.1
      ...
      OTHER	auth required		pam_unix_auth.so.1
      OTHER	auth optional		pam_krb5_migrate.so.1
      #
      # passwd command (explicit because of a different authentication module)
      #
      passwd	auth required		pam_passwd_auth.so.1
      #
      # cron service (explicit because of non-usage of pam_roles.so.1)
      #
      cron	account required	pam_unix_account.so.1
      #
      # cups service (explicit because of non-usage of pam_roles.so.1)
      #
      cups	account	required	pam_unix_account.so.1
      #
      # GDM Autologin (explicit because of pam_allow) This needs to be here
      # as there is no mechanism for packages to amend pam.conf as they are
      # installed.
      #modified
      gdm-autologin account  sufficient  pam_allow.so.1
      #
      .
      .
      .
    3. (Opcional) Fuerce un cambio inmediato de contraseña.

      Para las cuentas de Kerberos recientemente creadas, establezca el tiempo de caducidad de la contraseña a la hora actual agregando la opción –expire_pw a las entradas pam_krb5_migrate. Para obtener más información, consulte la página del comando man pam_krb5_migrate(5).

      service-name auth optional     pam_krb5_migrate.so.1 expire_pw
    4. En este archivo de configuración, modifique la pila de cuentas OTHER para bloquear el acceso si la contraseña de Kerberos ha caducado.
      # Definition for Account management
      # Used when service name is not explicitly mentioned for account management
      # Re-ordered pam_krb5 causes password expiration in Kerberos to block access
      #
      OTHER	account	requisite   pam_roles.so.1
      OTHER	account	required	pam_krb5.so.1
      OTHER	account	required	pam_unix_account.so.1
      OTHER	account	required	pam_tsol_account.so.1
      # OTHER	account	required	pam_krb5.so.1
      #
      .
      .
      .
    5. Cambie la entrada PAM_POLICY en el archivo policy.conf para utilizar el archivo de configuración modificado.
      server1 # pfedit /etc/security/policy.conf
      ...
      # PAM_POLICY=krb5_first
      PAM_POLICY=krb5_firstmigrate

      Para obtener más información, lea el archivo policy.conf.

  4. En el KDC maestro, actualice el archivo de control de acceso kadm5.acl.

    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. Use el privilegio U para enumerar los usuarios que no se deben migrar. Estas entradas deben preceder a la entrada ui o permitir todo. Para obtener más información, consulte la página del comando man kadm5.acl(4).

    kdc1 # pfedit /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, active el daemon kadmind para usar el servicio del PAM k5migrate.

    Si un archivo de servicio k5migrate no está en el directorio /etc/pam.d, agregue el archivo de servicio al directorio. Para obtener más información, consulte la página del comando man pam.d(4).

    Esta modificación permite la validación de contraseñas de usuario de UNIX para las cuentas que necesitan migración.

    kdc1 # pfedit /etc/pam.d/k5migrate
    ...
    # Permits validation of migrated UNIX accounts
    auth    required        pam_unix_auth.so.1
    account required        pam_unix_account.so.1

    Notas -  k5migrate es el nombre de un servicio del PAM. El archivo debe tener el nombre k5migrate.
  6. Compruebe la configuración antes de ponerla en producción.
    • Como usuario común, pruebe cada servicio del PAM modificado.
    • Como usuario root, pruebe cada servicio del PAM modificado.
    • Fuerce un cambio de contraseña y, a continuación, pruebe los servicios del PAM modificados.