Sigue las instrucciones de este artículo para conectar tu cliente LDAP al servicio LDAP seguro.
Importante:
- Asegúrate de leer la documentación de tu proveedor.
Los detalles de este artículo para conectar tu cliente LDAP al servicio LDAP seguro son solo de referencia y están sujetos a cambios. Además de estas instrucciones de ayuda, asegúrate de leer la documentación de tu proveedor para conocer los pasos más actualizados para conectar tu cliente al servicio LDAP seguro. - Antes de comenzar
Antes de seguir estas instrucciones, asegúrate de haber agregado el cliente al servicio LDAP seguro, configurado los permisos de acceso, descargado un certificado y una clave de cliente y, de manera opcional, creado credenciales de acceso. - Prueba de conectividad:
De manera opcional, antes de comenzar con estos pasos, puedes realizar una prueba de conexión rápida con herramientas simples como ldapsearch, ADSI y ldp.exe. También puedes usar estas herramientas para solucionar problemas si encuentras errores cuando intentas conectar tu cliente LDAP al servicio. Para obtener instrucciones, consulta Prueba de conectividad LDAP segura. - Cómo completar los pasos de configuración
Después de conectar el cliente LDAP siguiendo las instrucciones de esta página, deberás completar la configuración del cliente LDAP cambiando el estado del servicio a Activado en la Consola del administrador de Google. Para obtener instrucciones, consulta el paso 5. Cambia los clientes de LDAP a Activado.
Qué se incluye en este artículo
Este artículo incluye las siguientes secciones:
- Instrucciones de configuración básicas: Incluyen instrucciones genéricas para conectar clientes LDAP que no se especifican en este artículo.
- Instrucciones de configuración para clientes LDAP específicos: Incluye instrucciones para conectar clientes LDAP específicos (como Atlassian Jira o OpenVPN) al servicio LDAP seguro. Los pasos varían según el tipo de cliente.
- Instrucciones de configuración para aplicaciones de Java: Incluye instrucciones genéricas para aplicaciones basadas en Java que ofrecen funcionalidad de LDAP.
- Opcional: Usa stunnel como proxy: En esta sección, se incluyen instrucciones que especifican consideraciones adicionales cuando se conectan clientes LDAP que no admiten certificados digitales.
En estas instrucciones, se supone que los archivos de certificado y clave del cliente que descargas se llaman ldap-client.key y ldap-client.crt.
Instrucciones de configuración básicas
En esta sección, se incluyen instrucciones genéricas para conectar tu cliente LDAP al servicio LDAP seguro. Si tu cliente LDAP no aparece en las instrucciones que se indican a continuación, asegúrate de consultar la documentación de esa aplicación.
Nota: Algunos clientes de LDAP, como Atlassian Jira y SSSD, realizan una búsqueda de usuarios para obtener más información sobre un usuario durante la autenticación de usuarios. Para asegurarte de que la autenticación de usuarios funcione correctamente para esos clientes de LDAP, deberás activar la opción Leer información del usuario para todas las unidades organizativas en las que esté activada la opción Verificar credenciales del usuario. (Para obtener instrucciones, consulta Cómo configurar permisos de acceso).
Para conectar el cliente LDAP al servicio LDAP seguro, haz lo siguiente:
- Configura tu cliente LDAP con Cloud Directory como tu servidor LDAP.
Sube el certificado a tu cliente LDAP.
El servicio de LDAP seguro usa certificados de cliente TLS como mecanismo de autenticación principal. Para comenzar el proceso de carga del certificado en el cliente LDAP, abre la configuración de autenticación o directorio del cliente LDAP y, luego, ingresa los detalles de la siguiente tabla.
Nota: Para obtener todos los detalles sobre cómo y dónde subir los certificados TLS, consulta la documentación de tu proveedor.
Usa la siguiente tabla para obtener información básica sobre la conexión:
|
Nombre de host |
ldap.google.com |
|---|---|
|
Puertos |
389 para LDAP con StartTLS habilitado |
|
DN base |
Tu dominio en formato DN. Por ejemplo: dc=example,dc=com para example.com |
|
Nombre de usuario y contraseña |
Además de autenticarte con un certificado, algunos clientes de LDAP requieren que ingreses un nombre de usuario y una contraseña. Si los campos de nombre de usuario y contraseña no son obligatorios, puedes omitir este paso. Genera un nombre de usuario y una contraseña en la Consola del administrador de Google. Para obtener instrucciones, consulta Cómo generar credenciales de acceso. |
|
Archivos de certificado y clave del cliente |
Usa el certificado y el archivo de claves que descargaste de la Consola del administrador de Google. Si el cliente LDAP no proporciona una forma de autenticarse con un certificado de cliente, consulta Cómo usar stunnel como proxy. IMPORTANTE: Algunos clientes de LDAP, como Apache Directory Studio, no admiten la carga de certificados digitales. Para abordar esta situación, consulta Cómo usar stunnel como proxy. |
Instrucciones de configuración para clientes LDAP específicos
ADSI Edit (Windows)
Sigue estos pasos:
- Sigue los pasos del 1 al 11 en ldp.exe (Windows) para instalar los certificados de cliente.
- Ve a Action > Connect to….
- Ingresa la siguiente configuración de conexión:
Nombre: Escribe un nombre para tu conexión, como LDAP de Google.
Punto de conexión: "Selecciona o escribe un nombre distintivo o un contexto de nombres"
Ingresa el nombre de tu dominio en formato DN (por ejemplo, dc=example,dc=com para example.com).
Computadora: "Selecciona o escribe un dominio o servidor"
ldap.google.com
Usar encriptación basada en SSL: Seleccionado
- Haz clic en Opciones avanzadas… y, luego, ingresa los siguientes detalles:
Especificar credenciales: Marcada
Nombre de usuario: El nombre de usuario de la credencial de acceso de la Consola del administrador
Contraseña: La contraseña de la credencial de acceso de la Consola del administrador
Número de puerto: 636
Protocolo: LDAP
Autenticación de vinculación simple: Marcada
- Haz clic en Aceptar y, luego, vuelve a hacer clic en Aceptar.
- Si la conectividad es exitosa, el contenido del directorio activo en el DN base se muestra en el panel derecho.
Apache Directory Studio
Para usar Apache Directory Studio, conéctate a través de stunnel y usa una credencial de acceso (nombre de usuario y contraseña) generada en la Consola del administrador de Google. Si se supone que las credenciales están en su lugar y que stunnel está escuchando en el puerto 1389 del host local, sigue estos pasos:
- Haz clic en File > New….
- Selecciona LDAP Browser > LDAP Connection.
- Haz clic en Siguiente.
- Ingresa los parámetros de conexión:
Nombre de la conexión: Elige un nombre, como LDAP de Google.
Nombre de host: localhost
Puerto: 1389 (o el puerto de escucha/aceptación de stunnel)
Método de encriptación: Sin encriptación (nota: Si stunnel se ejecuta de forma remota, se recomienda la encriptación entre stunnel y el cliente).
- Haz clic en Siguiente.
- Ingresa los parámetros de autenticación:
Método de autenticación: Autenticación simple
DN de vinculación o usuario: Nombre de usuario de la credencial de acceso de la Consola del administrador
Contraseña de vinculación: Contraseña de la credencial de acceso de la Consola del administrador
- Haz clic en Siguiente.
- Ingresa el DN base.
Este es tu nombre de dominio en formato DN (dc=example,dc=com para example.com). - Haz clic en Finalizar.
Jira de Atlassian
Atlassian Jira realiza una búsqueda de usuarios para obtener más información sobre un usuario durante la autenticación. Para asegurarte de que la autenticación del usuario funcione correctamente para este cliente de LDAP, deberás activar Leer información del usuario y Leer información del grupo para todas las unidades organizativas en las que esté activada la opción Verificar credenciales del usuario. (Para obtener instrucciones, consulta Configura los permisos de acceso).
Importante: Si usas las siguientes instrucciones, es posible que la contraseña de keystore quede expuesta a los usuarios y a los archivos de registro. Toma precauciones para evitar el acceso no autorizado al shell local, al archivo de registro y a la Consola del administrador de Google. Como alternativa a las siguientes instrucciones, usa el método stunnel4 (consulta Opcional: Usa stunnel como proxy).
Nota: En las siguientes instrucciones, se supone que Jira está instalado en /opt/atlassian/jira.
Para conectar un cliente de Atlassian Jira al servicio de LDAP seguro, haz lo siguiente:
- Copia el certificado y la clave en tus servidores de Jira. (Este es el certificado que se genera en la Consola del administrador de Google cuando se agrega el cliente de LDAP al servicio de LDAP seguro).
Por ejemplo:
$ scp ldap-client.key user@jira-server:
- Convierte el certificado y las claves al formato de almacén de claves Java. Se te solicitarán contraseñas durante todo el proceso. Para simplificar, selecciona una contraseña segura y usa la misma para todas las indicaciones.
$ openssl pkcs12 -export -out jira-ldap.pkcs12 -in ldap-client.crt -inkey ldap-client.key
$ sudo /opt/atlassian/jira/jre/bin/keytool -v -importkeystore -srckeystore jira-ldap.pkcs12 -srcstoretype PKCS12 -destkeystore /opt/atlassian/jira/jira-ldap.jks -deststoretype JKS
- Configura Jira para que use el almacén de claves recién creado. Sigue las instrucciones aquí para agregar opciones:
"-Djavax.net.ssl.keyStore=/opt/atlassian/jira/jira-ldap.jks -Djavax.net.ssl.keyStorePassword=password"
En Linux:- Edita /opt/atlassian/jira/bin/setenv.sh.
- Busca el parámetro de configuración JVM_SUPPORT_RECOMMENDED_ARGS.
- Agrega "-Djavax.net.ssl.keyStore=/opt/atlassian/jira/jira-ldap.jks -Djavax.net.ssl.keyStorePassword=password" y reemplaza "password" por la contraseña que seleccionaste anteriormente.
- Reinicia Jira.
$ /opt/atlassian/jira/bin/stop-jira.sh
$ /opt/atlassian/jira/bin/start-jira.sh
- Accede a la interfaz web de Jira como administrador.
- Ve a Configuración > Administración de usuarios. (Para acceder a la configuración, ve al ícono de ajustes en la esquina superior derecha).
- Haz clic en Directorios de usuarios.
- Haz clic en Add Directory.
- Elige LDAP como el tipo.
- Haz clic en Siguiente.
- Ingresa lo siguiente:
Nombre
LDAP seguro de Google
Tipo de directorio
OpenLDAP
Nombre de host
ldap.google.com
Puerto
636
Usar SSL
Marcado
Nombre de usuario
Genera un nombre de usuario y una contraseña en la Consola del administrador de Google. Para obtener instrucciones, consulta Cómo generar credenciales de acceso.
Contraseña
Genera un nombre de usuario y una contraseña en la Consola del administrador de Google. Para obtener instrucciones, consulta Cómo generar credenciales de acceso.
DN base
Tu nombre de dominio en formato DN. (por ejemplo, dc=example,dc=com para example.com)
DN de usuario adicional
Opcional. "ou=Users"
DN de grupo adicional
Opcional. "ou=Groups"
Permisos de LDAP
Solo lectura
Configuración avanzada
No modificado
Configuración del esquema de usuario >
Atributo de nombre de usuariogoogleUid
Configuración del esquema de usuario >
Atributo del RDN del nombre de usuariouid
Configuración del esquema de grupo >
Clase de objeto de grupogroupOfNames
Configuración del esquema de grupo >
Filtro de objetos del grupo(objectClass=groupOfNames)
Configuración del esquema de membresía >
Atributo de miembros del grupomiembro
Configuración del esquema de membresía >
Usar el atributo de membresía del usuarioMarcado - Otorga un rol a un grupo.
Antes de que Atlassian Jira permita que un usuario acceda, este debe ser miembro de un grupo al que se le haya otorgado acceso a Jira.
Para otorgar un rol a un grupo, haz lo siguiente:- Ve a Configuración > Aplicaciones > Acceso a la aplicación.
- En el cuadro de texto Seleccionar grupo, ingresa el nombre del Grupo de Google al que deseas otorgar acceso a Jira.
CloudBees Core / Jenkins
Si quieres obtener instrucciones para conectar CloudBees Core al servicio de LDAP seguro, consulta Configura CloudBees Core con el servicio de LDAP seguro de Cloud Identity de Google.
FreeRadius
Sigue estos pasos:
- Instala y configura FreeRADIUS en /etc/freeradius/3.0/.
Una vez que se instale FreeRADIUS, puedes agregar la configuración de LDAP instalando el complemento freeradius-ldap.
$ sudo apt-get install freeradius freeradius-ldap
- Copia los archivos de clave y certificado del cliente LDAP en /etc/freeradius/3.0/certs/ldap-client.key y /etc/freeradius/3.0/certs/ldap-client.crt, respectivamente.
$ chown freeradius:freeradius
/etc/freeradius/3.0/certs/ldap-client.*
$ chmod 640 /etc/freeradius/3.0/certs/ldap-client.*
- Habilita el módulo de LDAP.
$ cd /etc/freeradius/3.0/mods-enabled/
$ ln -s ../mods-available/ldap ldap
- Edita /etc/freeradius/3.0/mods-available/ldap.
- ldap->server = 'ldaps://ldap.google.com:636'
- identity = nombre de usuario de las credenciales de la aplicación
- contraseña = contraseña de las credenciales de la aplicación
- base_dn = 'dc=domain,dc=com'
- tls->start_tls = no
- tls->certificate_file = /etc/freeradius/3.0/certs/ldap-client.cer
- tls->private_key_file = /etc/freeradius/3.0/certs/ldap-client.key
- tls->require_cert = 'allow'
- Comenta todos los campos en la ruta de navegación que representa la sección "ldap -> post-auth -> update".
- Edita /etc/freeradius/3.0/sites-available/default.
Esto modifica la conexión del cliente de FreeRadius. Si no usas el cliente predeterminado, asegúrate de actualizar el cliente pertinente (túnel interno o cualquier cliente personalizado) que hayas configurado.
- Modifica la sección authorize para agregar el siguiente bloque en la parte inferior después de la instrucción del protocolo de autenticación de contraseña (PAP):
if (User-Password) {
update control {
Auth-Type := ldap
}
}
- En la sección authorize, habilita LDAP quitando el signo "-" que aparece antes.
#
# El módulo ldap lee contraseñas de la base de datos de LDAP.
ldap
- Modifica la sección authenticate editando el bloque Auth-Type LDAP de la siguiente manera:
# Auth-Type LDAP {
ldap
# }
- Modifica la sección authenticate editando el bloque Auth-Type PAP de la siguiente manera:
Auth-Type PAP {
# pap
ldap
}
- Modifica la sección authorize para agregar el siguiente bloque en la parte inferior después de la instrucción del protocolo de autenticación de contraseña (PAP):
GitLab
Para obtener instrucciones sobre cómo conectar GitLab al servicio LDAP seguro, consulta Configura el LDAP seguro de Google para GitLab.
Itopia/Ubuntu
Si deseas obtener instrucciones para conectar Itopia/Ubuntu al servicio LDAP seguro, consulta Cómo configurar Google Cloud Identity LDAP en Ubuntu 16.04 para el acceso de usuarios.
Ivanti / LanDesk
Sigue estos pasos:
- En tu servidor web de Ivanti, abre OpenLDAPAuthenticationConfiguration.xml o OpenLDAPSSLAuthenticationConfiguration.xml en un editor de texto en las dos siguientes carpetas:
C:\ProgramData\LANDesk\ServiceDesk\servicedesk.Framework y C:\ProgramData\LANDesk\ServiceDesk\servicedesk.WebAccess (donde servicedesk es el nombre de la instancia) - Actualiza el valor de <Server> a ldap.google.com.
- Actualiza el valor de <Port> al puerto 3268 para texto sin formato con StartTLS habilitado y a 3269 para el puerto SSL/TLS (los valores predeterminados son 389 para el puerto de texto sin formato o 636 para el puerto SSL/TLS).
- Establece el valor <TestDN> en tu nombre de dominio en formato DN. (por ejemplo, dc=example,dc=com para example.com).
- Agrega la siguiente línea a ..ProgramData\LANDesk\ServiceDesk\ServiceDesk.Framework\tps.config y a ..ProgramData\LANDesk\ServiceDesk\WebAccess\tps.config:
<add key="AuthenticationProvider" value="Touchpaper.Integrations.OpenLDAPLogon.OpenLDAPAuthenticationProvider" />
o la siguiente línea:
<add key="AuthenticationProvider" value="Touchpaper.Integrations.OpenLDAPSSLLogon.OpenLDAPSSLAuthenticationProvider" />
- En el Centro de configuración de Ivanti, abre la instancia requerida.
- Junto a la aplicación Service Desk Framework, haz clic en Editar.
Aparecerá el diálogo Edit Application para el Service Desk Framework. - En el grupo Parámetros de configuración, selecciona Solo explícito en la lista Política de acceso y, luego, haz clic en Aceptar.
- Junto a la aplicación de acceso web, haz clic en Editar.
Aparecerá el diálogo Edit Application para el acceso web. - En el grupo Parámetros de configuración, selecciona Solo explícito en la lista Política de acceso y, luego, haz clic en Aceptar.
Cuando accedas, usa la contraseña de red del usuario de dominio asociado.
Registro de excepciones para la autenticación del servidor LDAP
Si tienes problemas para configurar la autenticación del servidor LDAP, puedes habilitar el registro de excepciones para ayudarte a identificar el problema. De forma predeterminada, esta opción está inhabilitada, y te recomendamos que vuelvas a inhabilitar el registro de excepciones cuando termines tus investigaciones.
Para habilitar el registro de excepciones para la autenticación del servidor LDAP, haz lo siguiente:
- Abre el archivo XML de configuración de autenticación adecuado en un editor de texto:
DirectoryServiceAuthenticationConfiguration.xml, OpenLDAPAuthenticationConfiguration.xml o OpenLDAPSSLAuthenticationConfiguration.xml - Cambia la línea:
<ShowExceptions>false</ShowExceptions>
por
<ShowExceptions>true</ShowExceptions>
- Guarda los cambios.
Ldp.exe (Windows)
Sigue estos pasos:
- Convierte los archivos de certificado y clave en un archivo con formato PKCS12. En el símbolo del sistema, ingresa lo siguiente:
Si usas macOS o Linux, usa los siguientes comandos:
openssl pkcs12 -inkey ldap-client.key -in ldap-client.crt -export -out ldap-client.p12
Ingresa una contraseña para encriptar el archivo de salida.
Si usas Windows, usa los siguientes comandos:
$ certutil -mergepfx ldap-client.crt ldap-client.p12
Importante: Los dos archivos (<CERT_FILE>.crt y <CERT_FILE>.key) deben estar ubicados en el mismo directorio. Además, asegúrate de que key y crt tengan el mismo nombre (con una extensión diferente). En este ejemplo, usamos los nombres ldap-client.crt y ldap-client.key. - Ve al Panel de control.
- En el cuadro de búsqueda, busca "certificado" y haz clic en Administrar certificados de usuario.
- Ve a Action > All Tasks > Import…
- Selecciona Usuario actual y haz clic en Siguiente.
- Haz clic en Explorar….
- En el menú desplegable tipo de archivo, ubicado en la esquina inferior derecha del cuadro de diálogo, selecciona Intercambio de información personal (*.pfx; *.p12).
- Selecciona el archivo ldap-client.p12 del paso 2, haz clic en Abrir y, luego, en Siguiente.
- Ingresa la contraseña del paso 2 y haz clic en Siguiente.
- Selecciona el almacén de certificados Personal, haz clic en Siguiente y, luego, en Finalizar.
- Ejecuta Ldp.exe.
- Ve a Connection > Connect….
- Ingresa los siguientes detalles de conexión:
Servidor: ldap.google.com
Puerto: 636
Sin conexión: Sin marcar
SSL: Marcado
- Haz clic en Aceptar.
- Ve a Ver > Árbol.
- Ingresa el DN base. Este es tu nombre de dominio en formato DN. (por ejemplo, dc=example,dc=com para example.com).
- Haz clic en Aceptar.
- Si la conectividad se realiza correctamente, LDP.exe muestra el contenido de Active Directory, como todos los atributos presentes en el DN base, en el panel derecho.
Netgate / pfSense
Si deseas obtener instrucciones para conectar Netgate/pfSense al servicio de LDAP seguro, consulta Configura Google Cloud Identity como fuente de autenticación.
OpenLDAP / ldapsearch (Linux)
Para acceder a tu directorio LDAP desde la línea de comandos, puedes usar el comando ldapsearch de OpenLDAP.
Suponiendo que los archivos de certificado y clave del cliente son ldap-client.crt y ldap-client.key, su dominio es example.com y el nombre de usuario es jsmith, haz lo siguiente:
$ LDAPTLS_CERT=ldap-client.crt LDAPTLS_KEY=ldap-client.key ldapsearch -H ldaps://ldap.google.com -b dc=example,dc=com '(uid=jsmith)'
Esto establece las variables de entorno pertinentes para que apunten a las claves del cliente. Puedes reemplazar las otras opciones de ldapsearch por los filtros, los atributos solicitados, etcétera, que desees. Para obtener más detalles, consulta las páginas man de ldapsearch ("man ldapsearch").
ldapsearch (macOS)
Sigue estos pasos:
- Convierte los archivos de certificado y clave en un archivo con formato PKCS12. En el símbolo del sistema, ingresa lo siguiente:
openssl pkcs12 -inkey ldap-client.key -in ldap-client.crt -export -out ldap-client.p12
Ingresa tu contraseña para encriptar el archivo de salida.
- Haz clic en
en la esquina superior derecha de la barra de menú y escribe Acceso a Llavero.
- Abre la aplicación Acceso a Llaveros y, en la lista de la izquierda, haz clic en Sistema.
- Haz clic en la opción Archivo en la barra de menú de la esquina superior izquierda y selecciona Importar elementos.
- Navega a la ubicación con el archivo ldap-client.p12 generado, selecciona ldap-client.p12 y haz clic en Abrir.
Si se te solicita, ingresa tu contraseña.
Ahora debería aparecer un certificado con el nombre Cliente LDAP en la lista de certificados del Llavero del sistema. - Haz clic en la flecha junto al certificado de cliente LDAP. Debajo, aparece una clave privada.
- Haz doble clic en la clave privada.
- En el cuadro de diálogo, selecciona la pestaña Control de acceso y haz clic en + en la esquina inferior izquierda.
-
En la ventana que se abre, escribe Comando + Mayúsculas + G para abrir una ventana nueva y, luego, reemplaza el texto existente por /usr/bin/ldapsearch.
-
Haz clic en Ir.
Se abrirá una ventana con ldapsearch destacado. -
Haz clic en Agregar.
-
Haz clic en Guardar cambios y, si se te solicita, ingresa tu contraseña.
Ahora puedes acceder a tu directorio LDAP desde la línea de comandos con el comando ldapsearch de OpenLDAP.
-
Si suponemos que el archivo ldap-client.p12 que importaste en el llavero anteriormente tiene el nombre LDAP Client, tu dominio es example.com y el nombre de usuario es jsmith, ingresa lo siguiente:
$ LDAPTLS_IDENTITY="LDAP Client" ldapsearch -H ldaps://ldap.google.com:636 -b dc=example,dc=com '(uid=jsmith)'
Esto establece las variables de entorno pertinentes para que apunten al certificado de cliente importado. Puedes reemplazar las otras opciones de ldapsearch por los filtros, los atributos solicitados, etcétera, que desees. Para obtener más detalles, consulta las páginas man de ldapsearch (man ldapsearch).
OpenVPN (versión de la comunidad)
Sigue estos pasos:
- Si es necesario, instala y configura OpenVPN o, si ya lo hiciste, abre la página de configuración en OpenVPN.
La configuración general de la VPN no se incluye en este artículo de ayuda. Una vez que se configura una VPN, puedes agregar la autenticación y autorización del usuario a través de LDAP. En particular, deberás instalar el complemento openvpn-auth-ldap.
$ sudo apt-get install openvpn openvpn-auth-ldap
- Copia los archivos de certificado y clave del cliente LDAP en /etc/openvpn/ldap-client.key y /etc/openvpn/ldap-client.crt.
- Crea un archivo, /etc/openvpn/auth-ldap.conf, que contenga lo siguiente (suponiendo que example.com es el nombre de dominio):
<LDAP>
URL ldaps://ldap.google.com:636 #
Timeout 15
TLSEnable false
TLSCACertDir /etc/ssl/certs
TLSCertFile /etc/openvpn/ldap-client.crt
TLSKeyFile /etc/openvpn/ldap-client.key
</LDAP>
<Authorization>
BaseDN "dc=example,dc=com"
SearchFilter "(uid=%u)" # (or choose your own LDAP filter for users)
RequireGroup false
</Authorization>
- Edita el archivo de configuración de OpenVPN, que suele llamarse /etc/openvpn/server.conf o similar. En la parte inferior del archivo, agrega lo siguiente:
plugin /usr/lib/openvpn/openvpn-auth-ldap.so /etc/openvpn/auth-ldap.conf
verify-client-cert optional
- Reinicia el servidor de OpenVPN.
$ sudo systemctl restart openvpn@server
- Configura los clientes de VPN para que usen los nombres de usuario y las contraseñas de los usuarios. Por ejemplo, en una configuración de cliente de OpenVPN, agrega auth-user-pass al final del archivo de configuración de cliente de OpenVPN y, luego, inicia el cliente de OpenVPN:
$ openvpn --config /path/to/client.conf
- Sigue las instrucciones para usar stunnel como proxy.
OpenVPN Access Server (versión comercial)
Para obtener instrucciones sobre cómo conectar OpenVPN Access Server al servicio LDAP seguro, consulta Configura Google Secure LDAP con OpenVPN Access Server.
PaperCut MF y NG
Para obtener instrucciones sobre cómo conectar PaperCut al servicio de LDAP seguro, consulta Cómo sincronizar y autenticar usuarios de Google Workspace y Google Cloud Identity en PaperCut.
Puppet Enterprise
Para obtener instrucciones sobre cómo conectar Puppet Enterprise al servicio LDAP seguro, consulta Google Cloud Directory para PE.
Softerra LDAP Browser
Importante: Antes de comenzar, asegúrate de haber instalado Softerra LDAP Browser con el número de versión 4.5 (4.5.19808.0) o posterior. Consulta LDAP Browser 4.5.
Sigue estos pasos:
- Convierte los archivos de certificado y clave en un archivo con formato PKCS12. En el símbolo del sistema, ingresa lo siguiente:
Si usas macOS o Linux, usa los siguientes comandos:
openssl pkcs12 -inkey ldap-client.key -in ldap-client.crt -export -out ldap-client.p12
Ingresa una contraseña para encriptar el archivo de salida.
Si usas Windows, usa los siguientes comandos:
$ certutil -mergepfx ldap-client.crt ldap-client.p12
Importante: Los dos archivos (<CERT_FILE>.crt y <CERT_FILE>.key) deben estar ubicados en el mismo directorio. Además, asegúrate de que key y crt tengan el mismo nombre (con una extensión diferente). En este ejemplo, usamos los nombres ldap-client.crt y ldap-client.key. - En el navegador LDAP de Softerra, instala el par de claves.
- Ve a Tools > Certificate Manager.
- Haz clic en Importar….
- Haz clic en Siguiente.
- Haz clic en Explorar….
- En la lista desplegable Tipo de archivo, ubicada en la esquina inferior derecha del cuadro de diálogo, selecciona Intercambio de información personal (*.pfx; *.p12).
- Selecciona el archivo ldap-client.p12 del paso 2 anterior.
- Haz clic en Abrir y, luego, en Siguiente.
- Ingresa la contraseña del paso 2 anterior y haz clic en Siguiente.
- Selecciona el almacén de certificados Personal.
- Haz clic en Siguiente.
- Haz clic en Finalizar.
- Agrega un perfil de servidor.
- Ve a File > New > New Profile…
- Ingresa un nombre para el perfil, como LDAP de Google.
- Haz clic en Siguiente.
Ingresa lo siguiente:
Host: ldap.google.com
Port: 636
Base DN: El nombre de tu dominio en formato DN (p. ej., dc=example,dc=com para example.com)
Usar conexión segura (SSL): Marcado
- Haz clic en Siguiente.
- Selecciona Externo (certificado SSL).
- Haz clic en Siguiente.
- Haz clic en Finalizar.
Sophos Mobile
Para obtener instrucciones sobre cómo conectar Sophos Mobile al servicio de LDAP seguro, consulta Cómo conectar Sophos Mobile a Google Cloud Identity o Google Cloud Directory con LDAP seguro.
Splunk
Cuando conectes Splunk al servicio de LDAP seguro, asegúrate de usar la versión 8.1.4 o posterior de Splunk. Cuando se usan versiones anteriores de Splunk, como la versión 8.1.3, es posible que se envíen consultas de LDAP excesivas al servidor de LDAP, lo que podría provocar que se agote rápidamente tu cuota de LDAP. Para obtener más información sobre los problemas de la versión 8.1.3 de Splunk, consulta Problemas conocidos de Splunk.
Sigue estos pasos:
- Copia los archivos de certificado y clave del cliente de LDAP en /home/splunk/splunkadmin/etc/openldap/certs/ldap-client.key y /home/splunkadmin/splunk/etc/openldap/certs/ldap-client.crt.
$ cat /home/splunkadmin/splunk/etc/openldap/certs/ldap-client.crt /home/splunkadmin/splunk/etc/openldap/certs/ldap-client.key > /home/splunkadmin/splunk/etc/openldap/certs/ldap-client.pem
$ sudo chown $(splunkuser):$(splunkuser) /home/splunkadmin/splunk/etc/openldap/certs/ldap-client.*
$ sudo chmod 644 /home/splunkadmin/splunk/etc/openldap/certs/ldap-client.*
- Edita el archivo ldap.conf para agregar las siguientes configuraciones:
ssl start_tls
TLS_REQCERT never
TLS_CERT /home/splunkadmin/splunk/etc/openldap/certs/ldap.pem
TLS_KEY /home/splunkadmin/splunk/etc/openldap/certs/ldap.pem - Agrega los siguientes parámetros de configuración en el archivo /home/splunkadmin/.ldaprc del usuario:
TLS_CERT /home/splunkadmin/splunk/etc/openldap/certs/ldap-client.pem
TLS_KEY /home/splunkadmin/splunk/etc/openldap/certs/ldap-client.pem
- Agrega la estrategia de LDAP con la IU web de Splunk. Ingresa los siguientes detalles y, luego, haz clic en Guardar:
|
Nombre |
LDAP seguro de Google |
|---|---|
|
Host |
ldap.google.com |
|
Puerto |
636 |
|
SSL habilitado |
Marcado |
|
Orden de conexión |
1 |
|
Bind DN |
Ingresa las credenciales de acceso que generaste en la Consola del administrador de Google. |
|
Contraseña de DN de vinculación |
Ingresa las credenciales de acceso que generaste en la Consola del administrador de Google. |
|
DN base |
Tu nombre de dominio en formato DN (por ejemplo, dc=example,dc=com para el dominio example.com) |
|
Filtro de base de usuarios |
Ingresa el filtro de base de usuarios para la clase de objeto según la que deseas filtrar a tus usuarios. |
|
Atributo de nombre de usuario |
uid |
|
Atributo de nombre real |
displayname |
|
Atributo de correo electrónico |
correo |
|
Atributo de asignación de grupos |
dn |
|
DN base del grupo |
Tu nombre de dominio en formato DN (por ejemplo, ou=Groups,dc=example,dc=com para el dominio example.com) |
|
Filtro de búsqueda de grupos estáticos |
Ingresa el filtro de búsqueda de grupos estáticos para la clase de objeto según la que deseas filtrar tus grupos estáticos. |
|
Atributo de nombre de grupo |
cn |
|
Atributo de miembro estático |
miembro |
SSSD (Red Hat Enterprise y CentOS)
SSSD realiza una búsqueda de usuarios para obtener más información sobre un usuario durante la autenticación de usuarios. Para asegurarte de que la autenticación del usuario funcione correctamente para este cliente de LDAP, deberás activar Leer información del usuario y Leer información del grupo para todas las unidades organizativas en las que esté activada la opción Verificar credenciales del usuario. (Para obtener instrucciones, consulta Configura los permisos de acceso).
Para conectar un cliente de SSSD en Red Hat 8 o CentOS 8 al servicio de LDAP seguro, haz lo siguiente:
- Agrega el cliente de SSSD al servicio de LDAP seguro:
- En la Consola del administrador de Google, ve a Apps > LDAP > ADD CLIENT.
Asegúrate de acceder con tu cuenta corporativa y no con tu cuenta personal de Gmail. - Ingresa los detalles del cliente y haz clic en CONTINUAR.
- Configura los permisos de acceso:
Verificación de las credenciales de los usuarios: Dominio completo
Lectura de la información de los usuarios: Dominio completo
Lectura de la información de los grupos: Activado - Haz clic en AGREGAR UN CLIENTE DE LDAP.
- Descarga el certificado generado.
- Haz clic en CONTINUAR CON LOS DETALLES DEL CLIENTE.
- Cambia el estado del servicio a ACTIVADO.
- En la Consola del administrador de Google, ve a Apps > LDAP > ADD CLIENT.
- Instala las dependencias:
dnf install openldap-clients sssd-ldap
install -d --mode=700 --owner=sssd --group=root /etc/sssd/ldap
Descomprime el archivo .zip del certificado y copia los archivos .crt y .key en /etc/sssd/ldap
- Prueba con ldapsearch (opcional):
LDAPTLS_REQCERT=never \
LDAPTLS_KEY=Google.key \
LDAPTLS_CERT=Google.crt \
ldapsearch -H ldaps://ldap.google.com:636/ \
-b dc=example,dc=com \
-D usertoverify@example.com \
-W \
'(mail=usertoverify@example.com)' \
mail dn
Cuando se te solicite, ingresa la contraseña de Google del usuario.
Nota: El usuario debe tener asignada una licencia de Google Workspace Enterprise o Cloud Identity Premium. - Crea el archivo
/etc/sssd/sssd.confcon el siguiente contenido:
[sssd]
services = nss, pam
domains = example.com[domain/example.com]
ldap_tls_cert = /etc/sssd/ldap/Google.crt
ldap_tls_key = /etc/sssd/ldap/Google.key
ldap_tls_reqcert = never
ldap_uri = ldaps://ldap.google.com
ldap_search_base = dc=example,dc=com
id_provider = ldap
auth_provider = ldap
ldap_schema = rfc2307bis
ldap_user_uuid = entryUUID - Actualiza los permisos y las etiquetas de SELinux:
chown 0:0 /etc/sssd/sssd.conf /etc/sssd/ldap/*
chmod 600 /etc/sssd/sssd.conf /etc/sssd/ldap/*
restorecon -FRv /etc/sssd
- Reinicia SSSD:
systemctl restart sssd
- Prueba:
ssh al servidor:ssh -l user@example.com {HOSTNAME}
Solución de problemas
- Verifica la versión de SSSD (debe ser mayor o igual a 1.15.2):
# sssd --version
2.2.3
-
En RHEL/CentOS (o cualquier distribución con aplicación de SELinux), los archivos de configuración de SSSD, el archivo de certificado y la clave deben estar en un directorio al que pueda acceder el rol sssd_conf_t:
# egrep "object_r:sssd_conf_t" /etc/selinux/targeted/contexts/files/file_contextsVerifica el archivo /var/log/audit/audit.log en busca de mensajes de denegación de AVC.
- Verifica que /etc/nsswitch.conf tenga "sss" para las entidades passwd, shadow, group y netgroup:
passwd: files sss
shadow: files sss
group: files sss
netgroup: files sss
Aquí, los archivos locales anularán a los usuarios de LDAP.
- Verifica si hay errores de configuración en /var/log/sssd.conf:
Ejemplo:
[sssd] [sss_ini_add_snippets] (0x0020): Config merge error: File /etc/sssd/sssd.conf did not pass access check. Omitiendo.Acción: Debes establecer el permiso chmod 600 en el archivo .conf.
Ejemplo:
[sssd] [sss_ini_call_validators] (0x0020): [rule/allowed_domain_options]: Attribute 'ldap_groups_use_matching_rule_in_chain' is not allowed in section 'domain/{DOMAIN}'. Verifica si hay errores tipográficos.[sssd] [sss_ini_call_validators] (0x0020): [rule/allowed_domain_options]: El atributo "ldap_initgroups_use_matching_rule_in_chain" no se permite en la sección "domain/{DOMAIN}". Verifica si hay errores tipográficos.
Acción: Quita las extensiones LDAP de coincidencia de grupos no admitidas de sssd.conf.
-
Verifica si hay errores de LDAP, de red o de autenticación en /var/log/sssd_{DOMAIN}.log.
Ejemplo:[sssd[be[example.com]]] [sss_ldap_init_sys_connect_done] (0x0020): ldap_install_tls failed: [Connect error] [error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed (self signed certificate)]
Acción: Debes agregar "ldap_tls_reqcert = never" a sssd.conf.
Para aumentar la verbosidad de los errores, agrega "debug_level = 9" en sssd.conf en la sección del dominio y reinicia sssd.
SSSD (otras distribuciones de Linux)
SSSD realiza una búsqueda de usuarios para obtener más información sobre un usuario durante la autenticación de usuarios. Para asegurarte de que la autenticación del usuario funcione correctamente para este cliente de LDAP, deberás activar Leer información del usuario y Leer información del grupo para todas las unidades organizativas en las que esté activada la opción Verificar credenciales del usuario. (Para obtener instrucciones, consulta Configura los permisos de acceso).
Para conectar un cliente de SSSD al servicio de LDAP seguro, haz lo siguiente:
- Instala la versión 1.15.2 o posterior de SSSD.
$ sudo apt-get install sssd
- Suponiendo que los archivos de certificado y clave del cliente se llamen /var/ldap-client.crt y /var/ldap-client.key, y que tu dominio sea example.com, edita /etc/sssd/sssd.conf con una configuración como la siguiente:
[sssd]
services = nss, pam
domains = example.com[domain/example.com]
ldap_tls_cert = /var/ldap-client.crt
ldap_tls_key = /var/ldap-client.key
ldap_uri = ldaps://ldap.google.com
ldap_search_base = dc=example,dc=com
id_provider = ldap
auth_provider = ldap
ldap_schema = rfc2307bis
ldap_user_uuid = entryUUID
ldap_groups_use_matching_rule_in_chain = true
ldap_initgroups_use_matching_rule_in_chain = true
-
Cambia la propiedad y el permiso del archivo de configuración:
$ sudo chown root:root /etc/sssd/sssd.conf
$ sudo chmod 600 /etc/sssd/sssd.conf -
Reinicia SSSD:
$ sudo service sssd restart
Sugerencia: Si usas el módulo SSSD en computadoras Linux sin direcciones IP externas en Google Compute Engine, aún puedes conectarte al servicio de LDAP seguro, siempre y cuando tengas habilitado el acceso interno a los servicios de Google. Para obtener más información, consulta Configura el Acceso privado a Google.
macOS
Sigue los pasos que se indican a continuación para conectar el cliente de macOS para la autenticación de la cuenta de usuario con el servicio de LDAP seguro.
Requisitos del sistema
- macOS debe ser Catalina, versión 10.15.4 o posterior.
- Se requiere un ID de usuario de administrador avanzado de Google para completar el paso 1 de la fase de preparación.
- Necesitas permisos de administrador local para realizar esta configuración.
Contenido:
Las instrucciones de esta sección se enfocan en cómo configurar y probar manualmente la autenticación de macOS con el servicio LDAP seguro.
Paso 1: Incorpora macOS como cliente de LDAP en la Consola del administrador de Google
Para obtener instrucciones, consulta Cómo agregar clientes LDAP o mira esta demostración de LDAP seguro. Durante este proceso, también descargarás un certificado de cliente TLS generado automáticamente.
Paso 2: Importa el certificado al llavero del sistema
- Copia el certificado (el archivo ZIP que descargaste en el paso 1) y la clave en la máquina macOS.
Nota: Descomprime el archivo para encontrar los archivos de certificado y clave. - Importa el par de claves al llavero del sistema:
-
Convierte la clave y el certificado en un archivo PKCS 12 (p12). Ejecuta el siguiente comando en la terminal:
openssl pkcs12 -export -out ldap-client.p12 -in ldap-client.crt -inkey ldap-client.key
Nota: Anota el nombre del archivo .p12.
El sistema te pedirá que ingreses una contraseña. Ingresa una contraseña con la que encriptar el archivo .p12. -
Abre la aplicación Acceso a Llaveros.
-
Haz clic en el llavero System.
-
Haz clic en File > Import Items.
-
Selecciona el archivo ldap-client.p12 que creaste anteriormente.
-
Si se te solicita, ingresa la contraseña de administrador para permitir la modificación del llavero del sistema.
-
Ingresa la contraseña que creaste antes para desencriptar el archivo .p12.
Nota: Verás un nuevo certificado y la clave privada asociada en la lista de claves. Es posible que se llame LDAP Client. Anota el nombre del certificado para el siguiente paso.
- Sigue el paso 6 de la sección ldapsearch (macOS) de este artículo para configurar el control de acceso de la clave privada y agregar las apps que se especifican a continuación. Si la clave privada no aparece en la categoría Todos los elementos, intenta cambiar a la categoría Mis certificados y expande el certificado correspondiente para ubicar la entrada de clave privada correcta.
La app de ldapsearch, como se especifica en las instrucciones, solo es relevante si se necesita solucionar problemas y no para otros fines. Por lo general, se quita antes de proporcionar a los usuarios acceso a macOS.
Se deben agregar las siguientes tres apps a la lista de control de acceso:
/System/Library/CoreServices/Applications/Directory Utility
/usr/libexec/opendirectoryd
/usr/bin/dscl
-
-
Agrega una línea al archivo /etc/openldap/ldap.conf y asegúrate de que "Cliente LDAP" sea exactamente el mismo nombre de certificado que se muestra en la aplicación Acceso a Llavero de macOS después de importar el archivo .p12 (el nombre proviene del nombre común del sujeto X.509 del certificado generado):
sudo bash -c 'echo -e "TLS_IDENTITY\tLDAP Client" >> /etc/openldap/ldap.conf'
Paso 3: Dirige el dispositivo al directorio de Google para la autenticación
Abre la aplicación Utilidad de Directorios para crear un nuevo nodo de directorio LDAP:
- Haz clic en el candado para realizar cambios y escribe tu contraseña.
- Selecciona LDAPv3 y haz clic en el ícono de lápiz para editar la configuración.
- Haz clic en Nuevo….
- En el nombre del servidor, ingresa ldap.google.com, selecciona Encriptar con SSL y haz clic en Manual.
- Selecciona el nuevo nombre del servidor y haz clic en Editar….
- Ingresa un nombre descriptivo, como LDAP seguro de Google, para el nombre de la configuración.
- Selecciona Encrypt using SSL y asegúrate de que el puerto esté configurado en 636.
- Ve a la pestaña Search & Mappings.
- Elige RFC2307 en la lista desplegable Accede a este servidor LDAPv3 con.
- Cuando se te solicite, ingresa la información relacionada con el dominio en Sufijo de la base de búsqueda. Por ejemplo, ingresa
dc=zomato,dc=compara el nombre de dominio zomato.com. - Haz clic en Aceptar.
- Configura los atributos en el tipo de registro Usuarios:
- En la sección Record Types and Attributes, selecciona Users y haz clic en el botón "+".
- En la ventana emergente, elige Attribute Types, selecciona GeneratedUID y, luego, haz clic en OK para cerrar la ventana emergente.
GeneratedUID debe mostrarse en Usuarios después de expandirse.
- Haz clic en GeneratedUID y, luego, en el ícono “+” del cuadro de la derecha.
- Ingresa apple-generateduid en el cuadro de texto y haz clic en Intro.
- En el nodo Users, haz clic en el atributo NFSHomeDirectory.
- En la pantalla de la derecha, actualiza el valor de este atributo a
#/Users/$uid$ - Haz clic en Aceptar y, luego, ingresa tu contraseña para guardar los cambios.
- En la ventana Utilidad de Directorios, configura la nueva configuración de LDAP:
- Ve a la pestaña Política de Búsqueda.
- Haz clic en el ícono de candado para realizar cambios y, cuando se te solicite, ingresa la contraseña del usuario actual.
- Cambia la opción del menú desplegable de Ruta de acceso de búsqueda a Ruta de acceso personalizada.
- Abre la pestaña Authentication y haz clic en el ícono "+".
- Elige
/LDAPv3/ldap.google.comen la lista Directory Domains y, luego, haz clic en Agregar. - Haz clic en el botón Aplicar y, si se te solicita, ingresa tu contraseña de administrador.
- Ejecuta los siguientes cuatro comandos para inhabilitar los mecanismos de autenticación SASL DIGEST-MD5, CRAM-MD5, NTLM y GSSAPI. macOS usará Simple Bind para autenticarse con el servicio LDAP seguro de Google:
sudo /usr/libexec/PlistBuddy -c "add ':module options:ldap:Denied SASL Methods:' string DIGEST-MD5" /Library/Preferences/OpenDirectory/Configurations/LDAPv3/ldap.google.com.plist
sudo /usr/libexec/PlistBuddy -c "add ':module options:ldap:Denied SASL Methods:' string CRAM-MD5" /Library/Preferences/OpenDirectory/Configurations/LDAPv3/ldap.google.com.plist
sudo /usr/libexec/PlistBuddy -c "add ':module options:ldap:Denied SASL Methods:' string NTLM" /Library/Preferences/OpenDirectory/Configurations/LDAPv3/ldap.google.com.plist
sudo /usr/libexec/PlistBuddy -c "add ':module options:ldap:Denied SASL Methods:' string GSSAPI" /Library/Preferences/OpenDirectory/Configurations/LDAPv3/ldap.google.com.plist
- Reinicia el sistema para volver a cargar la configuración de OpenDirectory.
Paso 4: Crea una cuenta para dispositivos móviles (permite el acceso sin conexión)
Cualquier usuario de Google Workspace o Cloud Identity puede acceder con una cuenta de red (cuenta de Google) usando su nombre de usuario y contraseña. Este proceso de acceso requiere conectividad de red. Si un usuario necesita acceder con o sin conexión a la red, se puede crear una cuenta móvil. Una cuenta móvil te permite usar el nombre de usuario y la contraseña de tu cuenta de red (Cuenta de Google) para acceder, ya sea que estés conectado a la red o no. Para obtener más detalles, consulta Cómo crear y configurar cuentas móviles en Mac.
Para crear una cuenta de dispositivo móvil para los usuarios de LDAP seguro, haz lo siguiente:
-
Ejecuta el siguiente comando para conectarte al servidor LDAP seguro y configurar una ruta de acceso principal y cuentas móviles:
sudo /System/Library/CoreServices/ManagedClient.app/Contents/Resources/createmobileaccount -n $uid -v
Nota: Reemplaza $uid por la parte del nombre de usuario de la dirección de correo electrónico asociada a la Cuenta de Google del usuario. Por ejemplo, jperez es la parte del nombre de usuario de jperez@solarmora.com. -
Cuando se te solicite el nombre de usuario del administrador de SecureToken, ingresa tu nombre de usuario de administrador y, luego, tu contraseña en el siguiente mensaje. Esto agregará $uid a FileVault. Esto es necesario si el disco de macOS está encriptado.
Paso 5: (Opcional) Establece la preferencia de la pantalla de acceso
- Ve a Preferencias del sistema > Usuarios y grupos > Opciones de inicio de sesión en la parte inferior izquierda.
- Desbloquea el candado proporcionando credenciales de administrador.
- Cambia la opción Mostrar ventana de acceso como a Nombre y contraseña.
Paso 6: Reinicia el dispositivo y accede a él
- Comprueba que el dispositivo esté conectado a Internet. Si no tienes conexión a Internet, el acceso del usuario de LDAP seguro no funcionará.
Nota: La conexión a Internet solo es necesaria para el primer acceso. Los accesos posteriores pueden ocurrir sin acceso a Internet. - Accede al dispositivo con la cuenta de usuario configurada para usar LDAP seguro para la autenticación.
Las instrucciones de esta sección se enfocan en automatizar la configuración del dispositivo para tus usuarios. Realiza los pasos 1 y 2 a continuación en el mismo dispositivo macOS en el que completaste la configuración manual durante la fase de preparación.
Paso 1: Crea un perfil de Mac con un certificado usando Apple Configurator 2
- Instala Apple Configurator 2 en la máquina en la que configuraste manualmente la autenticación de macOS con LDAP seguro.
- Abre Apple Configurator 2, crea un perfil nuevo y, en la sección Certificate, haz clic en Configure y, luego, importa el archivo .p12 que se generó anteriormente.
Nota: Asegúrate de que este archivo .p12 tenga una contraseña. Ingresa esta contraseña en la sección Contraseña del certificado.
- Guarda este perfil.
- (En el caso de los dispositivos que usan procesadores M1 o M2, omite este paso y continúa con el paso 5. ) Abre este perfil en cualquier editor de texto y agrega las siguientes líneas en la primera etiqueta <dict>:
<key>PayloadScope</key>
<string>System</string>
Esto se agrega porque Apple Configurator aún no admite perfiles para macOS.
- En la segunda etiqueta <dict>, paralela a los datos del certificado, agrega las siguientes líneas:
<key>AllowAllAppsAccess</key>
<true/>
Esto garantizará que todas las aplicaciones puedan acceder a este certificado.
Paso 2: Convierte el archivo de configuración del directorio (plist) a XML
En este paso, extraerás todas las configuraciones manuales que completaste durante el paso 3 de la fase de preparación en un archivo XML. Puedes usar este archivo y el perfil de Mac creado en el paso 1 para configurar automáticamente otros dispositivos macOS.
- Copia /Library/Preferences/OpenDirectory/Configurations/LDAPv3/ldap.google.com.plist en tu escritorio o en otro lugar.
- Convertirlo a XML para que puedas inspeccionarlo en cualquier editor de texto Ejecuta el siguiente comando en la terminal:
sudo plutil -convert xml1 <path>/ldap.google.com.plist
Puedes acceder al archivo como<path>/ldap.google.com.plist.
- Cambia el permiso del archivo anterior para que puedas abrir el archivo XML. Asegúrate de que no esté vacío.
Paso 3: Crea una secuencia de comandos de Python para automatizar la configuración en los dispositivos de los usuarios finales
Copia la siguiente secuencia de comandos de Python y guárdala como un archivo de Python (archivo .py).
Nota: Esta secuencia de comandos de muestra está diseñada para ser compatible con la versión 3.10.x de Python. Esta secuencia de comandos se proporciona tal cual. El equipo de asistencia de Google no brindará asistencia para las secuencias de comandos de ejemplo.
Ldap_python_config.py
#!/usr/bin/python
from OpenDirectory import ODNode, ODSession, kODNodeTypeConfigure
from Foundation import NSMutableData, NSData
import os
import sys
# Reading plist
GOOGLELDAPCONFIGFILE = open(sys.argv[1], "r")
CONFIG = GOOGLELDAPCONFIGFILE.read()
GOOGLELDAPCONFIGFILE.close()
# Write the plist
od_session = ODSession.defaultSession()
od_conf_node, err = ODNode.nodeWithSession_type_error_(od_session, kODNodeTypeConfigure, None)
request = NSMutableData.dataWithBytes_length_(b' '*32, 32)
request.appendData_(NSData.dataWithBytes_length_(str.encode(CONFIG), len(CONFIG)))
response, err = od_conf_node.customCall_sendData_error_(99991, request, None)
# Edit the default search path and append the new node to allow for login
os.system("dscl -q localhost -append /Search CSPSearchPath /LDAPv3/ldap.google.com")
os.system("bash -c 'echo -e \"TLS_IDENTITY\tLDAP Client\" >> /etc/openldap/ldap.conf' ")
Paso 4: Configura automáticamente los dispositivos de los usuarios finales
Ve a otros dispositivos macOS que quieras configurar y sigue estos pasos:
- Copia en el dispositivo el archivo de perfil de Mac generado en el paso 1, el archivo de configuración XML generado en el paso 2 y la secuencia de comandos de Python del paso 3.
- Para instalar la dependencia necesaria para la secuencia de comandos, ejecuta el siguiente comando:
python3 -m pip install pyobjc-framework-opendirectory - Ejecuta el siguiente comando:
sudo python </path/to/saved_python_script> </path/to/ldap.google.com.plist generated in step 2> - Para importar certificados al llavero del sistema de macOS, haz doble clic en el archivo de perfil de Mac generado en el paso 1 y, cuando se te solicite, proporciona tus credenciales de administrador local de macOS. Luego, se te pedirá que ingreses la contraseña .p12 que estableciste durante la fase de preparación.
- Reinicia la máquina macOS.
- Crea cuentas móviles según las instrucciones del paso 4 de la fase de preparación y, de manera opcional, establece las preferencias adicionales que se describen en el paso 5 de la fase de preparación.
- En el caso de los usuarios que acceden a macOS con sus credenciales de Google, el nombre de usuario de su cuenta de Workspace debe ser diferente del ID de usuario de su perfil de usuario de macOS. De lo contrario, se bloqueará el acceso.
- Una vez que un usuario comienza a acceder a macOS con credenciales de Google, la administración de contraseñas del usuario (restablecimiento o recuperación) debe realizarse en el sitio web de Google (por ejemplo, en myaccount.google.com o en la Consola del administrador de Google). Si decides administrar las contraseñas con una solución de terceros, asegúrate de que la contraseña más reciente esté sincronizada con Google.
- Si el administrador crea un usuario nuevo o restablece la contraseña de un usuario existente con el parámetro de configuración Solicitar un cambio de contraseña en el próximo acceso activado, el usuario no podrá acceder a Mac con la contraseña temporal establecida por el administrador.
Solución alternativa: El usuario debe acceder a Google con otro dispositivo (por ejemplo, su dispositivo móvil o cualquier otro dispositivo de escritorio), establecer una contraseña permanente y, luego, acceder a macOS con la nueva contraseña. - La Mac debe estar conectada a una conexión a Internet que funcione para que se pueda acceder a ldap.google.com durante el primer acceso después de la configuración anterior. Los accesos posteriores no requerirán acceso a Internet, siempre y cuando hayas optado por configurar una cuenta móvil.
- La integración de LDAP seguro de Google con macOS se probó en macOS Catalina, Big Sur y Monterey.
Si tienes problemas para conectarte al servicio de LDAP seguro, sigue las instrucciones que se indican a continuación.
Paso 1: Verifica la conexión.
Verifica la conexión con odutil.
Ejecuta el comando odutil show nodenames en la terminal.
Verifica que el estado de /LDAPv3/ldap.google.com sea en línea. Si no está en línea, prueba la opción de Telnet.
Verifica la conexión con nc.
Ejecuta el siguiente comando en la terminal: nc -zv ldap.google.com 636
Si no puedes conectarte a Google con este método, intenta conectarte con IPv4.
Verifica la conexión con IPv4.
Puedes cambiar tu dispositivo para que use IPv4 siguiendo estos pasos:
- Ve a Preferencias del sistema > Red > Wi-Fi > Avanzado.
- En el menú Avanzado, ve a la pestaña TCP/IP.
- Cambia la selección del menú desplegable de Configurar IPv6 a Solo vínculo local.
- Haz clic en Aceptar y, luego, en Aplicar para guardar los cambios.
- Verifica la autenticación del servicio a través de la conectividad de ldapsearch y una búsqueda válida.
Paso 2: Verifica si puedes ver objetos de directorio.
- Abre Utilidad de Directorio y, luego, la pestaña Editor de Directorio.
- Selecciona el nodo /LDAPv3/ldap.google.com en la lista desplegable.
- Verifica si puedes ver los usuarios y los grupos de tu dominio de Google.
Instrucciones de configuración para aplicaciones de Java
La mayoría de las aplicaciones basadas en Java que ofrecen funcionalidad de LDAP se pueden configurar para autenticarse con certificados de cliente. Para ello, instala tus certificados de cliente en el almacén de claves de la aplicación. Los archivos de configuración exactos variarán entre las aplicaciones, pero el proceso suele ser similar. La configuración requiere que se instalen OpenSSL y un entorno de ejecución de Java.
Convierte el certificado y las claves al formato de almacén de claves Java. Se te solicitarán contraseñas durante todo el proceso. Selecciona una contraseña segura y úsala en todas las indicaciones. Suponiendo que el archivo de claves del cliente se llama ldap-client.key, haz lo siguiente:
Si usas macOS o Linux, usa los siguientes comandos:
$ openssl pkcs12 -export -out java-application-ldap.pkcs12 -in ldap-client.crt -inkey ldap-client.keySi usas Windows, usa los siguientes comandos:
$ certutil -mergepfx ldap-client.crt java-application-ldap.pkcs12Importante: Los dos archivos (<CERT_FILE>.crt y <CERT_FILE>.key) deben estar ubicados en el mismo directorio. Además, asegúrate de que key y crt tengan el mismo nombre (con las dos extensiones diferentes). En este ejemplo, usamos los nombres ldap-client.crt y ldap-client.key.
Importa el certificado al almacén de claves:
$ keytool -v -importkeystore -srckeystore java-application-ldap.pkcs12 -srcstoretype PKCS12 -destkeystore java-application-ldap.jks -deststoretype JKSLas propiedades de Java se pueden configurar de diferentes maneras según la aplicación. A menudo, puedes configurarlos con la opción -D en la línea de comandos de "java" que se usa para iniciarlo. Establece las propiedades de Java para tu aplicación:
javax.net.ssl.keyStore = /<path-to>/java-application-ldap.jks javax.net.ssl.keyStorePassword = <password selected above>Configura los parámetros de conexión LDAP de la aplicación con la información que se encuentra en Instrucciones de configuración básica.
Opcional: Usa stunnel como proxy
Para los clientes que no ofrecen una forma de autenticarse en LDAP con un certificado de cliente, usa stunnel como proxy.
Configura stunnel para que proporcione el certificado de cliente al servidor LDAP y configura tu cliente para que se conecte a stunnel. Lo ideal sería que ejecutaras stunnel en los mismos servidores que tu aplicación y que solo escucharas de forma local para no exponer tu directorio LDAP más allá de ese servidor.
Sigue estos pasos:
Instala stunnel. Por ejemplo, en Ubuntu:
$ sudo apt-get install stunnel4Crea un archivo de configuración /etc/stunnel/google-ldap.conf con el siguiente contenido (suponiendo que ldap-client.crt es el certificado y ldap-client.key es la clave):
[ldap]
client = yes
accept = 127.0.0.1:1636
connect = ldap.google.com:636
cert = ldap-client.crt
key = ldap-client.keyPara habilitar stunnel, edita /etc/default/stunnel4 y configura ENABLED=1.
Reinicia stunnel.
$ sudo /etc/init.d/stunnel4 restartConfigura tu aplicación para que apunte a ldap://127.0.0.1:1636.
Puedes reemplazar "1636" por cualquier puerto sin usar si también cambias la línea accept en el archivo de configuración anterior. Deberás usar LDAP de texto simple sin StartTLS/SSL/TLS habilitado entre el cliente y stunnel, ya que se comunican de forma local.
Nota: Si decides ejecutar stunnel en un servidor independiente, debes configurar tus firewalls de modo que solo las aplicaciones necesarias puedan acceder a tu servidor de stunnel. También puedes configurar stunnel para que escuche con TLS, de modo que los datos entre tu aplicación y los servidores de stunnel estén encriptados. Los detalles de ambas configuraciones dependen de tu entorno.
Próximos pasos
Después de conectar el cliente LDAP al servicio LDAP seguro, debes cambiar el estado del servicio a Activado para el cliente LDAP.
Para conocer los próximos pasos, consulta el paso 5. Cambia los clientes de LDAP a Activado.
Nota: Si es necesario, puedes usar herramientas simples como ldapsearch, ADSI o ldp.exe para solucionar problemas si se producen errores cuando intentas conectar tu cliente LDAP al servicio. Para obtener instrucciones, consulta Pruebas de conectividad y solución de problemas.