4. Conectar clientes LDAP ao serviço LDAP seguro

Siga as instruções neste artigo para conectar seu cliente LDAP ao serviço LDAP seguro.

Importante:

  • Leia a documentação do fornecedor
    Os detalhes neste artigo sobre como conectar seu cliente LDAP ao serviço LDAP seguro são apenas para referência e estão sujeitos a alterações. Além destas instruções de ajuda, leia a documentação do fornecedor para ver as etapas mais atualizadas para conectar seu cliente ao serviço LDAP seguro.
  • Antes de começar
    Antes de usar estas instruções, verifique se você já adicionou o cliente ao serviço LDAP seguro, configurou as permissões de acesso, fez o download de um certificado do cliente e uma chave e, se quiser, criou credenciais de acesso.
  • Teste de conectividade
    Antes de começar, você pode fazer um teste de conexão rápido usando ferramentas simples, como ldapsearch, ADSI e ldp.exe. Também é possível usar essas ferramentas para solucionar problemas se você encontrar erros ao tentar conectar o cliente LDAP ao serviço. Veja as instruções em Teste de conectividade do LDAP seguro.
  • Como concluir as etapas de configuração
    Depois de conectar o cliente LDAP seguindo as instruções nesta página, você precisará concluir a configuração do cliente LDAP mudando o status do serviço para Ativado no Google Admin Console. Para instruções, consulte 5. Mude os clientes LDAP para Ativado.

O que está incluído neste artigo

Este artigo inclui estas seções:

Estas instruções presumem que os arquivos de chave e certificado do cliente que você baixar se chamam ldap-client.key e ldap-client.crt.

Instruções de configuração básica

Esta seção inclui instruções genéricas para conectar seu cliente LDAP ao serviço LDAP seguro. Se o cliente LDAP não estiver listado nas instruções abaixo, consulte a documentação do aplicativo.

Observação:alguns clientes LDAP, como o Atlassian Jira e o SSSD, realizam uma pesquisa de usuário para receber mais informações sobre um usuário durante a autenticação. Para garantir que a autenticação do usuário funcione corretamente para esses clientes LDAP, você precisará ativar a opção Ler informações do usuário em todas as unidades organizacionais em que a opção Verificar credenciais do usuário está ativada. Para instruções, consulte Configurar permissões de acesso.

Para conectar o cliente LDAP ao serviço LDAP seguro:

  1. Configure seu cliente LDAP com o Cloud Directory como o servidor LDAP.
  2. Faça o upload do certificado para seu cliente LDAP.

    O serviço LDAP seguro usa certificados de cliente TLS como o principal mecanismo de autenticação. Para iniciar o processo de upload do certificado para o cliente LDAP, abra as configurações de autenticação ou diretório do cliente LDAP e insira os detalhes da tabela abaixo.

    Observação:para saber como e onde fazer upload de certificados TLS, consulte a documentação do fornecedor.

Veja abaixo a tabela com as informações básicas de conexão:

Nome do host

ldap.google.com

Portas

389 para LDAP com StartTLS ativado
636 para LDAPS (com SSL/TLS ativado)

Base DN

Seu domínio no formato DN. Exemplo:

dc=example,dc=com para example.com

Nome de usuário e senha

Além da autenticação com certificado, alguns clientes LDAP exigem que você digite um nome de usuário e uma senha. Se os campos de nome de usuário e senha não forem obrigatórios, você pode pular esta etapa.

Gere um nome de usuário e uma senha no Google Admin Console. Veja mais instruções em Gerar credenciais de acesso.

Certificado do cliente e arquivos de chave

Use os arquivos de certificado e de chave armazenados no Google Admin Console e que você copiou localmente. Se o cliente LDAP não oferecer uma forma de autenticação com um certificado do cliente, consulte Usar o stunnel como proxy.

IMPORTANTE:alguns clientes LDAP, como o Apache Directory Studio, não aceitam o upload de certificados digitais. Veja como resolver esse problema em Usar o stunnel como um proxy.

Instruções de configuração para clientes LDAP específicos

ADSI Edit (Windows)

Siga estas etapas:

  1. Siga as etapas de 1 a 11 em ldp.exe (Windows) para instalar os certificados do cliente.
  2. Acesse Action > Connect to….
  3. Insira as seguintes configurações de conexão:

    Nome:digite um nome para a conexão, como LDAP do Google.
    Ponto de conexão: "Selecione ou digite um nome distinto ou contexto de nomenclatura"
    Digite o 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
  4. Clique em Avançado... e digite os seguintes detalhes:

    Especificar credenciais:marcado
    Nome de usuário:o nome de usuário da credencial de acesso do Admin Console
    Senha:a senha da credencial de acesso do Admin Console
    Número da porta:636
    Protocolo:LDAP
    Autenticação de vinculação simples:marcado
  5. Clique em OK e em OK novamente.
  6. Se a conectividade ocorrer, o conteúdo do Active Directory no DN de base será exibido no painel direito.

Apache Directory Studio

Para usar o Apache Directory Studio, faça a conexão pelo stunnel e use uma credencial de acesso (nome de usuário e senha) gerada no Admin Console. Supondo que as credenciais estejam em vigor e que o stunnel esteja detectando na porta 1389 do localhost, siga estas etapas:

  1. Clique em File > New….
  2. Selecione LDAP Browser > LDAP Connection.
  3. Clique em Próxima.
  4. Digite os parâmetros de conexão:

    Nome da conexão:escolha um nome, como LDAP do Google
    Nome do host:localhost
    Porta:1389 (ou a porta de detecção/aceitação do stunnel)
    Método de criptografia:sem criptografia (observação: se o stunnel estiver sendo executado remotamente, recomendamos a criptografia entre o stunnel e o cliente).
  5. Clique em Próxima.
  6. Insira os parâmetros de autenticação:

    Método de autenticação:autenticação simples
    Vincular DN ou usuário:o nome de usuário da credencial de acesso do Admin Console
    Vincular senha:a senha da credencial de acesso do Admin Console
  7. Clique em Próxima.
  8. Digite o DN de base.
    Este é o nome de domínio no formato DN (dc=example,dc=com para example.com).
  9. Clique em Finish.

Atlassian Jira

O Atlassian Jira faz uma pesquisa para receber mais informações sobre um usuário durante a autenticação. Para garantir que a autenticação do usuário funcione corretamente para esse cliente LDAP, ative as opções Ler informações do usuário e Ler informações do grupo em todas as unidades organizacionais em que a opção Verificar credenciais do usuário está ativada. Veja mais instruções em Configurar as permissões de acesso.

