Gestion de Kerberos et d'autres services d'authentification dans Oracle® Solaris 11.2

Quitter la vue de l'impression

Mis à jour : Septembre 2014
 
 

Configuration de la migration automatique des utilisateurs dans un domaine Kerberos

Les utilisateurs ne disposant pas d'un principal Kerberos peuvent être automatiquement migrés vers un domaine Kerberos existant à l'aide de PAM. PAM vous personnalisez les fichiers de configuration par système sur le serveur le serveur de migration et du UNIX pour gérer et la reconnaissance des l'authentifier à nouveau les informations d'identification et de connexion dans le domaine Kerberos.

Pour plus d'informations sur le PAM, reportez-vous à la section Chapter 1, Utilisation de modules d'authentification enfichables et à la page de manuel pam.conf(4).

    Dans cette procédure, les noms de service de connexion sont configurés en vue de l'utilisation de la migration. Cet exemple utilise les paramètres de configuration suivants :

  • Nom de domaine = EXAMPLE.COM

  • KDC maître = kdc1.example.com

  • Machine hébergeant le service de migration = server1.example.com

  • Principal du service de migration = host/server1.example.com

Avant de commencer

Vous devez prendre le rôle root. Pour plus d'informations, reportez-vous à la section A l’aide de vos droits administratifs attribués du manuel Sécurisation des utilisateurs et des processus dans Oracle Solaris 11.2 .

  1. Assurez-vous qu'un principal de service d'hôte pour server1 existe.

    L'hôte principal de service dans le fichier keytab de server1 est utilisé pour authentifier le serveur auprès du KDC maître.

    server1 # klist -k
    Keytab name: FILE:/etc/krb5/krb5.keytab
    KVNO Principal
    ---- ------------------------------------------------
    3 host/server1.example.com@EXAMPLE.COM
    ...

    Pour plus d'informations sur les options de la commande, reportez-vous à la page de manuel klist(1).

  2. Si server1 n'est pas répertorié, configurez-le en tant que client Kerberos du domaine EXAMPLE.COM.

    Reportez-vous aux exemples dans la section Configuration des clients Kerberos pour connaître la procédure à suivre.

  3. Modifiez la stratégie PAM pour server1.

    Pour plus d'informations, reportez-vous à la section Affectation d'une stratégie PAM par utilisateur.

    1. Déterminez la stratégie Kerberos utilisée sur 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. Copiez ce fichier de stratégie PAM, puis modifiez le nouveau fichier de stratégie pour ajouter le module pam_krb5_migrate.so.1 à chaque pile d'authentification.
      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. (Facultatif) Forcez une modification immédiate du mot.

      Pour les nouveaux comptes Kerberos, définissez le délai d'expiration du mot de passe à l'heure actuelle en ajoutant l'option –expire_pw aux entrées pam_krb5_migrate. Pour plus d'informations, reportez-vous à la page de manuel pam_krb5_migrate(5).

      service-name auth optional     pam_krb5_migrate.so.1 expire_pw
    4. Dans ce fichier de configuration, modifiez la pile de compte OTHER afin de bloquer l'accès si le mot de passe Kerberos est arrivé à expiration.
      # 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. Modifiez l'entrée PAM_POLICY dans le fichier policy.conf pour utiliser le fichier de configuration modifié.
      server1 # pfedit /etc/security/policy.conf
      ...
      # PAM_POLICY=krb5_first
      PAM_POLICY=krb5_firstmigrate

      Pour plus d'informations, consultez le fichier policy.conf.

  4. Sur le KDC maître, mettez à jour le fichier de contrôle d'accès kadm5.acl.

    Les entrées suivantes accordent des privilèges de consultation et de migration au principal de service host/server1.example.com pour tous les utilisateurs à l'exception de l'utilisateur root. Utilisez le privilège U pour dresser la liste des utilisateurs ne devant pas faire l'objet d'une migration. Ces entrées doivent précéder l'entrée "permit all" ou ui. Pour plus d'informations, reportez-vous à la page de manuelkadm5.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. Sur le KDC maître, activez le démon kadmind pour utiliser le service PAM k5migrate.

    Si un fichier de service k5migrate ne figure pas dans le répertoire /etc/pam.d, ajoutez le fichier de service au répertoire. Pour plus d'informations, reportez-vous à la page de manuel pam.d(4).

    La validation de cette modification UNIX permet au mots de passe utilisateur pour les comptes qui nécessitent une migration.

    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

    Remarque -  k5migrate est le nom d'un service PAM. Le fichier doit être appelé k5migrate.
  6. Tester la configuration. avant d'insérer-le dans l'environnement de production.
    • En tant qu'utilisateur standard, service PAM tester chaque modification.
    • En tant que root, testez chaque service PAM modifié.
    • Forcer la modification du mot de passe modifié PAM, puis testez les services.