Es bastante común tener máquinas Linux o UNIX en una red con un dominio de Microsoft Active Directory (AD). Puede haber ocasiones en las que desee o necesite buscar en Active Directory con ldapsearch.
Ejemplo rápido
Usando TLS
ldapsearch -H ldaps://dc.example.com -x -W -D "[email protected]" \ -b "dc=example,dc=com" "(sAMAccountName=user)"
Sin TLS
ldapsearch -H ldap://dc.example.com -x -W -D "[email protected]" \ -b "dc=example,dc=com" "(sAMAccountName=user)"
Si desea o necesita una guía más detallada, siga leyendo.
Configurar ldap.conf
Si está de acuerdo con una conexión sin cifrar, vaya a la siguiente sección. Si es posible, debe obtener el certificado de entidad de certificación (CA) utilizado para firmar el certificado de servidor de AD. Pídale a su administrador de anuncios que le proporcione esto en formato PEM. Si esto no es posible y si está razonablemente seguro de que su conexión de red no está comprometida, puede usar openssl para recuperar el certificado del servidor desde el servidor. El siguiente ejemplo muestra cómo hacerlo.
tyler@desktop:~$ openssl s_client -connect ldap.tylersguides.com:636 -showcerts
Copie y pegue el texto del certificado del certificado inferior en un archivo. Uso/pki / cacerts.pem. El texto del certificado se verá algo como esto:
-----BEGIN CERTIFICATE-----MIIFdDCCBFygAwIBAgIQJ2buVutJ846r13Ci/ITeIjANBgkqhkiG9w0BAQwFADBvMQswCQYDVQQGEwJTRTEUMBIGA1UEChMLQWRkVHJ1c3QgQUIxJjAkBgNVBAsTHUFkZFRydXN0IEV4dGVybmFsIFRUUCBOZXR3b3JrMSIwIAYDVQQDExlBZGRUcnVzdCBFpu/xO28QOG8=-----END CERTIFICATE-----
Abre ldap.conf con un editor de texto. Aquí es donde encontrarlo en varios sistemas operativos:
RUTA OS | |
---|---|
CentOS | / etc / openldap / ldap.conf |
Debian | /etc/ldap/ldap.conf |
OpenSUSE | /etc/openldap/ldap.conf |
Agregue la línea
TLS_CACERT /pki/cacerts.pem
para su archivo. Reemplazar / pki / cacerts.pem con la ubicación en la que puso el anuncio CA cert si decidió ponerlo en otro lugar. Agregue la línea
TLS_REQCERT demand
a su archivo también. En caso de que su red se vea comprometida, esto evitará que el atacante robe sus credenciales con un ataque man in the middle.
Busque en Active Directory con Ldapsearch
Utilice el siguiente ejemplo, sustituyendo los valores resaltados para realizar la búsqueda. Si optó por no usar una conexión cifrada, use ldap: / / en lugar de ldaps://
ldapsearch -H ldaps://dc.example.com -x -W -D "[email protected]" \ -b "dc=example,dc=com" "(filter)" "attr1" "attr2"
Opción | Explicación |
---|---|
-H | El URI del servidor de directorios que está consultando. |
-x | Utilice autenticación simple en lugar de SASL. |
-W | Le pedirá su contraseña. |
-D | El DN del usuario con el que se está autenticando. Al consultar un ANUNCIO, este será el nombre de usuario de tu ANUNCIO en tu dominio. |
-b | Donde en el directorio para iniciar su búsqueda. Si sabe en qué se encuentran las entradas que está buscando, puede agregarlas a su base. Por ejemplo, si sabes que quieres mirar en una unidad organizativa llamada cosas, tu base se verá así: «ou = stuff,dc = example, dc=com»(en inglés). Si no sabe en qué se encuentra, está bien que solo use su dominio. Por ejemplo, «dc = guías de tylers, dc = com» |
filter | El filtro de búsqueda LDAP utilizado para encontrar entradas. El filtro más simple es buscar un atributo con un valor particular. Por ejemplo, si está buscando un usuario de ANUNCIOS con el nombre de usuario bob, utilice el filtro » (sAMAccountName = bob)». Si desea encontrar a todos los miembros del grupo cn=storage, ou = groups, dc = example, dc = com, utilizaría » (memberOf = cn = storage, ou=groups, dc = example, dc = com)» |
attr | Los atributos que desea mostrar. Cada atributo debe estar separado con un espacio. Algunos de los más comunes son mail y memberOf. |
Si estás interesado, escribí una guía sobre filtros de búsqueda LDAP.