LDAP – Como Utilizar Para Gerenciar Diretórios De Informação No Linux Com o Openldap

O Lightweight Directory Access Protocol (LDAP), ou protocolo leve de acesso a diretórios, também conhecido como RFC 1777, é um software de protocolo (de cliente e servidor) usado para acesso e gerenciamento de diretório e das informações contidas nele.

Uma das muitas vantagens que o LDAP proporciona é que as informações de uma empresa (e seus respectivos usuários) podem ser centralizadas de maneira que fiquem acessíveis de qualquer computador da rede.

A princípio a prática soa insegura, porém o LDAP é compatível com camadas SSL (Secure Sockets Layer) e TLS (Transport Layer Secirity), ou seja, os dados sigilosos e sensíveis são blindados no sistema.

Para nos aprofundarmos no tema, explicarei neste artigo o funcionamento do LDAP, como implementá-lo (usando o OpenLDAP), e como fazer a instalação do programa no sistema operacional Linux.

APRENDA A DOMINAR O LINUX

Aprenda a dominar o LINUX de uma vez por todos, pegue sua cópia

  • Ferramentas para instalar softwares adicionais
  • Shell do LINUX passo a passo, e muito mais...

ldap diretorio no linux

Entendendo o que é o LDAP

Criado no início dos anos 90 por Tim Howes, Steve Kille e Wengyik Yeong, três cientistas da computação dos Estados Unidos, o LDAP surgiu para ser uma alternativa ao Directory Access Protocol (DAP) para navegação em diretórios X.500 (conjunto de protocolos para serviços de diretório).

Em relação às soluções antecessoras, o LDAP é consideravelmente mais leve e não apresenta as falhas do padrão X.500. Além disso, ele é executado sobre o protocolo TCP/IP, fator que o possibilita organizar os elementos de rede hierarquicamente.

Em termos práticos, o LDAP cria um diretório adotando a topologia de árvore, a qual se inicia pelo diretório raiz seguido da rede corporativa, seus departamentos, equipes, funcionários etc.

Reiterando sobre o que falei no início do artigo, a centralização de informações é uma das principais vantagens do LDAP.

Leia também ...   Curso de Linux a distância: É o melhor investimento?

Considerando o exemplo de diretório acima, o administrador (ou qualquer usuário autorizado) consegue, a partir de uma consulta no banco de dados, levantar todas as informações disponíveis de um determinado funcionário, tais como:

nome;

endereço;

contato;

histórico de projetos; e

arquivos gerados.

Contudo, a solução é muito mais ampla do que isso. O LDAP é capaz de criar réplicas, adicionar servidores e espelhos (mirrors) utilizando a mesma topologia de árvore. Essa funcionalidade é interessante para empresas que têm filiais e precisam conectá-las na rede de maneira organizada.

Utilizando o OpenLDAP para implementação do LDAP

A implementação do LDAP, no entanto, requer a instalação de um software específico, assim como o Active Directory é usado em sistemas de servidores Windows. No Linux, a solução mais utilizada é o OpenLDAP — embora este seja multiplataforma.

O OpenLDAP é um software de código aberto amplamente utilizado para implementação do LDAP em servidores, mais precisamente na configuração do LDAP e disponibilização de esquemas para organizar o banco de dados.

Portanto, o OpenLDAP permite que os diretórios sejam construídos a partir de uma base de dados bem estruturada, na qual o administrador especifica quais são os atributos obrigatórios (e opcionais) para a entrada de dados.

Instalando o OpenLDAP no Linux

Neste tópico, abordarei mais especificamente os processos de instalação do OpenLDAP em três das principais distros do Linux: CentOS, Debian e Ubuntu. Vamos começar?

CentOS

Os pacotes do OpenLDAP acompanham os repositórios padrões do CentOS, cabendo ao usuário instalar os pacotes específicos: openldap; openldap-clients; e openldap-servers. Faremos isso usando o seguinte comando:

yum install opendlap opendlap-clients opendlap-servers

Após o processo, criaremos uma senha de administrador para o LDAP usando o comando slappasswd. Preencha os campos solicitados conforme o exemplo abaixo.

New password: (digite a sua senha)

Re-enter new password: (redigite a senha que criou acima)

Quando confirmada a nova senha, o LDAP retornará uma versão criptografada da própria, como no exemplo:

Leia também ...   PostgreSQL: Guia de instalação e tudo para iniciar a trabalhar com esse banco de dados

