PowerScale : OneFS : Comment créer des comptes SPN pour permettre l’authentification Kerberos à l’aide des entrées DNS SmartConnect
Summary: Article sur la création de comptes SPN pour permettre l’authentification Kerberos à l’aide d’entrées DNS SmartConnect.
Instructions
Introduction
Pour pouvoir vous connecter à un cluster par son nom sans fournir de nom d’utilisateur ni de mot de passe dans un environnement basé sur Active Directory, vous devez utiliser l’authentification Kerberos.
Lors de l’accès à un cluster à l’aide de l’authentification Kerberos, le client établit un ticket Kerberos avec le cluster. Il est basé sur le nom DNS que le client utilise pour se connecter. Par défaut, le cluster enregistre uniquement le nom du cluster pour les tickets Kerberos valides. Cela peut entraîner le refus du ticket Kerberos lors de l’utilisation d’entrées DNS basées sur SmartConnect pour la connexion. Cela peut également forcer l’utilisateur à saisir à nouveau son nom d’utilisateur et son mot de passe pour accéder au cluster.
Procédure
Pour prendre en charge plusieurs tickets Kerberos, vous devez enregistrer des comptes SPN (nom principal de service) supplémentaires pour l’ordinateur du cluster sur le domaine Active Directory. Pour ce faire, utilisez la commande isi auth . Cette opération n’est pas exécutée automatiquement, car elle nécessite un compte administrateur sur le domaine Active Directory.
Pour chaque nom DNS, deux entrées SPN doivent être créées.
Pour enregistrer des comptes SPN :
- Exécutez la commande suivante à partir de la ligne de commande pour répertorier les zones SmartConnect configurées sur le cluster :
isi networks list pools - Exécutez la commande suivante pour répertorier les noms SPN enregistrés, en remplaçant <le domaine> DNS par le nom de domaine complet du domaine DNS :
isi auth ads spn list --domain=<DNS domain> - Comparez la liste des zones SmartConnect à la liste des noms de SPN pour déterminer quels comptes SPN doivent être enregistrés.
Par exemple, si vous disposez d’une zone SmartConnect nommée dnsnl.domaine.local, vérifiez la liste SPN pour voir s’il existe des entrées pour ce nom DNS. Il doit y avoir deux entrées pour chaque compte SPN enregistré dans le domaine Active Directory
- Si les entrées de compte SPN requises n’existent pas, exécutez les commandes suivantes pour les ajouter, où <Administrateur> est un compte d’utilisateur disposant de droits d’administration sur le domaine, <cluster.domain.local> est le nom DNS utilisé pour se connecter au cluster et <le nom> de domaine est le serveur de noms de domaine complet :
isi auth ads spn create --user=<Administrator> --spn=cifs/<cluster.domain.local> --domain=<domain name> isi auth ads spn create --user=<Administrator> --spn=host/<cluster.domain.local> --domain=<domain name>IMPORTANT!
Vous devez spécifier un nom d’utilisateur administrateur AD lors de l’ajout des SPN. Si vous ne le faites pas, vous recevrez l’erreur suivante :LdapError : Échec de la modification de l’attribut [19]
Après avoir exécuté la commande, vous êtes invité à saisir le mot de passe administrateur.
- Exécutez la commande suivante pour vérifier que les comptes SPN que vous avez créés sont désormais répertoriés :
isi auth ads spn list --domain=<DNS domain>
Additional Information
Informations supplémentaires
Vous pouvez également supprimer des comptes SPN existants à l’aide de la commande isi auth .
Pour supprimer des comptes SPN, exécutez les commandes suivantes, en remplaçant <Administrator> par un compte d’utilisateur disposant des droits d’administrateur sur le domaine et en remplaçant <cluster.domain.local> par le nom DNS avec le nom que vous souhaitez supprimer :
isi auth ads spn delete --user=<Administrator> --spn=cifs/<cluster.domain.local>
isi auth ads spn delete --user=<Administrator> --spn=host/<cluster.domain.local>