Como Instalar e Configurar um Servidor OpenLDAP no Ubuntu

No mundo digital acelerado de hoje, manter o controle de contas de usuários e controle de acesso não é uma tarefa fácil. Mas não se preocupe! O OpenLDAP é a solução para os seus problemas, uma implementação open-source widely utilizada do Lightweight Directory Access Protocol (LDAP).

Este tutorial irá guiá-lo pelos detalhes de como configurar um servidor OpenLDAP na sua máquina Ubuntu. Diga adeus aos dados de usuários espalhados e olá para gerenciamento, autenticação e autorização centralizados.

Continue lendo para simplificar o gerenciamento de usuários e otimizar seus fluxos de trabalho de TI!

Pré-requisitos

Este tutorial inclui demonstrações práticas de como configurar um servidor OpenLDAP. Se você quiser acompanhar, certifique-se de ter o seguinte:

  • Duas máquinas (uma para o servidor e outra para o cliente) executando o Ubuntu 20.04 ou superior.
  • A non-root user with sudo privileges on both machines.

Instalando o servidor OpenLDAP no UbuntuAgora que seu sistema está pronto, é hora de mergulhar no coração da sua configuração: a instalação do servidor OpenLDAP. O LDAP tem um papel significativo na administração de servidores, especialmente no gerenciamento de contas de usuários e controle de acesso dentro da rede de uma organização.

A partir da garantia da prontidão do seu sistema, agora você mergulha no coração do seu ambiente, instalando o servidor OpenLDAP. O LDAP tem um peso significativo na administração de servidores, especialmente ao gerenciar contas de usuários e controle de acesso dentro da rede de uma organização.

Para instalar o servidor OpenLDAP no seu sistema, siga os passos abaixo:

? Ao longo deste guia, você deve usar seu nome de domínio para substituir ata.com.

1. Abra o terminal e execute o seguinte comando para definir o nome de host da sua máquina (por exemplo, ldap.ata.com). Este comando não tem saída para o terminal, mas permite que outros dispositivos na rede reconheçam sua máquina.

sudo hostnamectl set-hostname ldap.ata.com

2. Em seguida, execute o comando apt update abaixo para atualizar o índice de pacotes do seu sistema.

sudo apt update -y
Updating the system’s package list

3. Uma vez atualizado, execute o comando apt install abaixo para instalar o servidor web Apache e componentes essenciais (módulos PHP). Esses componentes são necessários para o funcionamento adequado do OpenLDAP.

sudo apt install apache2 php php-cgi libapache2-mod-php php-mbstring php-common php-pear -y
Installing Apache web server and essential PHP modules

4. Agora, invoque este comando para instalar o servidor OpenLDAP e LDAP Account Manager (LAM), uma ferramenta de gerenciamento baseada na web conveniente.

sudo apt install slapd ldap-utils -y && sudo apt install ldap-account-manager -y
Installing the OpenLDAP server and LAM

5. Forneça uma senha de administrador para seu servidor LDAP quando solicitado durante a instalação.

Providing an admin password for the LDAP server

6. Depois de instalado, execute o seguinte comando systemctl para confirmar o status do servidor OpenLDAP (slapd).

sudo systemctl status slapd
Confirming the OpenLDAP server is active and running

7. Por fim, execute o comando slapcat abaixo para verificar o conteúdo do banco de dados LDAP.

sudo slapcat

A list of default schemas and configurations below indicates that OpenLDAP has been installed correctly.

Checking the LDAP database contents

Mantendo o servidor OpenLDAP seguro com o firewall UFW

Você instalou com sucesso seu servidor OpenLDAP, mas você deve fortalecer suas defesas antes que ele possa proteger sua rede. Como? Recorrendo à ajuda do UFW, o confiável firewall padrão do Ubuntu.

Configurar o firewall UFW é como criar um fosso digital em torno de seu castelo. Você personalizará o firewall para proteger seu servidor, permitindo apenas o tráfego essencial e mantendo os saqueadores digitais à distância.