Importante: as instruções a seguir talvez exponham o valor de "keystorePassword" aos usuários e aos arquivos de registros. Tome precauções para evitar o acesso não autorizado ao shell local, ao arquivo de registro e ao Google Admin Console. Como alternativa às instruções a seguir, use o método stunnel4 (consulte Opcional: usar o stunnel como proxy).

Observação:as instruções a seguir pressupõem que o Jira está instalado em /opt/atlassian/jira.

Para conectar um cliente do Atlassian Jira ao serviço LDAP seguro:

  1. Copie o certificado e a chave para seus servidores Jira. Esse é o certificado gerado no Google Admin Console ao adicionar o cliente LDAP ao serviço LDAP seguro.

    Por exemplo:
    $ scp ldap-client.key user@jira-server:
  2. Converta o certificado e as chaves no formato Java KeyStore. Você precisará digitar senhas durante esse processo. Para simplificar, escolha uma senha segura e use-a em todas as etapas.

    $ 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

  3. Configure o Jira para usar o arquivo KeyStore que você criou. Siga as instruções aqui para adicionar opções:

    "-Djavax.net.ssl.keyStore=/opt/atlassian/jira/jira-ldap.jks -Djavax.net.ssl.keyStorePassword=password"

    No Linux:
    1. Edite /opt/atlassian/jira/bin/setenv.sh.
    2. Encontre a configuração JVM_SUPPORT_RECOMMENDED_ARGS.
    3. Adicione "-Djavax.net.ssl.keyStore=/opt/atlassian/jira/jira-ldap.jks -Djavax.net.ssl.keyStorePassword=password", substituindo "password" pela senha que você selecionou acima.
  4. Reinicie o Jira.

    $ /opt/atlassian/jira/bin/stop-jira.sh
    $ /opt/atlassian/jira/bin/start-jira.sh

  5. Faça login na interface da Web do Jira como administrador.
    1. Acesse Configurações > Gerenciamento de usuários. Para acessar as configurações, clique no ícone de engrenagem no canto superior direito.
    2. Clique em User Directories.
    3. Clique em Adicionar diretório.
    4. Escolha LDAP como o tipo.
    5. Clique em Próxima.
  6. Digite o seguinte:

    Nome

    LDAP seguro do Google

    Directory type

    OpenLDAP

    Nome do host

    ldap.google.com

    Port

    636

    Use SSL

    Marcado

    Nome de usuário

    Gere um nome de usuário e uma senha no Google Admin Console. Veja mais instruções em Gerar credenciais de acesso.

    Senha

    Gere um nome de usuário e uma senha no Google Admin Console. Veja mais instruções em Gerar credenciais de acesso.

    Base DN

    Seu nome de domínio no formato DN (por exemplo, dc=example,dc=com para example.com)

    Additional User DN

    Opcional. "ou=Users"

    Additional Group DN

    Opcional. "ou=Groups"

    LDAP Permissions

    Somente leitura

    Configurações avançadas

    Não alterado

    Configurações do esquema do usuário >
    Atributo do nome de usuário

    googleUid

    Configurações do esquema do usuário >
    Atributo RDN do nome de usuário

    uid

    Group Schema Settings >
    Group Object Class

    groupOfNames

    Group Schema Settings >
    Group Object Filter

    (objectClass=groupOfNames)

    Membership Schema Settings >
    Group Members Attribute

    membro

    Membership Schema Settings >
    Use the User Membership Attribute

    Marcado
  7. Atribua uma função a um grupo.

    Antes que o Atlassian Jira permita que um usuário faça login, ele precisa ser membro de um grupo com acesso ao Jira.

    Para conceder uma função a um grupo:
    1. Acesse Settings > Applications > Application access.
    2. Na caixa de texto Selecionar grupo, digite o nome do Grupo do Google que você quer que tenha acesso ao Jira.

CloudBees Core / Jenkins

Veja instruções sobre como conectar o CloudBees Core ao serviço LDAP seguro em Conectar o CloudBees Core ao Google Cloud Identity / Google Cloud Directory usando o LDAP seguro (em inglês).

FreeRadius

Siga estas etapas:

  1. Instale e configure o FreeRADIUS em /etc/freeradius/3.0/.

    Depois que o FreeRADIUS for instalado, você poderá instalar o plug-in freeradius-ldap para adicionar a configuração do LDAP.

    $ sudo apt-get install freeradius freeradius-ldap
  2. Copie os arquivos de chave e certificado do cliente LDAP para /etc/freeradius/3.0/certs/ldap-client.key e /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.*

  3. Ative o módulo LDAP.

    $ cd /etc/freeradius/3.0/mods-enabled/
    $ ln -s ../mods-available/ldap ldap

  4. Edite /etc/freeradius/3.0/mods-available/ldap.
    1. ldap->server = 'ldaps://ldap.google.com:636'
    2. identity = nome de usuário nas credenciais do app
    3. password = senha nas credenciais do app
    4. base_dn = 'dc=domain,dc=com'
    5. tls->start_tls = no
    6. tls->certificate_file = /etc/freeradius/3.0/certs/ldap-client.cer
    7. tls->private_key_file = /etc/freeradius/3.0/certs/ldap-client.key
    8. tls->require_cert = 'allow'
    9. Adicione um comentário a todos os campos da localização atual que representam a seção "ldap -> post-auth -> update".
  5. Edite /etc/freeradius/3.0/sites-available/default.
    Isso modifica a conexão do cliente FreeRadius. Se você não estiver usando o cliente padrão, atualize o cliente relevante (túnel interno ou qualquer cliente personalizado) que você configurou.
    1. Modifique a seção authorize para adicionar o seguinte bloco na parte de baixo, depois da instrução do protocolo de autenticação de senha (PAP):

      if (User-Password) {
      update control {
      Auth-Type := ldap
      }
      }

    2. Na seção authorize, ative o LDAP removendo o sinal "-" antes dele.

      #
      # O módulo ldap lê senhas do banco de dados LDAP.
      ldap
    3. Modifique a seção authenticate editando o bloco Auth-Type LDAP da seguinte maneira:

      # Auth-Type LDAP {
      ldap
      # }

    4. Modifique a seção authenticate editando o bloco Auth-Type PAP da seguinte maneira:

      Auth-Type PAP {
      # pap
      ldap
      }

GitLab

Veja instruções sobre como conectar o GitLab ao serviço LDAP seguro em Configurar o LDAP seguro do Google para GitLab (em inglês).

Itopia/Ubuntu

Veja instruções sobre como conectar o Itopia/Ubuntu ao serviço LDAP seguro em Configurar o LDAP do Google Cloud Identity no Ubuntu 16.04 para logins de usuário (em inglês).

