PowerScale : OneFS : Recherche de noms principaux de service (SPN) en double dans Active Directory empêchant les clients SMB de s’authentifier auprès du cluster
Summary: Comment identifier les noms principaux de service en double dans Active Directory, ce qui peut entraîner l’échec de l’authentification Kerberos.
Symptoms
Identifiez les SPN en double dans les domaines Active Directory :
Les noms de SPN en double peuvent entraîner des échecs de connexion pour les comptes de service et les connexions client lors de l’authentification au cluster.
Un SPN en double peut amener un client à tenter de s’authentifier sur le mauvais système ou à disposer d’une clé Kerberos incorrecte.
Référence : http://technet.microsoft.com/en-us/library/cc772897%28v=ws.10%29.aspx
Les clients SMB qui s’authentifient à l’aide de noms de zone ou d’alias SmartConnect peuvent ne pas être en mesure de s’authentifier auprès des partages de cluster.
Dans les journaux du contrôleur de domaine ou « /var/log/lsassd.log », les messages suivants peuvent indiquer la présence de SPN en double.
KDC_ERR_PRINCIPAL_NOT_UNIQUE - Multiple entries in database
KRB_AP_ERR_MODIFIED Message stream modified errors
Event ID 11 and/or Event ID 4 on Domain controllers can indicate duplicate SPNs.Cause
Une configuration incorrecte des SPN dans l’environnement Active Directory peut entraîner des doublons.
Resolution
Procédure
Deux options peuvent être utilisées pour rechercher les SPN en double. Setspn est un utilitaire de ligne de commande et LDP est une interface graphique disponible uniquement sur Windows Server 2003 et versions ultérieures.
Utilisation de setspn
Setspn qui est dans Windows 7, 8, Server 2008 et 2012. Pour Windows Server 2003, vous pouvez l’obtenir via le lien suivant : http://support.microsoft.com/kb/970536
À partir de l’interface de ligne de commande Windows, utilisez « setspn / ? » pour obtenir des options supplémentaires pour la commande.
Les doublons sont détectés à l’aide de « setspn -x », qui effectue une recherche dans l’ensemble de la forêt et peut prendre du temps à être traité dans des environnements volumineux.
La commande « setspn q » effectue des requêtes par nom SPN et peut être préférable pour les environnements de plus grande taille.
Exemple 1 :
Le SPN « HOST/chomper.test.isilon.com » est enregistré à la fois sur le cluster nommé « isicluster1 » et sur un serveur Windows nommé « win2k1 ».
C:>setspn -x
Checking domain DC=test,DC=isilon,DC=com
Processing Entry 0
HOST/chomper.test.isilon.com is registered on these accounts
CN=isicluster1,CN=Computers,DC=test,DC=isilon,DC=com
CN=win2k1,CN=Computers,DC=test,DC=isilon,DC=com
Found 1 group of duplicate SPNs.
Exemple 2 :
Dans les environnements plus volumineux, interrogez à l’aide de « setspn q <SPN> »ou utilisez LDP comme indiqué ci-dessous.
C:>setspn -q HOST/chomper.test.isilon.com
Checking domain DC=test,DC=Isilon,DC=com
CN=isicluster1,CN=Computers,DC=test,DC=isilon,DC=com
HOST/chomper.test.isilon.com
HOST/isicluster1
HOST/isicluster1.test.isilon.com
CN=win2k1,CN=Computers,DC=test,DC=isilon,DC=com
HOST/chomper.test.isilon.com
HOST/win2k1
HOST/win2k1.test.isilon.com
Existing SPN found!
S’il existe un SPN ailleurs dans l’environnement avec un ID de classe de service différent, tel que CIFS, il est introuvable avec « setspn -x ». Vous pouvez le rechercher en exécutant une recherche générique :
C:\>setspn -q */isilon
Checking domain DC=test,DC=Isilon,DC=com
CN=isicluster2,CN=Computers,DC=test,DC=isilon,DC=com
cifs/chomper.test.isilon.com
Utilisation de LDP : http://support.microsoft.com/kb/321044
- Cliquez sur Démarrer, puis sur Exécuter, saisissez LDP, puis cliquez sur OK.
- Cliquez sur Connexion, puis sur Se connecter.
- Conservez les paramètres par défaut, puis cliquez sur OK.
Remarque : Si vous n’obtenez pas le résultat attendu, essayez une autre recherche en utilisant le port de catalogue global (3268) au lieu du paramètre par défaut (389). - Cliquez sur Connexion, puis cliquez sur Lier.
- Conservez les paramètres par défaut, puis cliquez sur OK.
- Cliquez sur Afficher, puis sur Arborescence.
- Dans la boîte de dialogue Tree View, saisissez DC=test,DC=isilon,DC=com dans la zone BaseDN
- Cliquez sur Parcourir, puis sur Rechercher.
- Dans la boîte de dialogue Rechercher , saisissez DC=test,DC=isilon,DC=com dans la zone BaseDN .
- Dans la boîte de dialogue Rechercher, saisissez (serviceprincipalname=HOST/<sczonename>) dans la zone Filtre
- Dans la boîte de dialogue Attributs , saisissez servicePrincipalName.
- Sous Scope, cliquez sur Subtree.
- Cliquez sur Exécuter, puis fermez la boîte de dialogue Rechercher .
- Les SPN en double ont deux entrées répertoriées pointant vers deux DN différents
***Searching
ldap_search_s(Id, DC=test,DC=isilon,DC=com ,2,
(serviceprincipalname=HOST/chomper.test.isilon.com) ,attrList, 0 &msg)
Getting 2 entries:
Dn: CN=ISICLUSTER1,CN=Computers,DC=test,DC=isilon,DC=com
servicePrincipalName (3): HOST/isicluster1; HOST/isicluster1.test.isilon.com;
HOST/chomper.test.isilon.com
Dn: CN=WIN2K1,CN=Computers,DC=test,DC=isilon,DC=com
servicePrincipalName (3): HOST/win2k1; HOST/win2k1.test.isilon.com;
HOST/chomper.test.isilon.com
Résolution:
L’entrée dupliquée pour win2k1 pour « HOST/chomper.test.isilon.com » doit être supprimée du domaine Active Directory.
L’entrée dupliquée peut être supprimée par un utilisateur disposant de droits d’administrateur de domaine, d’administrateur d’entreprise ou d’administrateur de domaine spécifiés sur le domaine Active Directory.
La commande permettant de supprimer une entrée en double est « setspn -D <spn><accountname>».
C:>setspn D HOST/chomper.test.isilon.com win2k1
Unregistering ServicePrincipalnames for CN=win2k1,CN=Computers,DC=test,DC=isilon,DC=com
HOST/chomper.test.isilon.com
Updated object
La sortie ci-dessus confirme que l’enregistrement de « HOST/chomper.test.isilon.com » a été annulé sur l’ordinateur win2k1. Il n’est désormais enregistré que sur le compte de l’ordinateur ISICLUSTER1.
Additional Information
Articles connexes :
« Les services d’authentification peuvent échouer si le nom principal de service (SPN) est incorrect ou manquant. »89649
"OneFS : Comment créer des comptes SPN pour permettre l’authentification Kerberos à l’aide des entrées DNS SmartConnect, »16528
"Affichage d’une liste de SPN dans un environnement Microsoft Active Directory, »16589
"Le client SQL ne peut pas insérer en masse des fichiers d’un cluster Isilon dans une base de données SQL », 89574
"Activation de l’authentification unique (SSO) Mac OS X sur les partages CIFS activés pour Active Directory dans OneFS 5.5.x - 6.5.x, «16675
"Isilon OneFS 7.1.0.0 : Les clients SMB2 ne peuvent pas se connecter au cluster à l’aide de l’authentification Kerberos. »174024
« OneFS : Service Principal Names for Kerberos Authentication », 187999