Para garantir conexões seguras em seu servidor OpenLDAP, você deve abrir certos portas para o servidor OpenLDAP da seguinte maneira:

Execute os seguintes comandos ufw para permitir o tráfego de entrada nos portas para HTTP (80), HTTPS (443) e LDAP (389).

# Permitir Tráfego HTTP
sudo ufw allow 80
# Permitir Tráfego HTTPS
sudo ufw allow 443
# Permitir Tráfego LDAP
sudo ufw allow 389
Configuring the UFW Firewall for OpenLDAP Server

Agora, execute o comando abaixo para verificar um resumo detalhado do status e configuração atual do UFW no seu sistema.

sudo ufw status verbose

A saída abaixo confirma que as regras de firewall adicionadas foram aplicadas com sucesso.

Checking the UFW status

Habilitando Suporte PHP no Apache para LAM

Depois de fortalecer a segurança do seu servidor LDAP com o Firewall UFW, você deve garantir que o Apache reconheça e processe arquivos PHP de forma eficaz. Este passo crítico abre o caminho para a integração perfeita entre o Apache e o LAM, permitindo a gestão eficiente do seu diretório LDAP.

Para habilitar o suporte PHP no Apache, siga os passos abaixo:

1. Execute o seguinte comando a2enconf para habilitar um arquivo de configuração para a Interface de Gateway Comum do PHP (CGI) do Apache.

Estes arquivos de configuração geralmente contêm diretivas relacionadas à configuração do PHP para o Apache, como configurar manipuladores ou definir opções para a execução do PHP. Ao habilitar esses arquivos de configuração, você garante que o Apache esteja devidamente configurado para lidar com scripts PHP usando a interface CGI.

sudo a2enconf php*-cgi
Enabling the PHP module

2. Uma vez habilitado, execute o comando abaixo para recarregar o serviço Apache (apache2) para aplicar as alterações.

Este comando não gera saída, mas garante que quaisquer modificações feitas na configuração do Apache entrem em vigor. Este processo inclui habilitar o módulo PHP CGI sem reiniciar todo o serviço Apache.

sudo systemctl reload apache2

3. Agora, invoque este comando para verificar o status do serviço apache2 para garantir que tudo esteja funcionando sem problemas.

sudo systemctl status apache2

A saída mostrará o status atual do servidor web Apache como ativo (em execução) sem erros, como abaixo.

Checking the status of the Apache service

Configurando a Interface Web LAM

Passando da habilitação do suporte ao PHP no Apache para o LAM, agora você se concentra em um hub central onde pode controlar seu servidor OpenLDAP – a interface web LAM. Essa interface web oferece uma plataforma intuitiva para administradores como você supervisionarem os serviços de diretório.

Para configurar a interface web LAM, siga estas etapas:

1. Execute o comando ifconfig abaixo para exibir suas informações de rede.

ifconfig

Procure e anote o endereço IP do seu servidor (por exemplo, 192.168.1.7), geralmente denotado por inet.

Noting down the server’s IP address