Ivanti / LanDesk

Siga estas etapas:

  1. No servidor da Web do Ivanti, abra OpenLDAPAuthenticationConfiguration.xml ou OpenLDAPSSLAuthenticationConfiguration.xml em um editor de texto nas duas pastas a seguir:

    C:\ProgramData\LANDesk\ServiceDesk\servicedesk.Framework e C:\ProgramData\LANDesk\ServiceDesk\servicedesk.WebAccess (em que servicedesk é o nome da instância)
  2. Atualize o valor <Server> para ldap.google.com.
  3. Atualize o valor de <Port> para a porta 3268 para texto simples com StartTLS ativado e para 3269 para a porta SSL/TLS (os padrões são 389 para a porta de texto simples ou 636 para a porta SSL/TLS).
  4. Defina o valor <TestDN> como seu nome de domínio no formato DN. Por exemplo, dc=example,dc=com para example.com.
  5. Em ..ProgramData\LANDesk\ServiceDesk\ServiceDesk.Framework\tps.config e ..ProgramData\LANDesk\ServiceDesk\WebAccess\tps.config, adicione a linha:

    <add key="AuthenticationProvider" value="Touchpaper.Integrations.OpenLDAPLogon.OpenLDAPAuthenticationProvider" />

    ou a linha:

    <add key="AuthenticationProvider" value="Touchpaper.Integrations.OpenLDAPSSLLogon.OpenLDAPSSLAuthenticationProvider" />
  6. No Ivanti Configuration Center, abra a instância necessária.
  7. Ao lado do app Service Desk Framework, clique em Edit.
    A caixa de diálogo Edit Application do Service Desk Framework é exibida.
  8. No grupo Configuration parameters, selecione Explicit only na lista Logon policy e depois clique em OK.
  9. Ao lado do aplicativo Web Access, clique em Editar.
    A caixa de diálogo Edit Application do Web Access é exibida.
  10. No grupo Parâmetros de configuração, selecione Somente explícito na lista Política de login e clique em OK.

Ao fazer login, use a senha de rede do usuário do domínio associado.

Registro de exceções para autenticação do servidor LDAP

Se você estiver com problemas para configurar a autenticação do servidor LDAP, ative o registro de exceções para identificar o problema. Por padrão, esse recurso fica desativado. Recomendamos que você desative-o novamente quando tiver concluído suas investigações.

Para ativar o registro de exceções para a autenticação do servidor LDAP:

  1. Abra o arquivo XML de configuração de autenticação adequado em um editor de texto:

    DirectoryServiceAuthenticationConfiguration.xml, OpenLDAPAuthenticationConfiguration.xml ou OpenLDAPSSLAuthenticationConfiguration.xml
  2. Mude a linha:

    <ShowExceptions>false</ShowExceptions>
    para
    <ShowExceptions>true</ShowExceptions>
  3. Salve as alterações.

Ldp.exe (Windows)

Siga estas etapas:

  1. Converta os arquivos de certificado e de chave em um arquivo no formato PKCS12. Em um prompt de comando, digite o seguinte:

    Se você estiver no macOS ou no Linux, use os seguintes comandos:

    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.

    Se você estiver no Windows, use os seguintes comandos:

    $ certutil -mergepfx ldap-client.crt ldap-client.p12

    Importante:os dois arquivos (<CERT_FILE>.crt e <CERT_FILE>.key) precisam estar no mesmo diretório. Além disso, verifique se key e crt têm o mesmo nome (com uma extensão diferente). Neste exemplo, usamos os nomes ldap-client.crt e ldap-client.key.

  2. Acesse o painel de controle.
  3. Na caixa de pesquisa, digite "certificado" e clique em Gerenciar certificados de usuário.
  4. Acesse Action > All Tasks > Import….
  5. Selecione Current User e clique em Next.
  6. Clique em Browse….
  7. No menu suspenso tipo de arquivo, no canto inferior direito da caixa de diálogo, selecione Personal Information Exchange (*.pfx;*.p12).
  8. Selecione o arquivo ldap-client.p12 da etapa 2, clique em Abrir e em Próxima.
  9. Digite a senha da etapa 2 e clique em Next.
  10. Selecione o repositório de certificados Pessoal, clique em Avançar e em Concluir.
  11. Execute Ldp.exe.
  12. Acesse Conexão > Conectar...
  13. Digite os seguintes detalhes de conexão:

    Servidor:ldap.google.com
    Porta:636
    Sem conexão:desmarcado
    SSL:marcado
  14. Clique em OK.
  15. Acesse View > Tree.
  16. Digite o DN de base. Esse é seu nome de domínio no formato DN (por exemplo, dc=example,dc=com para example.com).
  17. Clique em OK.
  18. Se a conectividade for bem-sucedida, o LDP.exe vai mostrar o conteúdo do Active Directory, como todos os atributos presentes no DN de base, no painel à direita.

Netgate / pfSense

Veja instruções sobre como conectar o Netgate/pfSense ao serviço LDAP seguro em Configurar o Google Cloud Identity como uma fonte de autenticação (em inglês).

OpenLDAP / ldapsearch (Linux)

Para acessar seu diretório LDAP na linha de comando, você pode usar o comando OpenLDAP ldapsearch.

Supondo que os arquivos de certificado e chave do cliente sejam ldap-client.crt e ldap-client.key, seu domínio seja example.com e o nome de usuário seja jsmith:

$ LDAPTLS_CERT=ldap-client.crt LDAPTLS_KEY=ldap-client.key ldapsearch -H ldaps://ldap.google.com -b dc=example,dc=com '(uid=jsmith)'

Isso define as variáveis de ambiente relevantes para apontar para as chaves do cliente. Você pode substituir as outras opções de ldapsearch pelos filtros que quiser, pelos atributos solicitados etc. Para mais detalhes, consulte as páginas de manual do ldapsearch ("man ldapsearch").

ldapsearch (macOS)

