PowerScale: OneFS: Cómo encontrar nombres principales de servicio (SPN) duplicados en Active Directory que impiden que los clientes SMB se autentiquen en el clúster
Summary: Cómo identificar nombres principales de servicio duplicados en Active Directory, lo que puede hacer que falle la autenticación de Kerberos.
Symptoms
Identificar SPN duplicados en dominios de Active Directory:
Los nombres de SPN duplicados pueden causar errores de inicio de sesión para los inicios de sesión de cuentas de servicio y los inicios de sesión de clientes cuando se autentican en el clúster.
Un SPN duplicado puede provocar que un cliente intente autenticarse en el sistema incorrecto o tenga la clave Kerberos incorrecta.
Referencia: http://technet.microsoft.com/en-us/library/cc772897%28v=ws.10%29.aspx
clientes SMB que se autentican mediante alias o nombres de zona de SmartConnect pueden no autenticarse en los recursos compartidos del clúster.
En los registros de la controladora de dominio o en "/var/log/lsassd.log", los siguientes mensajes podrían indicar la presencia de SPN duplicados.
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
La configuración incorrecta de SPN en el entorno de Active Directory puede provocar duplicados.
Resolution
Procedimiento
Hay dos opciones que se pueden usar para encontrar SPN duplicados. Setspn es una utilidad de línea de comandos y LDP es una interfaz gráfica que solo está disponible en Windows Server 2003 y versiones posteriores.
Uso de setspn
Setspn, que se encuentra en Windows 7, 8, Server 2008 y 2012. En el caso de Windows Server 2003, se puede obtener mediante el siguiente vínculo: http://support.microsoft.com/kb/970536
En la interfaz de línea de comandos de Windows, utilice "setspn /?" para obtener opciones adicionales para el comando.
Los duplicados se encuentran mediante "setspn -x", que busca en todo el bosque y puede tardar tiempo en procesarse en entornos grandes.
El comando "setspn q" consulta por nombre de SPN y puede ser mejor para entornos más grandes.
Ejemplo 1:
El SPN "HOST/chomper.test.isilon.com" está registrado tanto en el clúster denominado "isicluster1" como en un servidor Windows denominado "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.
Ejemplo 2:
En entornos más grandes, realice consultas mediante "setspn q <SPN>"o utilice LDP como se muestra a continuación.
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!
Si hay un SPN en otro lugar del entorno con un identificador de clase de servicio diferente, como CIFS, no se encontrará con "setspn -x". Puede buscarlo mediante una búsqueda con comodín:
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
Uso de LDP: http://support.microsoft.com/kb/321044
- Haga clic en Inicio, haga clic en Ejecutar, escriba LDP y, a continuación, haga clic en Aceptar.
- Haga clic en Conexión y, a continuación, haga clic en Conectar.
- Deje la configuración predeterminada y, a continuación, haga clic en Aceptar.
Nota: Si no recibe el resultado esperado, intente otra búsqueda mediante el puerto de catálogo global (3268) en lugar de la configuración predeterminada (389). - Haga clic en Conexión y, a continuación, haga clic en Vincular.
- Deje la configuración predeterminada y, a continuación, haga clic en Aceptar.
- Haga clic en Ver y, a continuación, haga clic en Árbol.
- En el cuadro de diálogo Tree View, escriba DC=test,DC=isilon,DC=com en el cuadro BaseDN
- Haga clic en Examinar y, a continuación, haga clic en Buscar.
- En el cuadro de diálogo Search , escriba DC=test,DC=isilon,DC=com en el cuadro BaseDN .
- En el cuadro de diálogo Search, escriba (serviceprincipalname=HOST/<sczonename>) en el cuadro Filter
- En el cuadro de diálogo Attributes , escriba servicePrincipalName.
- En Scope, haga clic en Subtree.
- Haga clic en Ejecutar y cierre el cuadro de diálogo Buscar .
- Los SPN duplicados tienen dos entradas enumeradas que apuntan a dos Dn diferentes
***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
Resolución:
La entrada duplicada para win2k1 para "HOST/chomper.test.isilon.com" se debe quitar del dominio de Active Directory.
Un usuario con derechos de administrador de dominio, administrador empresarial o administración de dominio especificado puede eliminar la entrada duplicada en el dominio de Active Directory.
El comando para eliminar una entrada duplicada es "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
El resultado anterior confirma que se canceló el registro de "HOST/chomper.test.isilon.com" de la computadora win2k1. Ahora solo está registrado en la cuenta de máquina ISICLUSTER1.
Additional Information
Artículos relacionados:
"Los servicios de autenticación pueden fallar si el nombre principal de servicio (SPN) es incorrecto o falta"89649
"OneFS: Cómo crear cuentas de SPN para permitir la autenticación de Kerberos mediante entradas de DNS de SmartConnect"16528
"Cómo ver una lista de SPN en un entorno de Microsoft Active Directory"16589
"El cliente de SQL no puede realizar una "inserción masiva" de archivos desde un clúster Isilon a una base de datos de SQL", 89574
"Cómo habilitar el inicio de sesión único (SSO) de Mac OS X en recursos compartidos CIFS habilitados para Active Directory en OneFS 5.5.x - 6.5.x, 16675
Isilon OneFS 7.1.0.0: Los clientes SMB2 no pueden conectarse al clúster mediante la autenticación Kerberos",174024
"OneFS: Nombres principales de servicio para la autenticación Kerberos", 187999