4. Conectar clientes LDAP ao serviço LDAP seguro

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

Importante:

  • Leia a documentação do fornecedor
    Os detalhes deste artigo sobre como conectar seu cliente LDAP ao serviço LDAP seguro são apenas para referência e estão sujeitos a mudanças. Além destas instruções de ajuda, leia a documentação do fornecedor para conferir as etapas mais atualizadas de conexão do 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 permissões de acesso, baixou um certificado e uma chave de cliente e, opcionalmente, criou credenciais de acesso.
  • Teste de conectividade
    : opcionalmente, antes de começar estas etapas, faça um teste rápido de conexão usando ferramentas simples como ldapsearch, ADSI e ldp.exe. Você também pode usar essas ferramentas para solucionar problemas se encontrar erros ao tentar conectar o cliente LDAP ao serviço. Para instruções, consulte Teste de conectividade LDAP seguro.
  • Como concluir as etapas de configuração
    Depois de conectar o cliente LDAP seguindo as instruções desta 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 baixados são chamados de 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, fazem uma pesquisa de usuário para receber mais informações sobre ele durante a autenticação. Para garantir que a autenticação de usuários funcione corretamente para esses clientes LDAP, ative 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 maneira de autenticar com um certificado de cliente, consulte Usar o stunnel como um 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 sua conexão, como LDAP do Google.
    Ponto de conexão: "Selecione ou digite um nome distinto ou um contexto de nomenclatura"
    Insira o 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
  4. 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
  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 Google Admin Console. Supondo que as credenciais estejam no lugar e que o stunnel esteja detectando a porta 1389 do localhost, siga estas etapas:

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

    Nome da conexão:escolha um nome, como Google LDAP
    Nome do host:localhost
    Porta:1389 (ou a porta de escuta/aceitação do stunnel)
    Método de criptografia:sem criptografia. Observação: se o stunnel estiver sendo executado remotamente, é recomendável usar 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
    DN ou usuário de vinculação:o nome de usuário da credencial de acesso no Admin Console
    Senha de vinculação:a senha da credencial de acesso no 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 realiza uma pesquisa de usuário para receber mais informações sobre um usuário durante a autenticação. Para garantir que a autenticação de usuários 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 um proxy.

