NetWorker: Los usuarios de AD no pueden iniciar sesión a través de LDAPS "No se pudo analizar la respuesta del servidor desde la cadena json"
Resumen: La autenticación de Microsoft Active Directory (AD) se agregó a NetWorker mediante el asistente de configuración de autoridad externa de NetWorker Management Console (NMC) cuando se usaba la opción "LDAP mediante SSL". La configuración se agregó correctamente, pero la autenticación del usuario de AD falla con HTTP-ERROR 500. ...
Síntomas
- El usuario está accediendo a NetWorker Management Console (NMC) o
nsrloginlínea de comandos y recibe un error:
An error occurred while validating user credentials. Verify that NetWorker Authentication Service is running. [POST failed with HTTP-ERROR: 500 Server Message: Could not parse server-response from json string]
- La autoridad de autenticación externa se configuró mediante la opción LDAP mediante SSL; sin embargo, el servidor de autenticación es Microsoft Active Directory:
- Arreglo >Usuarios y funciones>Autoridad externa > Haga clic con el botón secundario en External Authority >Properties:
Causa
HTTP Error 500 "Internal Server Error."
Cuando se selecciona la opción LDAP mediante SSL, se establece un atributo interno Es Active Directory en falso. Esto impide inicios de sesión correctos para los usuarios que están configurados en Microsoft Active Directory a través de NetWorker.
Esto se puede verificar desde authc_config Línea de comandos mediante el símbolo del sistema raíz o de administrador:
authc_config -u Administrator -e find-all-configs authc_config -u Administrator -e find-config -D config-id=config_id#
-p password.
[root@networker-mc ~]# authc_config -u administrator -p 'Pa$$w0rd01' -e find-all-configs
The query returns 1 records.
Config Id Config Name
2 amer
[root@networker-mc ~]# authc_config -u administrator -p 'Pa$$w0rd01' -e find-config -D config-id=2 | grep -i "is active directory"
Is Active Directory : false
La opción LDAP mediante SSL no está diseñada para AD mediante SSL.
Resolución
Solución alternativa:
La variable authc_config se puede utilizar para actualizar la configuración ¿ El valor de Active Directory esverdadero?
Windows:
- En NetWorker (
authc), abra un símbolo del sistema de administración. - Obtenga el ID de configuración de la configuración de autoridad externa:
authc_config -u Administrator -p NetWorker_Administrator_Password -e find-all-configs
authc_config -u Administrator -p NetWorker_Administrator_Password -e find-config -D config-id=config_id#
- Actualice el valor Es Active Directory con el siguiente comando:
authc_config -u administrator -p NetWorker_Administrator_Password -e update-config -D config-id=config_id# -D "config-active-directory=y" -D "config-server-address=ldaps://domain_server_hostname:636/dc=domain,dc=com" -D config-user-dn=”cn=service_account,ou=some_group,dc=domain,dc=com" -D config-user-dn-password="Service_Account_Password"
authc_config -u Administrator -e find-config -D config-id=config_id#.
Ejemplo:
C:\Users\Administrator.AMER>authc_config -u administrator -p 'Pa$$w0rd01' -e update-config -D config-id=1 -D "config-active-directory=y" -D "config-server-address=ldaps://dc.amer.lan:636/dc=amer,dc=lan" -D "config-user-dn=cn=administrator,cn=users,dc=amer,dc=lan" -D config-user-dn-password="Pa$$w0rd01" Configuration ad is updated successfully. C:\Users\Administrator.AMER>
- Los inicios de sesión de AD a través de NetWorker ahora deberían completarse correctamente.
Linux:
- En NetWorker (
authc), abra un símbolo del sistema de raíz. - Obtenga el ID de configuración de la configuración de autoridad externa:
authc_config -u Administrator -p 'NetWorker_Administrator_Password' -e find-all-configs
authc_config -u Administrator -p 'NetWorker_Administrator_Password' -e find-config -D config-id=config_id#
- Cree un archivo de texto oculto que contenga la contraseña de la cuenta de servicio de AD:
echo 'Service_Account_Password' > /root/.sapasswd.txt
- Haga que el archivo solo sea accesible para el usuario raíz:
chmod 700 /root/.sapasswd.txt
- Cree un script para ejecutar la llamada a la contraseña desde el archivo oculto y ejecute el comando
authc_configComando para actualizar la configuración:
vi authc_update.sh
PASSWD=`cat /root/.sapasswd.txt` authc_config -u administrator -p 'NetWorker_Administrator_Password' -e update-config -D config-id=config_id# -D "config-active-directory=y" -D "config-server-address=ldaps://domain_server_hostname:636/dc=domain,dc=com" -D config-user-dn=”cn=service_account,ou=some_group,dc=domain,dc=com" -D config-user-dn-password="$PASSWD"
authc_config correctamente si la contraseña de la cuenta de servicio se especifica en texto no cifrado mediante el comando. La falla que se devuelve es LDAP error code 49 - Data 52e, que aparece para invalid username or password. El método descrito anteriormente se puede utilizar para ocultar la contraseña de la entrada de texto no cifrado.
- Configure permisos en el script para que sea ejecutable:
chmod 755 authc_update.sh
- Ejecute el script:
/authc_update.sh
[root@nsr ~]# cat authc_update.sh PASSWD=`cat /root/.sapasswd.txt` authc_config -u administrator -p 'Pa$$w0rd01' -e update-config -D config-id=2 -D "config-active-directory=y" -D "config-server-address=ldaps://dc.amer.lan:636/dc=amer,dc=lan" -D "config-user-dn=cn=administrator,cn=users,dc=amer,dc=lan" -D config-user-dn-password="$PASSWD" [root@nsr ~]# chmod 755 authc_update.sh [root@nsr ~]# ./authc_update.sh Configuration AD is updated successfully.
- Los inicios de sesión de AD a través de NetWorker ahora deberían completarse correctamente.
Información adicional
Si la configuración se actualiza desde NMC, la marca Is Active Directory se vuelve a establecer en falso. Si se debe actualizar la configuración, utilice uno de los siguientes métodos en su lugar:
- Método de línea de comandos o script: NetWorker: Cómo configurar LDAP/AD mediante scripts authc_config
- Interfaz de usuario web de NetWorker: NetWorker: Cómo configurar “AD mediante SSL” (LDAPS) desde la interfaz de usuario web de NetWorker (NWUI)