Edições que têm esse recurso: Frontline Standard e Frontline Plus, Business Plus, Enterprise Standard e Enterprise Plus, Education Fundamentals, Education Standard e Education Plus, Enterprise Essentials Plus. Comparar sua edição
Antes de tentar conectar seu cliente LDAP ao serviço LDAP seguro, você tem a opção de fazer um teste rápido de conectividade usando ferramentas simples, como ldapsearch, ADSI ou ldp.exe. Você pode usá-las para resolver problemas, como erros na tentativa de conexão do seu cliente LDAP ao serviço.
Os testes descritos nas seções abaixo mostram possíveis problemas de configuração, mensagens de erro comuns e recomendações para corrigir esses problemas.
Este artigo contém as seguintes seções:
- Verificar a conectividade e fazer uma consulta LDAP
Com uma consulta LDAP, você confirma que pode conectar o LDAP seguro e fazer consultas. - Se necessário, faça um teste básico de conectividade
Se não for possível fazer uma consulta LDAP, faça um teste básico de conectividade para testar o acesso à rede e a autenticação.
Observação:se você precisar entrar em contato com o suporte do Google Workspace ou do Cloud Identity Premium durante esse processo, salve os resultados dos comandos. Remova todas as informações de identificação pessoal do resultado antes de compartilhá-lo com a equipe de suporte.
Verificar a conectividade e fazer uma consulta LDAP
Depois de configurar o serviço LDAP seguro no Google Admin Console, você poderá usar uma destas três ferramentas simples para verificar a conectividade com esse serviço: ldapsearch, ADSI ou ldp.exe. Confira detalhes e instruções nas seções abaixo.
ldapsearch
Use o utilitário ldapsearch em uma linha de comando para fazer uma consulta LDAP básica. Quando uma consulta LDAP é executada corretamente, isso indica que tanto o cliente LDAP quanto a sessão TLS e a conexão TCP subjacentes estão funcionando conforme o esperado.
Para testar a conectividade com o ldapsearch:
- Crie uma configuração LDAP e faça o download do certificado seguindo as instruções em Adicionar clientes LDAP.
Observação:para simplificar o ambiente de teste, confirme que há pelo menos um usuário na unidade organizacional que terá acesso ao cliente LDAP.
- Faça uma consulta LDAP. Este exemplo consulta um usuário específico. Para mais detalhes, consulte OpenLDAP ldapsearch.
LDAPTLS_CERT={crt_file} LDAPTLS_KEY={key_file} ldapsearch -H ldaps://ldap.google.com:636 -b dc={domain},dc={domain} '(mail={user_email})'Substitua os marcadores da seguinte forma:
- {crt_file}: o nome do arquivo .crt
- {key_file}: o nome do arquivo .key
- {domain}: cada parte do nome de domínio. Por exemplo, "example.com" se torna "dc=example,dc=com".
- {user_email}: endereço de e-mail principal de um usuário no domínio.
Observações sobre o uso do ldapsearch
- Se nenhum valor de BindDN for fornecido, o ldapsearch usará a chave e o certificado para autorizar a pesquisa.
- Se o valor de BindDN for um nome de usuário LDAP gerado no Admin Console, o ldapsearch usará as permissões do cliente LDAP conforme configurado no Admin Console.
ldapsearch -H ldaps://ldap.google.com:636 -b dc={domain},dc={domain} -D {ldap_access_credentials_username} -W '(mail={user_email}) - Se o valor de BindDN for um endereço de e-mail ou um nome diferenciado LDAP de um usuário do Workspace, o ldapsearch usará as credenciais desse usuário para pesquisar com base nas permissões dele.
ldapsearch -H ldaps://ldap.google.com:636 -b dc={domain},dc={domain} -D {workspace_username@domain} -W '(mail={user_email})'
Usar a ferramenta ldapsearch com o stunnel
Se sua implantação exigir o stunnel, siga estas etapas:
- No Admin Console, gere credenciais de acesso para produzir o nome de usuário e a senha necessários para o ldapsearch.
- Use o comando a seguir:
ldapsearch -x -D "{username}" -w {password} -H ldap://{stunnel_host}:{stunnel_port} -b dc={domain},dc={domain} '(mail={user_email})'Substitua os marcadores da seguinte forma:
- {username}: nome de usuário das credenciais geradas no Admin Console
- Senha {password} das credenciais geradas no Admin Console
- {stunnel_host} :: o endereço IP ou o nome do host da máquina que executa o stunnel na sua rede.
- {stunnel_port} :: a porta em que o stunnel está sendo executado. Verifique a configuração do stunnel.
- {user_email}: endereço de e-mail principal de um usuário no domínio
Comando ldapsearch executado corretamente
Quando executado corretamente, o comando ldapsearch lista o usuário com o e-mail (conforme especificado ao criar o cliente LDAP) no formato LDIF.
Exemplo:
# extended LDIF
#
# LDAPv3
# base <dc=example,dc=com> with scope subtree
# filter: (objectclass=*)
# requesting: ALL
#
# example.com
dn: dc=example,dc=com
objectClass: top
objectClass: domain
objectClass: dcObject
dc: example
# admin-group, Groups, example.com
dn: cn=admin-group,ou=Groups,dc=example,dc=com
objectClass: top
objectClass: groupOfNames
objectClass: posixGroup
cn: admin-group
displayName: admin-group
description:
gidNumber: 12345
member: uid=admin,ou=Users,dc=example,dc=com
memberUid: admin
googleAdminCreated: FALSE
# example-user, Users, example.com
dn: uid=example-user,ou=Users,dc=example,dc=com
objectClass: top
objectClass: person
objectClass: organizationalPerson
objectClass: inetOrgPerson
objectClass: posixAccount
uid: example-user
googleUid: example-user
posixUid: example-user
cn: example-user
cn: FirstName LastName
sn: FirstName
displayName: FirstName LastName
givenName: FirstName
mail: example-user@example.com
uidNumber: 12345
gidNumber: 12345
homeDirectory: /home/example-user
loginShell: /bin/bash
gecos:
Possíveis erros
- O cliente e/ou a biblioteca do OpenLDAP são compilados sem SNI
O cliente LDAP (neste caso, o OpenLDAP) precisa permitir a indicação de nome de servidor (SNI, na sigla em inglês). Se o SNI não estiver disponível, você poderá ver um erro semelhante a este:SASL/EXTERNAL authentication startedldap_sasl_interactive_bind_s: Unknown authentication method (-6)additional info: SASL(-4): no mechanism available:
Recomendação:- Se você usa o MacOS, o SASL será ativado por padrão e poderá ser ignorado com a opção "-x".
- Adicione a opção
-d5ao ldapsearch e verifique se esta linha aparece no resultado:TLS certificate verification: depth: 0, err: 18, subject: /OU=No SNI provided; please fix your client.
-
O ldapsearch retorna o status 0 (sucesso), mas sem usuários
Especificar a opção-xdo ldapsearch (que usa a autenticação SASL) com certificados de cliente concluirá a autenticação, mas nenhum usuário no domínio será listado.
Recomendação:remova a opção-xe tente de novo.
ADSI Edit (Windows)
- Siga as etapas de 1 a 11 em ldp.exe (Windows) para instalar os certificados do cliente.
- Acesse Action > Connect to….
- Digite as seguintes configurações de conexão:
Nome:digite um nome para sua conexão, como LDAP do Google.
Ponto de conexão: "Selecionar ou digitar um nome distinto ou contexto de nomenclatura"
Digite seu nome de domínio no formato DN (por exemplo, dc=example,dc=com para example.com).
Computador: "Selecionar ou digitar um domínio ou servidor"
ldap.google.com
Usar criptografia baseada em SSL:marcada - Clique em Avançado... e insira os seguintes detalhes:
Especificar credenciais:marcada
Nome de usuário:o nome de usuário da credencial de acesso no Admin Console
Senha:a senha da credencial de acesso no Admin Console
Número da porta:636
Protocolo:LDAP
Autenticação de vinculação simples:marcada - Clique em OK e em OK novamente.
- Se a conectividade ocorrer, o conteúdo do diretório no DN de base será exibido no painel direito.
ldp.exe (Windows)
- Instale o OpenSSL.
- Converta os arquivos de certificado e de chave em um arquivo no formato PKCS12. Em um prompt de comando, digite o seguinte:
openssl pkcs12 -inkey ldap-client.key -in ldap-client.crt -export -out ldap-client.p12
Digite uma senha para criptografar o arquivo de saída. - Acesse o Painel de controle.
- Na caixa de pesquisa, pesquise "certificado" e clique em Gerenciar certificados do usuário.
- Acesse Ação > Todas as tarefas > Importar….
- Selecione Usuário atual e clique em Próxima.
- Clique em Procurar….
- Na lista suspensa file type, no canto inferior direito da caixa de diálogo, selecione Personal Information Exchange (*.pfx;*.p12).
- Selecione o arquivo ldap-client.p12 da etapa 2, clique em Abrir e depois em Próxima.
- Digite a senha da etapa 2 e clique em Próxima.
- Selecione o repositório de certificados Pessoal, clique em Próxima e em Concluir.
- Execute Ldp.exe.
- Acesse Connection > Connect....
- Digite os seguintes detalhes de conexão:
Server: ldap.google.com
Port: 636
Connectionless: Unchecked
SSL: Checked - Clique em OK.
- Acesse Visualizar > Árvore.
- Digite o DN de base. Esse é seu nome de domínio no formato DN. Por exemplo, dc=example,dc=com para example.com.
- Clique em OK.
- Se a conectividade ocorrer, o conteúdo do diretório no DN de base será exibido no painel direito.
Se necessário, faça um teste básico da conectividade
Se você não conseguir um resultado em Verificar a conectividade e fazer uma consulta LDAP, siga as instruções nesta seção para testar a conectividade. Se ldapsearch não retornar o usuário esperado nem mostrar uma indicação clara de que a sessão TLS subjacente foi estabelecida, use o cliente OpenSSL para confirmar que as camadas de rede usadas pelo OpenLDAP estão funcionando como esperado.
Para fazer testes básicos de conectividade:
Instale o utilitário de cliente openssl para seu sistema operacional.
A maioria das distribuições do GNU/Linux usa o nome de pacote "openssl". Confira detalhes sobre outros sistemas operacionais.
Faça uma conexão manual com o serviço LDAP seguro usando o cliente openssl:
openssl s_client -connect ldap.google.com:636Para confirmar a negociação do SSL, verifique se a seguinte linha aparece no final do resultado do openssl s_client:
Verify return code: 0 (ok)
Possíveis erros
O cliente/a biblioteca OpenSSL não permite o SNI (indicação de nome do servidor)
O teste de conectividade pode retornar este resultado:
Verify return code: 18 (self signed certificate)
O serviço LDAP seguro exige um cliente TLS que ofereça suporte e inicie uma sessão TLS usando SNI (indicação de nome de servidor). Se o cliente TLS não permitir o SNI, o servidor TLS (ldap.google.com) vai retornar um certificado autoassinado que não passará nas verificações de validação da autoridade de certificação para indicar que o SNI é necessário.
Para confirmar esse comportamento, verifique se a linha abaixo aparece no início do resultado do cliente OpenSSL:
depth=0 OU = "No SNI provided; please fix your client.", CN = invalid2.invalid
Esse erro pode ser causado por uma versão do OpenSSL que não permite o SNI ou um app que usa a biblioteca OpenSSL com o SNI explicitamente desativado.
Conexão recusada
O resultado a seguir, em que {timestamp} é um carimbo de data/hora UNIX em microssegundos, indica que a conexão TCP está sendo recusada antes do início da negociação do TLS:
{timestamp}:error:0200206F:system library:connect:Connection refused:crypto/bio/b_sock2.c:110:
{timestamp}:error:2008A067:BIO routines:BIO_connect:connect error:crypto/bio/b_sock2.c:111:connect:errno=111
Isso pode ser causado por:
- um firewall de app ou de sistema no computador local;
- um firewall na mesma rede física ou de upstream.
Se você quiser investigar, use tcptraceroute para saber qual host está recusando a conexão, por exemplo, tcptraceroute ldap.google.com 636.