Siga estas etapas:

  1. 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 sua senha para criptografar o arquivo de saída.
  2. Clique em no canto superior direito da barra de menus e digite Acesso às Chaves.
  3. Abra o aplicativo Acesso às Chaves e, na lista à esquerda, clique em Sistema.
  4. Clique na opção Arquivo na barra de menus no canto superior esquerdo e selecione Importar itens.
  5. Navegue até o local com o ldap-client.p12 gerado, selecione ldap-client.p12 e clique em Abrir.
    Se for solicitado, digite sua senha.
    Um certificado com o nome LDAP Client vai aparecer na lista de certificados do sistema de chaves.
  6. Clique na seta ao lado do certificado do cliente LDAP. Uma chave privada aparece abaixo.
    1. Clique duas vezes na chave privada.
    2. Na caixa de diálogo, selecione a guia Controle de acesso e clique em + no canto inferior esquerdo.
    3. Na janela que se abre, digite Command+Shift+G para abrir uma nova janela e substitua o texto atual por /usr/bin/ldapsearch.

    4. Clique em Go.

      Isso abre uma janela com "ldapsearch" em destaque.

    5. Clique em Adicionar.

    6. Clique em Salvar alterações e digite sua senha, se solicitado.

      Agora você está pronto para acessar o diretório LDAP na linha de comando usando o comando OpenLDAP ldapsearch.

  7. Supondo que o arquivo ldap-client.p12 que você importou para as chaves anteriormente tenha o nome LDAP Client, seu domínio seja example.com e o nome de usuário seja jsmith, digite o seguinte:

    $ LDAPTLS_IDENTITY="LDAP Client" ldapsearch -H ldaps://ldap.google.com:636 -b dc=example,dc=com '(uid=jsmith)'

As variáveis de ambiente relevantes apontarão para o certificado de cliente importado. Você pode substituir as outras opções de ldapsearch pelos filtros que quiser, pelos atributos solicitados etc. Veja mais detalhes nas páginas do ldapsearch man (man ldapsearch).

OpenVPN (versão da comunidade)

Siga estas etapas:

  1. Se necessário, instale e configure o OpenVPN. Se você já tiver feito isso, abra a página de configurações no OpenVPN.

    As configurações gerais da VPN (rede privada virtual) não estão incluídas neste artigo de ajuda. Quando uma VPN é configurada de outra forma, você pode adicionar autenticação e autorização de usuários via LDAP. Em particular, você precisará instalar o plug-in openvpn-auth-ldap.

    $ sudo apt-get install openvpn openvpn-auth-ldap
  2. Copie os arquivos de chave e certificado do cliente LDAP para /etc/openvpn/ldap-client.key e /etc/openvpn/ldap-client.crt.
  3. Crie um arquivo, /etc/openvpn/auth-ldap.conf, com o seguinte conteúdo (supondo que example.com seja o nome de domínio):

    <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>

  4. Edite o arquivo de configuração do OpenVPN, que costuma ter o nome /etc/openvpn/server.conf ou algo parecido. Na parte de baixo do arquivo, adicione o seguinte:

    plugin /usr/lib/openvpn/openvpn-auth-ldap.so /etc/openvpn/auth-ldap.conf
    verify-client-cert optional

  5. Reinicie o servidor OpenVPN.

    $ sudo systemctl restart openvpn@server
  6. Configurar os clientes de VPN para usar os nomes de usuário e as senhas dos usuários. Por exemplo, em uma configuração de cliente OpenVPN, adicione auth-user-pass ao final do arquivo de configuração do cliente OpenVPN e inicie o cliente OpenVPN:

    $ openvpn --config /path/to/client.conf
  7. Siga as instruções para usar o stunnel como proxy.

Servidor de acesso OpenVPN (versão comercial)

Veja instruções sobre como conectar o OpenVPN Access Server ao serviço LDAP seguro em Configurar o LDAP seguro do Google com o OpenVPN Access Server (em inglês).

PaperCut MF e NG

Veja instruções sobre como conectar o PaperCut ao serviço LDAP seguro em Como sincronizar e autenticar usuários do Google Workspace e do Google Cloud Identity no PaperCut (em inglês).

Puppet Enteprise

Veja instruções sobre como conectar o Puppet Enterprise ao serviço LDAP seguro em Google Cloud Directory para o Puppet Enterprise (em inglês).

Softerra LDAP Browser

Importante:antes de começar, verifique se você instalou o Softerra LDAP Browser com o número de versão 4.5 (4.5.19808.0) ou mais recente. Consulte LDAP Browser 4.5.

Siga estas etapas:

  1. Converta os arquivos de certificado e de chave em um arquivo no formato PKCS12. Em um prompt de comando, digite o seguinte:

    Se você estiver no macOS ou no Linux, use os seguintes comandos:

    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.

    Se você estiver no Windows, use os seguintes comandos:

    $ certutil -mergepfx ldap-client.crt ldap-client.p12

    Importante:os dois arquivos (<CERT_FILE>.crt e <CERT_FILE>.key) precisam estar no mesmo diretório. Além disso, verifique se key e crt têm o mesmo nome (com uma extensão diferente). Neste exemplo, usamos os nomes ldap-client.crt e ldap-client.key.

  2. No Softerra LDAP Browser, instale o par de chaves.
    1. Acesse Tools > Certificate Manager.
    2. Clique em Import….
    3. Clique em Próxima.
    4. Clique em Browse….
    5. Na lista suspensa Tipo de arquivo, no canto inferior direito da caixa de diálogo, selecione Personal Information Exchange (*.pfx;*.p12).
    6. Selecione o arquivo ldap-client.p12 da etapa 2 acima.
    7. Clique em Open e depois em Next.
    8. Digite a senha da etapa 2 acima e clique em Next.
    9. Selecione o repositório de certificados Pessoal.
    10. Clique em Próxima.
    11. Clique em Finish.
  3. Adicione um perfil de servidor.
    1. Acesse File > New > New Profile….
    2. Digite um nome para o perfil, como Google LDAP.
    3. Clique em Próxima.

      Digite o seguinte:

      Host:ldap.google.com
      Porta
      :636
      DN de base:o nome do seu domínio no formato DN. Por exemplo, dc=example,dc=com para example.com)
      Use secure connection (SSL): marcado
    4. Clique em Próxima.
    5. Selecione Externo (certificado SSL).
    6. Clique em Próxima.
    7. Clique em Finish.

Sophos Mobile

Veja instruções sobre como conectar o Sophos Mobile ao serviço LDAP seguro em Conectar o Sophos Mobile ao Google Cloud Identity / Google Cloud Directory usando o LDAP seguro (em inglês).

Splunk

Ao conectar o Splunk ao serviço LDAP seguro, use a versão 8.1.4 ou mais recente do Splunk. Ao usar versões mais antigas do Splunk, como a 8.1.3, consultas LDAP excessivas podem ser enviadas ao servidor LDAP, o que pode resultar no esgotamento rápido da sua cota LDAP. Para mais informações sobre problemas da versão 8.1.3 do Splunk, consulte Problemas conhecidos do Splunk.

