Edições que podem usar este 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, opcionalmente, faça 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 permitem entender se você tem um problema de configuração, mensagens de erro comuns e recomendações sobre como corrigir esses problemas.
Este artigo contém as seguintes seções:
- Verificar a conectividade e executar uma consulta LDAP
Ao executar uma consulta LDAP, você confirma que é possível se conectar ao LDAP seguro e fazer consultas. - Se necessário, execute testes básicos de conectividade
Se a execução de uma consulta LDAP falhar, faça testes básicos de conectividade para verificar 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 a saída dos comandos. Remova todas as informações de identificação pessoal da saída antes de compartilhar 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, use uma destas três ferramentas simples para verificar a conectividade com o LDAP seguro: ldapsearch, ADSI ou ldp.exe. Veja mais detalhes e instruções nas seções abaixo.
ldapsearch
Use o utilitário ldapsearch de 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 ldapsearch:
- Crie uma configuração do LDAP e faça o download do certificado seguindo as instruções em Adicionar clientes LDAP.
Observação:para simplificar o ambiente de teste, verifique se há pelo menos um usuário na unidade organizacional em que você autoriza o acesso do 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 tornaria "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 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 distinto do LDAP de um usuário do Workspace, o ldapsearch vai 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 ldapsearch com stunnel
Se a implantação exigir o uso do 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
- {password} Senha das credenciais geradas no Admin Console
- {stunnel_host}: endereço IP ou nome do host da máquina que executa o stunnel na sua rede.
- {stunnel_port}: a porta onde o stunnel é executado. Verifique a configuração do seu stunnel.
- {user_email}: endereço de e-mail principal de um usuário no domínio
Cenário de sucesso do comando ldapsearch
Uma saída bem-sucedida do comando ldapsearch vai listar o usuário com o e-mail (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 OpenLDAP são compilados sem suporte a SNI
A SNI (indicação do nome do servidor) precisa ser compatível com o cliente LDAP (OpenLDAP neste caso). 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
-d5a ldapsearch e verifique a saída da seguinte linha:TLS certificate verification: depth: 0, err: 18, subject: /OU=No SNI provided; please fix your client.
-
O ldapsearch retorna o status 0 (sucesso), mas nenhum usuário é exibido
Especificar a opção ldapsearch-x(usar autenticação SASL) com certificados de cliente autentica com êxito, mas não lista os usuários no domínio.
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….
- Insira as seguintes configurações de conexão:
Nome:digite um nome para sua conexão, como LDAP do Google.
Ponto de conexão:selecione ou digite um nome distinto ou um contexto de nomenclatura.
Insira seu nome de domínio no formato DN (por exemplo, dc=example,dc=com para example.com).
Computador:selecione ou digite 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:
openssl pkcs12 -inkey ldap-client.key -in ldap-client.crt -export -out ldap-client.p12
Insira uma senha para criptografar o arquivo de saída. - Acesse o painel de controle.
- Na caixa de pesquisa, procure "certificado" e clique em Gerenciar certificados do usuário.
- Acesse Action > All Tasks > Import….
- Selecione Current User e clique em Next.
- Clique em Browse….
- No menu suspenso 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 em Próxima.
- Digite a senha da etapa 2 e clique em Next.
- Selecione o repositório de certificados Pessoal, clique em Próximo e em Concluir.
- Execute Ldp.exe.
- Acesse Conexão > Conectar...
- Insira os seguintes detalhes de conexão:
Servidor:ldap.google.com
Porta:636
Sem conexão:desmarcado
SSL:marcado - Clique em OK.
- Acesse View > Tree.
- 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, execute testes básicos de conectividade
Se você não conseguir um resultado positivo em Verificar a conectividade e executar uma consulta LDAP, siga as instruções desta seção para testar a conectividade. Se o ldapsearch não retornar o usuário esperado e não indicar claramente que a sessão TLS subjacente foi bem-sucedida, use o cliente OpenSSL para verificar se as camadas de rede em que o OpenLDAP se baseia estão funcionando como esperado.
Para realizar um teste de conectividade básico:
Instale o utilitário de cliente openssl para seu sistema operacional.
A maioria das distribuições do GNU/Linux usam 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)
Erros possíveis
O cliente/biblioteca OpenSSL não oferece suporte à 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 permita e inicie uma sessão TLS usando o SNI. Se o cliente TLS não oferecer suporte ao SNI, o servidor TLS (ldap.google.com) vai retornar um certificado autoassinado que não passará nas verificações de validação da CA 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
Se a saída a seguir for retornada, em que {timestamp} é um carimbo de data/hora UNIX em microssegundos, a conexão TCP será recusada ativamente antes que a negociação TLS possa começar:
{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 rede de upstream.
Se você quiser investigar, use tcptraceroute para saber qual host está recusando a conexão, por exemplo, tcptraceroute ldap.google.com 636.