Observação:as instruções a seguir presumem 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 selecionada 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

    User Schema Settings >
    User Name Attribute

    googleUid

    User Schema Settings >
    User Name RDN Attribute

    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 que tenha 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 a que você quer dar 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 após a 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 forma:

      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 <Porta> para a porta 3268 para texto não criptografado com StartTLS ativado e para 3269 para porta SSL/TLS. Os padrões são 389 para a porta de texto não criptografado ou 636 para a porta SSL/TLS.
  4. Defina o valor <TestDN> como o 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 Acesso à Web, 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ícita na lista Política de logon 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ê tiver problemas para configurar a autenticação do servidor LDAP, ative o registro de exceções para ajudar a 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 na 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, insira 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

    Insira 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 um nome idêntico (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, procure "certificado" e clique em Gerenciar certificados do usuário.
  4. Acesse Action > All Tasks > Import….
  5. Selecione Current User e clique em Next.
  6. Clique em Browse….
  7. No menu suspenso file type, 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 Próximo e em Concluir.
  11. Execute Ldp.exe.
  12. Acesse Conexão > Conectar...
  13. Insira 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 estabelecida, 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

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

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 outros detalhes, consulte as páginas do 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

    Insira sua senha para criptografar o arquivo de saída.
  2. Clique em no canto superior direito da barra de menus e digite Acesso ao Keychain.
  3. Abra o aplicativo Acesso às Chaves e, na lista à esquerda, clique em Sistema.
  4. Clique na opção File, na barra de menu no canto superior esquerdo, e selecione Import Items.
  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 Cliente LDAP vai aparecer na lista de certificados do Keychain do sistema.
  6. Clique na seta ao lado do certificado do cliente LDAP. Uma chave privada aparece abaixo disso.
    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 abrir, 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 importado para o keychain 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 especial, você precisa 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. Configure 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 um proxy.

Servidor de acesso OpenVPN (versão comercial)

Confira 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 da 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, insira 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

    Insira 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 um nome idêntico (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. No menu suspenso Tipo de arquivo, no canto inferior direito da caixa de diálogo, selecione Troca de informações pessoais (*.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 Arquivo > Novo > Novo perfil…
    2. Digite um nome para o perfil, como Google LDAP.
    3. Clique em Próxima.

      Insira o seguinte:

      Host:ldap.google.com
      Porta
      :636
      DN de base:seu nome de 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 External (SSL Certificate).
    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 de 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 ao 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

Ordem 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 do usuário

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 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 de usuários 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


    Nesse caso, os arquivos locais vão substituir os usuários do LDAP.
  4. Verifique /var/log/sssd.conf para erros de configuração:

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

    Ação: execute 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 Linux)

O SSSD pesquisa um usuário para ter mais informações sobre ele durante a autenticação. Para garantir que a autenticação de usuários 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 /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 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

Para instruções, consulte Adicionar clientes LDAP ou assista 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 o keychain 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 no chaveiro 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 Meus certificados e encontre 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 outras finalidades. Normalmente, ele é removido antes de dar acesso ao macOS aos usuários.

      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 "Cliente LDAP" seja exatamente o mesmo nome de certificado mostrado no aplicativo Acesso ao Keychain do macOS após importar o 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: direcionar o dispositivo ao 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. Em 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. Insira um nome descritivo, como LDAP seguro do Google.
  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, insira dc=zomato,dc=com para um nome de domínio zomato.com.
    3. Clique em OK.
    4. Configure atributos no tipo de registro Usuários:
      1. Na seção Tipos e atributos de registros, 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.

        O GeneratedUID vai aparecer em "Usuários" depois que for expandido.
      3. Clique no GeneratedUID e no ícone + na caixa à direita.
      4. Digite apple-generateduid na caixa de texto e clique em Enter.
      5. No nó Users, 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 Utilitário de diretório, configure a nova configuração LDAP:
    1. Acesse a guia Política de pesquisa.
    2. Clique no ícone de cadeado 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 de 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 de celular (permite 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. Com uma conta de celular, você pode usar o nome de usuário e a senha da sua conta de rede (Conta do Google) para fazer login, esteja ou não conectado à rede. 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 comando a seguir para se conectar ao servidor LDAP seguro e configurar um caminho inicial e contas de celular:

    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 é a parte do nome de usuário de jsilva@solarmora.com.

  2. Quando o nome de usuário do administrador do SecureToken for solicitado, digite seu nome de usuário de 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 Mostrar 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 subsequentes 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. Execute 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 garante que todos os aplicativos possam acessar o certificado.

Etapa 2: converter o arquivo de configuração do diretório (plist) em xml

Nesta etapa, você extrai todas as configurações manuais concluídas durante a etapa 3 da fase de preparação em 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

    Você pode 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 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á necessário inserir a senha .p12 definida durante a fase de preparação.
  5. Reinicie o computador macOS.
  6. Crie contas móveis conforme instruído na etapa 4 da fase de preparação e, opcionalmente, 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 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 gerenciar senhas usando uma solução de terceiros, 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 existente com a configuração Pedir uma mudança 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 computador), 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 de celular.
  • 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: verifique a conexão.

Verifique a conexão usando o comando "odutil".
Execute o comando odutil show nodenames no terminal.
Verifique se o status do /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 você não conseguir se conectar ao Google usando essa abordagem, tente se conectar usando o 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 mudanças.
  5. Verifique a autenticação do serviço com uma pesquisa válida no Idapsearch.

Etapa 2: verifique se é possível ver objetos de diretório.

  1. Abra o Utilitário de Diretório e 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 no keystore do aplicativo. Os arquivos de configuração exatos variam entre 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. Você vai precisar 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 seja chamado ldap-client.key:

    Se você estiver no macOS ou 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 o mesmo nome (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 definir essas opções com a opção -D na linha de comando "java" usada para iniciar o processo. 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. Configure as definições de conexão LDAP do aplicativo usando as informações em Instruções de configuração básica.

Opcional: usar o stunnel como um proxy

Para clientes que não oferecem uma maneira de autenticar no LDAP com um certificado de cliente, use o stunnel como um 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 seguinte conteúdo (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.

    Você pode substituir "1636" por qualquer porta não usada se também mudar a linha accept no arquivo de configuração acima. Você precisará usar LDAP de texto simples sem 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 stunnel. Também é possível configurar o stunnel para escutar com TLS e criptografar os dados entre o aplicativo e os servidores stunnel. 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.

Confira 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 o cliente LDAP ao serviço. Para instruções, consulte Teste e solução de problemas de conectividade.