Configurar o GLPI para autenticar utilizando o LDAP do Google

Tudo bom, pessoal? Essa configuração é um prensadão do help do Google, dos fóruns do GLPI v10 e do Stunnel, que é um proxy projetado para adicionar a funcionalidade de criptografia TLS a servidores e clientes sem quaisquer mudanças em um programa, bastando que o trafego entre o programa e um servidor, seja direcionado para passar pelo Stunnel, conforme representado na figura abaixo:

Se você curtir esse artigo, e ele der um adianto no seu trampo, não esqueça de dar uns cliques nos anúncios para ver o que os anunciantes tem para te oferecer. Vou ficar muito contente.

Para que serve isso aí?

Isso serve para que os funcionários da empresa possam se logar no sistema GLPI utilizando a conta de e-mail corporativa, livrando o suporte técnico do trabalho de criar manualmente os usuários no GLPI, fora que quando um funcionário for desligado, ao desativar o e-mail, esse funcionário irá automaticamente perder o acesso ao GLPI, simplificando o gerenciamento de contas desse aplicativo.

Ok, me mostre como configurar isso aí!

A configuração do serviço de autenticação LDAP precisa ser realizada em 3 pontos:

  1. No Google Workspace.
  2. Instalando e configurando o Stunnel no servidor.
  3. Configurando o GLPI, propriamente dito.

1- Configurando o Google Workspace

Logar no admin console do Google Workspace (admin.google.com).

Acessar Apps -> LDAP -> Add Client.

Vai abrir a tela para adicionar o cliente LDAP.

  • Adicionar um nome e descrição significativa para ambos os campos cliente LDAP e Descrição e clicar em continuar.
  • Marcar as seguintes opções:
    • Ler informações dos usuários → Todo o domínio.
    • Especificar quais atributos este cliente pode acessar → Atibutos de sistema.
    • Ler informações dos grupos→ ativado.
  • Terminada essa parte, clicar no botão “Adicionar Cliente LDAP”.
  • Em seguida gere uma credencial de acesso, que é um nome de usuário e senha automaticamente criada pelo Google.
  • Anote o nome do usuário e a senha gerada no passo anterior, que ela será necessária para a configuração do cliente LDAP do GLPI.
  • Em seguida será gerado o certificado que consiste em uma chave assimétrica zipada.
  • Fazer o download e descompactar o certificado.
  • Serão gerados dois arquivos da chave asimétrica, um com extensão .crt e outro com extensão .key.
  • Renomear esses arquivos para glpi_ldap.crt e glpi_ldap.key (por exemplo).
  • A partir do seu computador, fazer o upload desses dois arquivos para a pasta “/etc/certificates” lá no servidor do GLPI, de acordo com a configuração do seu ambiente.

Já logado no servidor GLPI, acertar o owner dos certificados. Não esqueça de restringir os certificados para somente leitura, conforme exemplo abaixo:

cd /etc/certificates
sudo chown juquinha ./glpi_ldap.crt
sudo chown juquinha ./glpi_ldap.key
sudo chmod 400 ./glpi_ldap.crt
sudo chmod 400 ./glpi_ldap.key

2- Instalando e configurando o Stunnel no servidor do GLPI

No meu caso, o Stunnel foi escolhido para prover a funcionalidade de criptografia TLS porque o GLPI v10 não estava conseguindo se conectar diretamente ao serviço LDAP do Google. Se alguém souber como se faz essa conexão sem utilizar o Stunnel, me avise, que vou curtir 🙂

Ah, não esqueça de assegurar que a porta 636 do firewall do servidor GLPI esteja aberta 😉

Nesta configuração estou assumindo que o serviço Stunnel está sendo instalado no mesmo servidor do GLPI, por isso o GLPI consegue se comunicar com o Stunnel pelo ip 127.0.0.1:1636. Se o Stunnel for instalado em outro servidor, o firewall e os arquivos de configurações envolvidos tem que ser ajustados de acordo.

Instalar o Stunnel caso ele ainda não tenha sido instalado:

sudo apt-get install stunnel

Criar um arquivo de configuração no caminho /etc/stunnel/stunnel.conf com o seguinte conteúdo:

[ldap]
client = yes
accept = 127.0.0.1:1636
connect = ldap.google.com:636
cert = /etc/certificates/glpi_ldap.crt
key = /etc/certificates/glpi_ldap.key

Para habilitar o stunnel, edite o arquivo /etc/default/stunnel4 e adicione ao final do mesmo a chave ENABLED=1, conforme indicado na figura abaixo:

Stunnel habilitado

Uma vez configurado o Stunnel, podemos utilizar os seguintes comandos para gerenciar o serviço:

sudo /etc/init.d/stunnel4 stop
sudo /etc/init.d/stunnel4 start
sudo /etc/init.d/stunnel4 restart
sudo /etc/init.d/stunnel4 status

Abaixo temos o print do comando status, indicando que o serviço do Stunnel está funcionando ok:

Serviço Stunnel rodando

3- Configurando o cliente LDAP no GLPI

Logado no GLPI como super admin pela interface web, acessar: “Configurar” → “Autenticação” → “Diretório LDAP”.

Adicionar uma conexão se não tiver feito ainda e a nomear significativamente. Pode ser “<nome da empresa>-LDAP”.

Entrar na configuração dessa conexão recém criada.

A tela de configuração tem diversas abas do lado esquerdo. Configurar as abas descritas a seguir.

Configurar os seguintes parâmetros na aba “Diretório LDAP”:

  • Nome: <nome>-LDAP.
  • Servidor padrão: Sim.
  • Ativo: Sim.
  • Servidor: 127.0.0.1
  • Porta LDAP: 1636
  • Base DN: dc=<meu_dominio>,dc=com,dc=br. (se for meu_dominio.com.br)
  • Usar Bind para ligações não anônimas: Sim.
  • Agora será utilizada a credencial de acesso que foi gerada no console de administração do Google, que é aquele usuário e senha que foi criado automaticamente.
  • RootDN: Utilizar o nome de usuário criado no Google LDAP.
  • Senha: Utilizar a senha gerada pelo Google LDAP. Essa senha apaga depois que a gente clicar em salvar, mas ela será gravada.
  • Campo de login: mail.
  • Demais campos: em branco.
  • Salvar.

Configurar os seguintes parâmetros na aba “Usuários”:

  • Sobrenome: sn.
  • E-mail: mail.
  • Telefone: telephonenumber.
  • Nome: givenname.
  • Salvar.

Configurar os seguintes parâmetros na aba “Informações Avançadas”:

  • Usar TLS: Não.
  • Fuso horário do diretório LDAP: GMT -3 horas.
  • Usar resultados paginados: Não.
  • Tamanho da página 100.
  • Número máximo de resultados: Ilimitado.
  • Como os aliases do LDAP devem ser manipulados: Nunca desreferenciado (padrão).
  • Nome do domínio para relacionar usuário usado pela ferramenta de inventário: dc=<meu_dominio>,dc=com,dc=br. (se for meu_dominio.com.br)
  • Certificado TLS: /etc/certificates/glpi_ldap.crt (não precisa colocar).
  • Arquivo de chave TLS: /etc/certificates/glpi_ldap.key (não precisa colocar).
  • Tempo limite: 10.
  • Salvar.

Com essa configuração, o sistema já irá funcionar. Com o tempo ajustes podem ser realizados e o sistema será refinado de acordo com os processos internos da empresa.

Boa sorte e abraços!

By Renato de Pierri.

Publicado em 18/07/2022.

Last updated by at .