Siga estas etapas:

  1. Copie os arquivos de chave e de certificado do cliente LDAP para /home/splunk/splunkadmin/etc/openldap/certs/ldap-client.key e /home/splunkadmin/splunk/etc/openldap/certs/ldap-client.cert.

    $ 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.*

  2. Edite o arquivo ldap.conf para adicionar as seguintes configurações:

    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

  3. Adicione as seguintes configurações no arquivo /home/splunkadmin/.ldaprc do usuário:

    TLS_CERT /home/splunkadmin/splunk/etc/openldap/certs/ldap-client.pem
    TLS_KEY /home/splunkadmin/splunk/etc/openldap/certs/ldap-client.pem

  4. Adicione a estratégia LDAP usando a interface da Web do Splunk. Insira os seguintes detalhes e clique em Salvar:

Nome

LDAP seguro do Google

Host

ldap.google.com

Port

636

SSL ativado

Marcado

Pedido de conexão

1

DN de vinculação

Digite as credenciais de acesso que você gerou no Google Admin Console.

Senha do DN de vinculação

Digite as credenciais de acesso que você gerou no Google Admin Console.

Base DN

O nome de domínio no formato DN (por exemplo, dc=example,dc=com para o domínio example.com)

Filtro de base de usuários

Digite o filtro de base de usuários da classe de objeto que você quer usar para filtrar seus usuários.

Atributo de nome de usuário

uid

Atributo de nome real

displayname

Atributo de e-mail

mail

Atributo de mapeamento de grupo

dn

DN de base do grupo

Seu nome de domínio no formato DN (por exemplo, ou=Groups,dc=example,dc=com para o domínio example.com)

Filtro de pesquisa de grupo estático

Digite o filtro da pesquisa de grupo estático referente à classe de objeto que você quer usar para filtrar grupos estáticos.

Atributo de nome do grupo

cn

Atributo de membro estático

participante

SSSD (Red Hat Enterprise e CentOS)

O SSSD pesquisa um usuário para ter mais informações sobre ele durante a autenticação. Para garantir que a autenticação do usuário funcione corretamente para esse cliente LDAP, ative as opções Ler informações do usuário e Ler informações do grupo em todas as unidades organizacionais em que a opção Verificar credenciais do usuário está ativada. Veja mais instruções em Configurar as permissões de acesso.