{SSHA}dMKRjT563UhYumRS6t8/PSWIR88dy2

Mantenha a criptografia armazenada em algum bloco de notas e inicie o servidor LDAP para ativá-lo no sistema. Digite:

systemctl start slapd

systemctl enable slapd

Configuração

A partir de agora faremos a configuração do LDAP no CentOS. Esta etapa se inicia pelo arquivo “olcDatabase={2}hdb.ldif”, portanto navegaremos na pasta em que ele está localizado e, em seguida, o abriremos.

cd /etc/openldap/slapd.d/cn=config

vi olcDatabase={2}hdb.ldif

Agora, vamos editar duas linhas do arquivo para sincronizá-lo ao servidor e adicionaremos uma nova — onde iremos registrar a senha criptografada.

olcSuffix: dc=MeuServidor,dc=local

olcRootDN: cn=Manager,dc=MeuServidor,dc=local

olcRootPW:{SSHA}dMKRjT563UhYumRS6t8/PSWIR88dy2

A partir daí já podemos reiniciar o OpenLDAP para verificar se as configurações funcionaram. Para fazer isso, digite o comando slaptest -u. Contanto que a mensagem final seja “config file testing succeeded”, quaisquer erros exibidos podem ser ignorados.

Debian

Se você está utilizando o Debian Linux, instale o OpenLDAP usando o comando apt:

apt-get update

apt-get install slapd ldap-utils ldapscripts

O ideal é que o sistema solicite a criação de uma senha administrativa e, depois, retorne uma série de perguntas relativas à configuração do programa, mas é possível que isso não aconteça. No caso, acione o comando dpkg-reconfigure -plow slapd após a instalação. Agora teremos de responder as seguintes perguntas:

If you enable this option, no initial configuration or database will be created for you. Omit OpenLDAP server configuration? (não)

DNS domain name: exemploldap.com

Organization name: Nome da Organização

Administrator password: (digite a senha que criou na instalação)

Database backend to use: (selecione “MDB“)

Do you want the database to be removed when slapd is purged? (não)

Move old database: (selecione “sim” apenas se houver um banco de dados preexistente)

Allow LDAPv2 protocol? (responda “não“, a menos que venha a utilizar ferramentas incompatíveis com o protocolo LDAPv3).

Leia também ...   Servidor Linux - 21 Dicas de Segurança Que Você Não Pode Deixar de Considerar

Traduzindo, o LDAP nos pergunta se queremos omitir a configuração do OpenLDAP; solicita o nome do domínio e da organização; pede para digitarmos a senha administrativa e selecionarmos o banco de dados.

Observação: quanto ao banco de dados “MDB”, eu sugeri a opção porque esse banco requer menos configurações.

Em seguida, ele questiona se o banco de dados pode ser removido quando o slapd for excluído, se queremos mover um banco de dados antigo e se permitimos o protocolo LDAPv2.

Ao concluir este pequeno processo, você terá à sua disposição uma base de dados configurada em nível básico, mas pronta para receber informações.

Ubuntu

Nesta seção, por fim, realizaremos a instalação do OpenLDAP no servidor Ubuntu. Vamos começar? Abra o terminal e digite o comando:

sudo apt-get update

sudo apt-get upgrade

sudo apt install slapd ldap-utils

Assim como nos procedimentos anteriores, o instalador solicitará a criação de uma senha administrativa. Pronto? Não apareceu nenhuma opção de configuração? Então utilize o dpkg-reconfigure.

sudo dpkg-reconfigure slapd

Quando acionado o comando, surgirão as mesmas perguntas que mencionei na instalação do Debian; evidentemente, as respostas são as mesmas. Portanto, não há diferenças significativas entre ambos os procedimentos (Ubuntu e Debian).

Com o diretório OpenLDAP devidamente instalado em sua distribuição Linux, você pode começar a trabalhar com as configurações básicas do LDAP. Você já tem ideia de como fazê-las no seu servidor?

Se as etapas mais avançadas de configurações em sistemas Linux ainda são um obstáculo para você, recomendo o acesso ao site Profissionais Linux, onde você aprende a dominá-lo de vez!

Sobre pedrodelfino

Trabalha a mais de 14 anos com administração de sistemas LINUX, dedicado em ensinar novos profissionais a atuar com servidores. Saiba mais aqui. "Caso queira participar de uma aula online comigo utilize o formulário Acima"