2. Abra seu navegador web favorito e navegue até o endereço IP do seu servidor seguido de /lam na barra de endereços (por exemplo, http://192.168.1.7/lam). Ao fazer isso, seu navegador é redirecionado para a interface web do LAM, conforme mostrado abaixo.

Accessing the LAM web interface

3. Clique em Configuração do LAM (canto superior direito) na página de login para acessar a página do Gerenciador de Contas LDAP (passo quatro).

Accessing the LAM Account Manager

4. Agora, clique em Editar perfis de servidor para modificar suas configurações do LAM.

Editing server profiles to modify the LAM settings

5. Insira a senha padrão lam na segunda página de login e clique em OK para autenticar.

Authenticating access to the LAM web interface

6. Depois de fazer login, configure as seguintes configurações de servidor e idioma na seção Configurações gerais:

  • Sufixo da árvore – Digite o nome distinto base (DN) do seu diretório, como dc=ata,dc=com, substituindo-os pelos componentes de domínio reais.
  • Idioma padrão – Selecione sua preferência de idioma para a interface web do LAM.
  • Fuso horário – Escolha o fuso horário que corresponde à localização do seu servidor, o que é crucial para o gerenciamento preciso da expiração de contas.
Configuring the server and language settings

7. Role para baixo e defina as opções de segurança e senha de perfil com o seguinte:

  • Lista de usuários válidos – Insira o DN do usuário administrador LDAP, por exemplo, cn=admin,dc=ata,dc=com.
  • Nova senha e Reinsira senha – Crie e confirme uma senha forte para a conta de administrador do LAM para substituir a senha padrão inicial.
  • Mantenha as outras configurações padrão e clique em Salvar para aplicar suas configurações. Uma vez salvas, seu navegador será redirecionado de volta para a página de login.
Configuring security settings and profile password

Criando Grupos e Usuários no LAM

Com seu painel LAM pronto, você se concentra na criação da base para uma estrutura de diretório organizada e segura – grupos e usuários. Criar grupos e usuários é como organizar sua equipe em departamentos e dar a cada um seu crachá de identificação.

Para criar grupos e usuários no LAM, execute o seguinte:

1. Navegue até o Gerenciador de Contas LDAP seguindo as etapas três a cinco da seção “Configurando a Interface da Web do LAM”. Mas desta vez, insira sua nova senha configurada para o servidor OpenLDAP.

2. No Gerenciador de Contas LAM, navegue até a guia Tipos de contas para visualizar todas as opções de tipo de acesso.

Accessing the account types

3. Em seguida, role para baixo e defina os Sufixos LDAP enquanto substitua <base_DN> (ou seja, dc=ata,dc=com), de acordo com o seguinte:

  • Usuáriosou=Departamentos,<base_DN>
  • Gruposou=Grupos,<base_DN>
  • Deixe outras configurações como padrão e clique em Salvar.

Após salvar, seu navegador será redirecionado para a página de login do administrador (etapa quatro).

Setting the LDAP suffixes

4. Agora, insira a senha de administrador que você definiu durante a instalação e clique em Login para acessar seu servidor OpenLDAP.

Logging in to the OpenLDAP server

5. Quando solicitado, clique em CRIAR para estabelecer as duas suficiências ausentes.

Creating the two missing suffixes

6. Após a criação, clique em Visualização em árvore (canto superior direito) para ver as novas suficiências LDAP (Departamentos e Grupos) exibidas em uma estrutura hierárquica, conforme mostrado abaixo.

Viewing the hierarchical structure

7. Avançando, clique em Ferramentas (canto superior direito) e escolha Editor de OU para configurar um novo departamento com o seguinte:

  • DN pai – Escolha Departamento > ata > com para o DN pai. Essa opção especifica onde o novo departamento será criado em seu diretório LDAP.
  • Nome – Insira TI (arbitrário) como o nome do departamento (OU).

Após configurado, clique em OK para adicionar um novo departamento chamado TI.

Adding a new department within the LDAP directory

8. Agora, navegue até a guia Grupos e clique em Novo grupo para criar um novo grupo.

A criação de grupos simplifica a administração, promove a colaboração, impõe políticas e facilita a escalabilidade organizacional.

Creating a new group

9. Forneça um nome de grupo descritivo (por exemplo, Meu Grupo IP) e clique em Salvar para confirmar o novo grupo.

Naming the new group

10. Uma vez criado o grupo, navegue até a guia Usuários e clique em Novo usuário para criar um novo usuário.

Estabelecer uma estrutura robusta agrupando usuários de acordo com seus papéis, departamentos ou outros critérios é crucial. Essa estrutura ajuda a gerenciar o acesso a recursos e promover uma colaboração eficiente em toda a sua organização.

Creating a new user

11. Posteriormente, defina as informações pessoais do usuário da seguinte maneira:

  • Selecione IT > Departments > ata > com no menu suspenso Suffix para colocar o usuário no departamento de TI.
  • Na guia Personal (painel esquerdo), insira myituser (arbitrário) no campo Last name.
Setting the ne user’s personal information

12. Configure as credenciais do novo usuário com o seguinte:

  • Navegue até a guia Unix (painel esquerdo) e verifique se o nome do grupo recém-criado (ou seja, My IP Group) está definido como o Primary Group.
  • Clique em Set password, o que abre uma caixa de diálogo onde você definirá uma senha para o novo usuário (passo13).
Initiating setting a password for the new user

13. Forneça uma senha segura para o novo usuário e clique em OK para confirmar.

Providing a secure password

14. Mantenha as outras configurações como estão e clique em Save para finalizar a criação da nova conta de usuário.

Saving the new user

15. Volte para a visualização em Tree view para ver a estrutura atualizada com o novo departamento (IT), grupo (My IP Group) e conta de usuário (myituser) incluídos.

Verifying the updated structure

Instalação e Configuração do Cliente OpenLDAP

Agora que você tem um ótimo ambiente de servidor configurado, você precisa de uma maneira de interagir com ele, instalando e configurando o cliente OpenLDAP. Configurar esse cliente é essencial para habilitar a autenticação centralizada e o acesso a recursos em toda a sua rede.

Integrar seu sistema Ubuntu com o servidor de diretório LDAP estabelece um mecanismo de autenticação unificado, melhorando a segurança e simplificando a gestão de usuários.

Para instalar e configurar o cliente OpenLDAP, siga estas etapas:

1. Execute o seguinte comando sh para adicionar o nome de host e o endereço IP do servidor OpenLDAP à sua máquina cliente no arquivo /etc/hosts, permitindo a comunicação baseada em nome de host.

Lembre-se de substituir 192.168.1.7 e ldap.ata.com pelo endereço IP e nome de host do seu servidor.

sudo sh -c 'echo "192.168.1.7 ldap.ata.com" >> /etc/hosts'
Adding the OpenLDAP server’s hostname and IP address to the hosts file

2. Depois de adicionado, execute o comando ping abaixo para verificar a conectividade entre seu sistema e o servidor OpenLDAP (ldap.ata.com).

ping -c3 ldap.ata.com

A saída abaixo confirma que a máquina cliente pode se comunicar com sucesso com o servidor OpenLDAP usando o endereço IP e nome de host especificados.

Pinging the LDAP server

3. Em seguida, execute o comando abaixo para atualizar suas listas de pacotes e instalar os seguintes pacotes de cliente OpenLDAP necessários:

  • libnss-ldap – Permite que seu sistema use o LDAP para bancos de dados de configuração comuns.
  • libpam-ldap – Permite a autenticação do sistema contra diretórios LDAP.
  • ldap-utils – Fornece ferramentas de linha de comando para gerenciar entradas de diretório LDAP.
  • nscd – Armazena em cache consultas NSS, melhorando o desempenho reduzindo as consultas ao servidor LDAP.
sudo apt update && sudo apt install libnss-ldap libpam-ldap ldap-utils nscd -y

Durante a instalação, você receberá uma série de prompts para configurar o cliente OpenLDAP (passo quatro).

Updating the package lists and installing the necessary OpenLDAP client packages

4. Agora, insira ldap://192.168.1.7 no campo Identificador de Recurso Uniforme do servidor LDAP, que direciona o cliente para o seu servidor OpenLDAP.

Setting the LDAP server Uniform Resource Identifier

5. Insira o DN da base de pesquisa (ou seja, dc=ata,dc=com) para operações LDAP.

Entering the DN of the search base

6. Escolha 3 para a versão LDAP a ser usada para segurança aprimorada e recursos

Selecting the preferred LDAP version

7. Em seguida, selecione Sim para dar ao usuário raiz privilégios de administrador de banco de dados.

Making local root a Database admin

8. Depois disso, escolha Não para gerenciamento de conta raiz para desabilitar o login do banco de dados LDAP.

Disabling the LDAP database login

9. Insira a conta LDAP para raiz (ou seja, cn=admin,dc=ata,dc=com). Essa configuração especifica a conta de administrador para gerenciar o LDAP.

Provide the LDAP account for the root

10. Forneça uma senha forte para a conta raiz LDAP (senha do administrador).

Provide an LDAP root account password

11. Após a configuração do cliente, abra o arquivo /etc/nsswitch.conf no editor de sua preferência (ou seja, nano ou vim) para configurar a switch de serviço de nome do seu sistema.

Este arquivo determina a ordem de prioridade para onde o sistema procura coisas como contas de usuários, grupos, hosts e serviços.

12. Altere o valor das seguintes linhas no arquivo /etc/nsswitch.conf para incluir o seguinte:

compat – Refere-se a arquivos locais como /etc/passwd.

ldap – Especifica o uso do LDAP.

Esta configuração permite o uso de autenticação de usuário LDAP e outras funções do sistema

passwd:         compat systemd ldap
group:          compat systemd ldap
shadow:         compat
Allowing the use of LDAP user authentication

13. Agora, abra o arquivo /etc/pam.d/common-password, localize e remova a opção use_authtok, conforme destacado abaixo, salve as alterações e feche o arquivo.

Esta ação permite ajustar as configurações de senha do PAM para usar a senha fornecida pelo usuário.

Adjusting the PAM password settings

14. Além disso, abra o arquivo /etc/pam.d/common-session, adicione a seguinte linha e salve e feche o arquivo.

Ao fazer login do usuário, esta configuração adiciona a criação automática do diretório doméstico para garantir que os diretórios domésticos dos usuários sejam criados com permissões apropriadas.

session optional pam_mkhomedir.so skel=/etc/skel umask=077
Adding automatic home directory creation upon user login

15. Por fim, execute o comando abaixo para reiniciar o Daemon de Cache de Serviço de Nome (nscd) e aplicar as alterações de configuração.

sudo systemctl restart nscd

Verificando sua Configuração do OpenLDAP

Com tudo em seu lugar, você deve garantir que seu servidor e configurações de cliente do OpenLDAP funcionem conforme o esperado. Você testará para confirmar que seu diretório LDAP é acessível, que os usuários podem se autenticar com sucesso e que os dados estão sendo recuperados e atualizados corretamente.

Para garantir a integridade e a funcionalidade de sua configuração do servidor e cliente do OpenLDAP, execute o seguinte:

Execute o comando ldapsearch a seguir para consultar seu diretório LDAP para todas as contas de usuário.

ldapsearch -x -H ldap://192.168.1.7 -b "dc=ata,dc=com"

Você verá uma saída que se parece com o seguinte, listando os detalhes de cada usuário. Essa saída indica que o servidor OpenLDAP responde corretamente às suas consultas de pesquisa.

Querying the LDAP directory for all user accounts

Por fim, tente fazer login (su) na conta de usuário myituser.

su - myituser

Um login bem-sucedido indica que a autenticação contra o servidor OpenLDAP está funcionando conforme o esperado.

? Uma mensagem de login bem-sucedido nem sempre pode ser mostrada; em vez disso, você pode ser simplesmente logado e apresentado com um novo prompt de comando, como mostrado abaixo. Se houver erros, eles serão exibidos e você permanecerá logado como o usuário atual.

Logging in as the myituser user

Conclusão

Você conseguiu! Seu servidor Ubuntu agora possui um sistema OpenLDAP totalmente operacional com um firewall seguro, um servidor web habilitado para PHP e uma interface elegante de Gerenciador de Contas LDAP.

Grupos e contas de usuário estão configurados, e seu cliente OpenLDAP está pronto para se conectar. Assim, você pode ter confiança no desempenho do seu servidor.

Agora, reserve um tempo para navegar na abrangente página de documentos oficial do OpenLDAP, repleta de dicas e truques valiosos. Além disso, por que não considerar aprender como fazer backup e restaurar seu servidor OpenLDAP para garantir a segurança de suas contas de usuário e configurações?

Source:
https://adamtheautomator.com/openldap/