Para conectar um cliente SSSD no Red Hat 8 ou CentOS 8 ao serviço LDAP seguro:

  1. Adicione o cliente SSSD ao serviço LDAP seguro:
    1. No Google Admin Console, acesse Apps > LDAP > ADICIONAR CLIENTE.
      Faça login com sua conta corporativa e não sua conta pessoal do Gmail.
    2. Digite os detalhes do cliente e clique em CONTINUAR.
    3. Configure Permissões de acesso:
      "Verificar as credenciais do usuário": "Domínio inteiro"
      "Ler as informações dos usuários": "Domínio inteiro"
      "Ler as informações dos grupos": ativado
    4. Clique em ADICIONAR CLIENTE LDAP.
    5. Faça o download do certificado gerado.
    6. Clique em CONTINUAR PARA DETALHES DO CLIENTE.
    7. Altere o status do serviço para ATIVADO.
  2. Instale as dependências:

    dnf install openldap-clients sssd-ldap
    install -d --mode=700 --owner=sssd --group=root /etc/sssd/ldap


    Descompacte o arquivo ZIP do certificado e copie os arquivos .crt e .key para /etc/sssd/ldap
  3. (Opcional) Teste com o ldapsearch:

    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


    Digite a senha do Google do usuário quando solicitado.

    Observação: o usuário precisa ter uma licença do Google Workspace Enterprise ou do Cloud Identity Premium atribuída a ele.

  4. Crie o arquivo /etc/sssd/sssd.conf com o seguinte conteúdo:

    [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

  5. Atualize as permissões e os rótulos do SELinux:

    chown 0:0 /etc/sssd/sssd.conf /etc/sssd/ldap/*
    chmod 600 /etc/sssd/sssd.conf /etc/sssd/ldap/*
    restorecon -FRv /etc/sssd

  6. Reinicie o SSSD:

    systemctl restart sssd
  7. Teste:

    ssh para servidor:

    ssh -l user@example.com {HOSTNAME}

Solução de problemas

  1. Verifique a versão do SSSD (precisa ser maior ou igual a 1.15.2):

    # sssd --version
    2.2.3

  2. No RHEL/CentOS (ou qualquer distribuição com aplicação do SELinux), os arquivos de configuração do SSSD e o arquivo e a chave do certificado precisam estar em um diretório acessível para a função sssd_conf_t:

    # egrep "object_r:sssd_conf_t" /etc/selinux/targeted/contexts/files/file_contexts

    Verifique se há mensagens de negação AVC em /var/log/audit/audit.log.

  3. Verifique se /etc/nsswitch.conf tem "sss" para as entidades passwd, shadow, group e netgroup:

    passwd: files sss
    shadow: files sss
    group: files sss
    netgroup: files sss


    Aqui, os arquivos locais vão substituir os usuários do LDAP.
  4. Verifique se há erros de configuração em /var/log/sssd.conf:

    Exemplo:
    [sssd] [sss_ini_add_snippets] (0x0020): Config merge error: File /etc/sssd/sssd.conf did not pass access check. Skipping.

    Ação: use o comando chmod 600 no arquivo .conf.

    Exemplo:
    [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}'. Check for typos.

    [sssd] [sss_ini_call_validators] (0x0020): [rule/allowed_domain_options]: Attribute 'ldap_initgroups_use_matching_rule_in_chain' is not allowed in section 'domain/{DOMAIN}'. Check for typos.

    Ação: remova as extensões LDAP da correspondência de grupo incompatível de sssd.conf.

  5. Verifique se há erros LDAP/network/auth em /var/log/sssd_{DOMAIN}.log.

    Exemplo:

    [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)]

    Ação: adicione "ldap_tls_reqcert = never" a sssd.conf.

    Para aumentar o nível de detalhes dos erros, adicione "debug_level = 9" a sssd.conf na seção "domain" e reinicie o SSSD.

SSSD (outras distribuições do Linux)

O SSSD pesquisa um usuário para ter mais informações sobre ele durante a autenticação. Para garantir que a autenticação do usuário funcione corretamente para esse cliente LDAP, ative as opções Ler informações do usuário e Ler informações do grupo em todas as unidades organizacionais em que a opção Verificar credenciais do usuário está ativada. Veja mais instruções em Configurar as permissões de acesso.

Para conectar um cliente SSSD ao serviço LDAP seguro:

  1. Instale a versão do SSSD >= 1.15.2.

    $ sudo apt-get install sssd
  2. Supondo que os arquivos de certificado e chave do cliente sejam chamados de /var/ldap-client.crt e /var/ldap-client.key e que seu domínio seja example.com, edite /etc/sssd/sssd.conf com uma configuração como:


    [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

  3. Mude a propriedade e a permissão do arquivo de configuração:

    $ sudo chown root:root /etc/sssd/sssd.conf
    $ sudo chmod 600 /etc/sssd/sssd.conf

  4. Reinicie o SSSD:

    $ sudo service sssd restart

Dica:se você estiver usando o módulo SSSD em computadores Linux sem endereços IP externos no Google Compute Engine, ainda poderá se conectar ao serviço LDAP seguro, desde que tenha o acesso interno aos serviços do Google ativado. Para mais detalhes, consulte Como configurar o Acesso privado do Google.

macOS

Siga as etapas abaixo para conectar o cliente macOS para autenticação da conta de usuário com o serviço LDAP seguro.

Requisitos do sistema

  • A versão do macOS precisa ser 10.15.4 (Catalina) ou mais recente.
  • Um ID do usuário de superadministrador do Google é necessário para concluir a etapa 1 na fase de preparação.
  • Você precisa ter permissões de administrador local para concluir a configuração.

Conteúdo:

Fase de preparação

As instruções nesta seção mostram como configurar e testar manualmente a autenticação do macOS usando o serviço LDAP seguro.

Etapa 1: integrar o macOS como um cliente LDAP no Google Admin Console

Veja as instruções em Adicionar clientes LDAP ou assista a esta demonstração do LDAP seguro. Você também vai baixar um certificado de cliente TLS gerado automaticamente durante esse processo.

Etapa 2: importar o certificado para as chaves do sistema

  1. Copie o certificado (o arquivo ZIP transferido por download na etapa 1) e a chave para o computador macOS.
    Dica:descompacte o arquivo para encontrar os arquivos de certificado e chave.
  2. Importe o par de chaves para o conjunto de chaves do sistema:
    1. Converta a chave e o certificado em um arquivo PKCS 12 (.p12). Execute o seguinte comando no terminal:

      openssl pkcs12 -export -out ldap-client.p12 -in ldap-client.crt -inkey ldap-client.key

      Dica:anote o nome do arquivo .p12.

      O sistema solicitará que você digite uma senha para criptografar o arquivo .p12.

    2. Abra o aplicativo Acesso às Chaves.

    3. Clique nas chaves do Sistema.

    4. Clique em Arquivo > Importar Itens.

    5. Selecione o arquivo ldap-client.p12 criado acima.

    6. Se solicitado, digite a senha do administrador para permitir a modificação do conjunto de chaves do sistema.

    7. Digite a senha criada acima para descriptografar o arquivo .p12.

      Observação:um novo certificado e a chave privada associada vão aparecer na lista de chaves. O nome talvez seja LDAP Client. Anote o nome do certificado para a próxima etapa abaixo.
    8. Siga a etapa 6 na seção ldapsearch (macOS) deste artigo para configurar o controle de acesso da chave privada e adicionar os apps especificados abaixo. Se a chave privada não aparecer na categoria Todos os itens, mude para a categoria Meus certificados e localize a entrada correta da chave privada expandindo o certificado correspondente.

      O app ldapsearch, conforme especificado nas instruções, é relevante apenas se for necessário resolver problemas, e não para outros fins. Normalmente, ele é removido antes de os usuários terem acesso ao macOS.

      Os três apps a seguir precisam ser adicionados à lista de controle de acesso:

      /System/Library/CoreServices/Applications/Directory Utility
      /usr/libexec/opendirectoryd
      /usr/bin/dscl
  3. Adicione uma linha ao arquivo /etc/openldap/ldap.conf, garantindo que "LDAP Client" seja exatamente o mesmo nome de certificado mostrado no aplicativo Acesso às Chaves do macOS após a importação do arquivo .p12 (o nome vem do nome comum do assunto X.509 do certificado gerado):

    sudo bash -c 'echo -e "TLS_IDENTITY\tLDAP Client" >> /etc/openldap/ldap.conf'

Etapa 3: apontar o dispositivo para o diretório do Google para autenticação

Abra o aplicativo Utilitário de Diretório para criar um novo nó de diretório LDAP:

  1. Clique no cadeado para fazer alterações e digite sua senha.
  2. Selecione LDAPv3 e clique no ícone de lápis para editar as configurações.
  3. Clique em New….
  4. No nome do servidor, digite ldap.google.com, selecione Criptografar usando SSL e clique em Manual.
  5. Selecione o novo nome do servidor e clique em Editar….
  6. Digite um nome descritivo, como LDAP seguro do Google, para o nome da configuração.
  7. Selecione Criptografar usando SSL e verifique se a porta está definida como 636.
  8. Acesse a guia Busca e Mapeamentos.
    1. Escolha RFC2307 na lista suspensa Acessar este servidor LDAPv3 usando.
    2. Quando solicitado, digite as informações relacionadas ao domínio em Sufixo da Base de Busca. Por exemplo, digite dc=zomato,dc=com para um nome de domínio de zomato.com.
    3. Clique em OK.
    4. Configure os atributos no tipo de registro Usuários:
      1. Na seção Tipos de registro e atributos, selecione Usuários e clique no botão +.
      2. Na janela pop-up, escolha Tipos de atributo, selecione GeneratedUID e clique em OK para fechar a janela.

        GeneratedUID vai aparecer em "Users" depois que essa opção for expandida.
      3. Clique em GeneratedUID e no ícone "+" na caixa à direita.
      4. Digite apple-generateduid na caixa de texto e clique em Enter.
      5. No nó Usuários, clique no atributo NFSHomeDirectory.
      6. Na tela à direita, atualize o valor desse atributo para #/Users/$uid$
      7. Clique em OK e digite sua senha para salvar as mudanças.
  9. Na janela Directory Utility, defina a nova configuração LDAP:
    1. Acesse a guia Política de pesquisa.
    2. Clique no ícone de bloqueio para fazer alterações e digite a senha do usuário atual quando solicitado.
    3. Mude a opção do menu suspenso de Caminho de pesquisa para Caminho personalizado.
    4. Abra a guia Autenticação e clique no ícone +.
    5. Escolha /LDAPv3/ldap.google.com na lista "Domínios do diretório" e clique em Adicionar.
    6. Clique no botão Aplicar e digite sua senha de administrador, se solicitado.
  10. Execute os quatro comandos a seguir para desativar os mecanismos de autenticação DIGEST-MD5, CRAM-MD5, NTLM e GSSAPI SASL. O macOS vai usar a vinculação simples para autenticar usando o serviço LDAP seguro do 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

  11. Reinicialize para recarregar a configuração do OpenDirectory.

Etapa 4: criar uma conta para dispositivos móveis (permite o login off-line)

Qualquer usuário do Google Workspace ou do Cloud Identity pode fazer login usando uma conta de rede (Conta do Google) com o próprio nome de usuário e a senha. Esse processo de login requer conectividade de rede. Quando o usuário também precisa fazer login sem estar conectado à rede, é possível criar uma conta móvel. Uma conta móvel permite que você use o nome de usuário e a senha da sua conta de rede (Conta do Google) para fazer login, esteja você conectado à rede ou não. Para mais detalhes, consulte Criar e configurar contas móveis no Mac.

Se você quiser criar uma conta móvel para usuários do LDAP seguro, faça o seguinte:

  1. Execute o seguinte comando para se conectar ao servidor LDAP seguro e configurar um caminho inicial e as contas móveis:

    sudo /System/Library/CoreServices/ManagedClient.app/Contents/Resources/createmobileaccount -n $uid -v

    Dica:substitua $uid pela parte do nome de usuário do endereço de e-mail associado à Conta do Google do usuário. Por exemplo, jsilva é o nome de usuário em jsilva@solarmora.com.

  2. Quando o nome de usuário do administrador do SecureToken for solicitado, digite seu nome de usuário administrador e a senha. Isso vai adicionar $uid ao FileVault. Isso é necessário se o disco do macOS estiver criptografado.

Etapa 5 (opcional): definir a preferência da tela de login

  1. Acesse Preferências do sistema > Usuários e grupos > Opções de início de sessão no canto inferior esquerdo.
  2. Use as credenciais do administrador para desbloquear.
  3. Mude a opção Exibir janela de login como para Nome e senha.

Etapa 6: reinicializar e fazer login no dispositivo

  1. Confirme que o dispositivo está conectado à Internet. Se você não tiver uma conexão de Internet, o login do usuário do LDAP seguro não vai funcionar.
    Observação:a conexão de Internet é necessária apenas para o primeiro login. Os logins seguintes podem ocorrer sem acesso à Internet.
  2. Faça login no dispositivo com a conta de usuário configurada para usar o LDAP seguro na autenticação.

Fase de implantação

As instruções nesta seção mostram como automatizar a configuração do dispositivo para seus usuários. Siga as etapas 1 e 2 abaixo no mesmo dispositivo macOS em que você concluiu a configuração manual durante a fase de preparação.

Etapa 1: criar um perfil do Mac com certificado usando o Apple Configurator 2

  1. Instale o Apple Configurator 2 no computador em que você configurou manualmente a autenticação do macOS com o LDAP seguro.
  2. Abra o Apple Configurator 2, crie um novo perfil e, na seção "Certificado", clique em "configurar" e importe o arquivo .p12 gerado anteriormente.

    Observação:confirme que o arquivo .p12 tem uma senha. Digite essa senha na seção "Senha" do certificado.

  3. Salve o perfil.
  4. Para dispositivos que usam processadores M1 ou M2, pule esta etapa e continue para a etapa 5. ) Abra o perfil em qualquer editor de texto e adicione as linhas abaixo na primeira tag <dict>:

    <key>PayloadScope</key>
    <string>System</string>


    Isso é necessário porque o Apple Configurator ainda não é compatível com perfis para o macOS.
  5. Na segunda tag <dict>, paralela aos dados do certificado, adicione as linhas a seguir:

    <key>AllowAllAppsAccess</key>
    <true/>


    Isso garantirá que todos os apps possam acessar o certificado.

Etapa 2: converter o arquivo de configuração do Directory (plist) em XML

Nesta etapa, você vai extrair todas as configurações manuais que concluiu durante a etapa 3 da fase de preparação para um arquivo XML. Use esse arquivo e o perfil do Mac criado na etapa 1 acima para configurar automaticamente outros dispositivos macOS.

  1. Copie /Library/Preferences/OpenDirectory/Configurations/LDAPv3/ldap.google.com.plist para a Mesa ou outro local.
  2. Converta-o em um arquivo XML para examiná-lo em qualquer editor de texto. Execute o comando a seguir no terminal:

    sudo plutil -convert xml1 <path>/ldap.google.com.plist

    É possível acessar o arquivo como <path>/ldap.google.com.plist.
  3. Altere a permissão do arquivo acima para abrir o arquivo XML. Confirme que ele não está vazio.

Etapa 3: criar um script Python para automatizar a configuração nos dispositivos dos usuários finais

Copie o script abaixo e salve-o como um arquivo do Python (.py).

Observação:este exemplo de script foi criado para ser compatível com a versão 3.10.x do Python. Este script é fornecido no estado em que se encontra. O Suporte do Google não oferece suporte para exemplos de script.

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' ")

Etapa 4: configurar automaticamente os dispositivos dos usuários finais

Acesse outros dispositivos macOS que você quer configurar e siga estas etapas:

  1. Copie o arquivo do perfil do Mac gerado na etapa 1, o arquivo de configuração XML gerado na etapa 2 e o script do Python da etapa 3 para o dispositivo.
  2. Para instalar a dependência necessária do script, execute o seguinte comando:
    python3 -m pip install pyobjc-framework-opendirectory
  3. Execute este comando:
    sudo python </path/to/saved_python_script> </path/to/ldap.google.com.plist generated in step 2>
  4. Se você quiser importar certificados para o conjunto de chaves do sistema macOS, clique duas vezes no arquivo de perfil do Mac gerado na etapa 1 e, quando solicitado, informe suas credenciais de administrador local do macOS. Em seguida, será solicitado que você insira a senha do arquivo .p12 que definiu durante a fase de preparação.
  5. Reinicie o computador macOS.
  6. Crie contas para dispositivos móveis conforme as instruções na etapa 4 da fase de preparação e, se quiser, defina outras preferências descritas na etapa 5 da fase de preparação.

Limitações e diretrizes

  • Para os usuários que fazem login no macOS usando as credenciais do Google, o nome de usuário da conta do Workspace precisa ser diferente do ID do usuário do perfil de usuário do macOS. Caso contrário, o login será bloqueado.
  • Quando um usuário começa a fazer login no macOS com credenciais do Google, o gerenciamento de senha do usuário (redefinição ou recuperação) precisa acontecer no site do Google (por exemplo, em myaccount.google.com ou no Google Admin Console). Se você optar por usar uma solução de terceiros para gerenciar senhas, verifique se a senha mais recente está sincronizada com o Google.
  • Se o administrador criar um novo usuário ou redefinir a senha de um usuário com a configuração Pedir uma alteração de senha no próximo login ativada, o usuário não poderá fazer login no Mac usando a senha temporária definida pelo administrador.
    Como alternativa, o usuário pode fazer login no Google em outro dispositivo (como um smartphone ou outro dispositivo desktop), definir uma senha permanente e fazer login no macOS com a nova senha.
  • O Mac precisa ter uma conexão de Internet ativa para que ldap.google.com esteja acessível durante o primeiro login após a configuração acima. O acesso à Internet não será necessário para os logins subsequentes se você tiver configurado uma conta móvel.
  • A integração do LDAP seguro do Google com o macOS foi testada no macOS Catalina, Big Sur e Monterey.

Solução de problemas

Se você tiver problemas para se conectar ao serviço LDAP seguro, siga as instruções abaixo.

Etapa 1: verificar a conexão.

Verifique a conexão usando o comando "odutil".
Execute o comando odutil show nodenames no terminal.
Verifique se o status de /LDAPv3/ldap.google.com é on-line. Caso não seja, tente usar o protocolo Telnet.

Verifique a conexão usando o comando "nc".
Execute o seguinte comando no terminal: nc -zv ldap.google.com 636
Se não for possível se conectar ao Google usando essa abordagem, tente se conectar usando IPv4.

Verifique a conexão com o IPv4.
Siga estas etapas para o dispositivo usar o IPv4:

  1. Acesse Preferências do Sistema > Rede > Wi-Fi > Avançado.
  2. No menu "Avançado", acesse a guia "TCP/IP".
  3. Mude a seleção do menu suspenso de Configurar IPv6 para Somente link-local.
  4. Clique em OK e em Aplicar para salvar as alterações.
  5. Verifique a autenticação do serviço com uma pesquisa válida no Idapsearch.

Etapa 2: verificar se você consegue ver os objetos do diretório.

  1. Abra o Utilitário de Diretório e, em seguida, a guia Editor de Diretório.
  2. Selecione o nó /LDAPv3/ldap.google.com na lista suspensa.
  3. Confirme que você vê os usuários e grupos do seu domínio do Google.

Instruções de configuração para aplicativos Java

A maioria dos aplicativos baseados em Java que oferecem funcionalidade LDAP pode ser configurada para autenticar com certificados do cliente instalando os certificados do cliente no repositório de chaves do aplicativo. Os arquivos de configuração exatos variam entre os aplicativos, mas o processo geralmente é semelhante. A configuração exige que o OpenSSL e um Java Runtime Environment estejam instalados.

  1. Converta o certificado e as chaves no formato Java KeyStore. Será necessário inserir senhas durante esse processo. Selecione uma senha segura e use a mesma em todos os comandos. Supondo que o arquivo de chave do cliente se chame ldap-client.key:

    Se você estiver no macOS ou no Linux, use os seguintes comandos:

    $  openssl pkcs12 -export -out java-application-ldap.pkcs12 -in ldap-client.crt -inkey ldap-client.key
    

    Se você estiver no Windows, use os seguintes comandos:

    $  certutil -mergepfx ldap-client.crt java-application-ldap.pkcs12
    

    Importante:os dois arquivos (<CERT_FILE>.crt e <CERT_FILE>.key) precisam estar no mesmo diretório. Além disso, verifique se key e crt têm um nome idêntico (com as duas extensões diferentes). Neste exemplo, usamos os nomes ldap-client.crt e ldap-client.key.

  2. Importe o certificado para o keystore:

    $  keytool -v -importkeystore -srckeystore java-application-ldap.pkcs12 -srcstoretype PKCS12 -destkeystore java-application-ldap.jks -deststoretype JKS
    
  3. As propriedades do Java podem ser configuradas de maneiras diferentes, dependendo do aplicativo. Muitas vezes, é possível defini-las com a opção -D na linha de comando "java" usada para iniciá-lo. Configure as propriedades do Java para seu app:

    javax.net.ssl.keyStore = /<path-to>/java-application-ldap.jks
    javax.net.ssl.keyStorePassword = <password selected above>
    
  4. Defina as configurações de conexão LDAP do aplicativo usando as informações em Instruções de configuração básica.

Opcional: usar o stunnel como proxy

Para clientes que não oferecem uma maneira de autenticar no LDAP com um certificado de cliente, use o stunnel como proxy.

Configure o stunnel para fornecer o certificado do cliente ao servidor LDAP e configure o cliente para se conectar ao stunnel. O ideal é executar o stunnel nos mesmos servidores do aplicativo e ouvir apenas localmente para não expor o diretório LDAP além desse servidor.

Siga estas etapas:

  1. Instale o stunnel. Por exemplo, no Ubuntu:

    $  sudo apt-get install stunnel4
    
  2. Crie um arquivo de configuração /etc/stunnel/google-ldap.conf com o conteúdo a seguir (supondo que ldap-client.crt seja o certificado e ldap-client.key seja a chave):

    [ldap]
    client = yes
    accept = 127.0.0.1:1636
    connect = ldap.google.com:636
    cert = ldap-client.crt
    key =
    ldap-client.key

  3. Para ativar o stunnel, edite /etc/default/stunnel4 e defina ENABLED=1.

  4. Reinicie o stunnel.

    $  sudo /etc/init.d/stunnel4 restart
    
  5. Configure seu app de modo que ele aponte para ldap://127.0.0.1:1636.

    É possível substituir "1636" por qualquer porta não utilizada se você também alterar a linha accept no arquivo de configuração acima. Você precisará usar o LDAP de texto simples sem o StartTLS/SSL/TLS ativado entre o cliente e o stunnel, já que eles estão se comunicando localmente.

Observação:se você optar por executar o stunnel em um servidor separado, configure os firewalls para que apenas os aplicativos necessários possam acessar o servidor do stunnel. Também é possível configurar o stunnel para detectar com TLS, de modo que os dados entre o aplicativo e os servidores do stunnel sejam criptografados. Os detalhes dessas duas configurações dependem do seu ambiente.

Próximas etapas

Depois de conectar o cliente LDAP ao serviço LDAP seguro, você precisa mudar o status do serviço para Ativado no cliente LDAP.

Veja as próximas etapas em 5. Mude os clientes LDAP para Ativado.

Observação:se necessário, use ferramentas simples, como ldapsearch, ADSI ou ldp.exe, para resolver problemas se você encontrar erros ao tentar conectar seu cliente LDAP ao serviço. Para instruções, consulte Teste de conectividade e solução de problemas.