é bastante comum ter máquinas Linux ou UNIX em uma rede com um domínio de Microsoft Active Directory (AD). Poderá haver alturas em que queira ou precise de procurar no directório activo com o ldapsearch.
exemplo rápido
usando TLS
ldapsearch -H ldaps://dc.example.com -x -W -D "[email protected]" \ -b "dc=example,dc=com" "(sAMAccountName=user)"
sem TLS
ldapsearch -H ldap://dc.example.com -x -W -D "[email protected]" \ -b "dc=example,dc=com" "(sAMAccountName=user)"
se quiser ou necessitar de um guia mais profundo, continue a ler.
Configure ldap.conf
se estiver de acordo com uma ligação não cifrada, salte para a secção seguinte. Se possível, você deve obter o certificado de Autoridade de certificado (CA) usado para assinar o certificado do servidor de AD. Peça ao seu administrador de anúncios para fornecer isso para você no formato PEM. Se isto não for possível e se tiver a certeza de que a sua ligação à rede não está comprometida, pode usar o openssl para obter o certificado do servidor do servidor. O exemplo seguinte demonstra como fazer isso.
tyler@desktop:~$ openssl s_client -connect ldap.tylersguides.com:636 -showcerts
copiar e colar o texto do certificado do certificado inferior num ficheiro. Eu uso/pki / cacerts.pem. O texto do certificado será parecido com este:
-----BEGIN CERTIFICATE-----MIIFdDCCBFygAwIBAgIQJ2buVutJ846r13Ci/ITeIjANBgkqhkiG9w0BAQwFADBvMQswCQYDVQQGEwJTRTEUMBIGA1UEChMLQWRkVHJ1c3QgQUIxJjAkBgNVBAsTHUFkZFRydXN0IEV4dGVybmFsIFRUUCBOZXR3b3JrMSIwIAYDVQQDExlBZGRUcnVzdCBFpu/xO28QOG8=-----END CERTIFICATE-----
abrir ldap.conf com um editor de texto. Aqui é onde encontrá-la em vários sistemas operacionais:
OS | CAMINHO |
---|---|
CentOS | /etc/openldap/ldap.conf |
Debian | /etc/ldap/ldap.conf |
OpenSUSE | / etc/openldap / ldap.conf |
adicione a linha
TLS_CACERT /pki/cacerts.pem
ao seu ficheiro. Substituir /pki / cacerts.pem com a localização que você colocou o anúncio ca cert se você decidiu colocá-lo em outro lugar. Adicione a linha
TLS_REQCERT demand
ao seu ficheiro também. Caso a sua rede esteja comprometida, isto impedirá o atacante de roubar as suas credenciais com um homem no ataque do meio.
Pesquisar pasta activa com Ldapsearch
usar o seguinte exemplo, substituindo os valores realçados para realizar a pesquisa. Se você optou por não usar uma conexão criptografada, o uso de ldap:// em vez de ldaps://
ldapsearch -H ldaps://dc.example.com -x -W -D "[email protected]" \ -b "dc=example,dc=com" "(filter)" "attr1" "attr2"
Opção | Explicação |
---|---|
-H | O URI do servidor de diretório que você está consultando. |
-x | Use a autenticação simples em vez de SASL. |
-W | peça a sua senha. |
-D | o DN do utilizador com o qual está a autenticar-se. Ao questionar o anúncio, Este será o seu nome de utilizador do anúncio @ o seu domínio. |
-b | onde no directório iniciar a sua pesquisa. Se você sabe em que ou as entradas que você está procurando estão, você pode adicioná-lo à sua base. Por exemplo, se você sabe que você quer olhar em um ou chamado coisas, sua base vai se parecer com este: “ou = stuff, dc=example, dc=com”. Se você não sabe o que você está dentro, é ok apenas usar o seu domínio. Por exemplo: “dc=tylersguides, dc=com” |
filtro | o filtro de pesquisa LDAP usado para encontrar os itens. O filtro mais simples é procurar por um atributo com um valor particular. Por exemplo, se você estiver procurando um usuário de AD com o nome de usuário bob, você usaria o filtro “(sAMAccountName=bob)”. Se você quiser encontrar todos de que é um membro do grupo cn=armazenamento,ou=grupos,dc=exemplo,dc=com, você poderia usar “(memberOf=cn=armazenamento,ou=grupos,dc=exemplo,dc=com)” |
attr | Os atributos que você deseja exibir. Cada atributo deve ser separado com um espaço. Alguns comuns são o correio e o membro. |
se você estiver interessado, eu escrevi um guia sobre Filtros de busca LDAP.