
sobre OpenLDAP
OpenLDAP é um livre open source Light weight Directory Access protocol desenvolvido pelo projeto OpenLDAP. É um protocolo independente de plataforma, para que seja executado em todos os sistemas Linux / Unix, como Windows, AIX, Solaris e Android.
OpenLDAP inclui:
- slapd-daemon LDAP autônomo (servidor)
- bibliotecas que implementam o protocolo LDAP e utilitários, ferramentas e clientes de amostra.
neste tutorial, vamos ver como instalar o OpenLDAP e como configurá-lo no servidor Ubuntu / Debian. Testei este tutorial no Ubuntu 15.10, no entanto, essas etapas devem funcionar no Debian 7/8 e nas versões anteriores do Ubuntu, incluindo o Ubuntu 15.04/14.10/14.04 etc.
Aqui estão os detalhes do meu sistema de teste:
- sistema operacional: Ubuntu 15.10 servidor de 64 bits
- nome do host: servidor.unixmen.local
- Endereço IP : 192.168.1.103/24
Primeiro vamos ver como instalar o openLDAP.
instalar OpenLDAP no Ubuntu 15.10 / Debian 8
digite o seguinte comando no Terminal para instalar openldap.
mudar para usuário root:
sudo su
ou
su
execute o seguinte comando para instalar o OpenLDAP.
apt-get install slapd ldap-utils
durante a instalação, você será solicitado a definir a senha para a conta de administrador LDAP. Digite sua senha de administrador aqui.
digite novamente a senha.
OpenLDAP está instalado agora. Vamos para a tarefa de configuração.
configurar OpenLDAP
editar ” / etc / ldap / ldap.conf ” arquivo,
vi /etc/ldap/ldap.conf
encontre, descomente e substitua os valores ‘BASE’ e ‘URI’ pelo seu nome de domínio e endereço IP, conforme mostrado abaixo.
## LDAP Defaults## See ldap.conf(5) for details# This file should be world readable but not world writable.BASE dc=unixmen,dc=localURI ldap://server.unixmen.local ldap://server.unixmen.local:666#SIZELIMIT 12#TIMELIMIT 15#DEREF never# TLS certificates (needed for GnuTLS)TLS_CACERT /etc/ssl/certs/ca-certificates.crt
Salve e feche o arquivo.
em seguida, devemos reconfigurar o slapd com os valores atualizados.
dpkg-reconfigure slapd
a seguinte tela deve aparecer. Selecione ” Não ” e pressione Enter.
digite o nome de domínio DNS.
digite o nome da organização (ou seja, o nome da sua empresa).
Digite a senha de administrador LDAP que você criou na etapa anterior.
insira novamente a senha.
selecione o banco de dados de back-end. Eu vou com padrões.
selecione se deseja excluir o banco de dados automaticamente ou mantê-lo quando o slapd for removido. Aqui eu quero manter meu banco de dados antigo, então cliquei não.
selecione Sim para mover o banco de dados antigo.
selecione Não e pressione Enter.É isso que você precisa para fazer. Nós configuramos com sucesso o OpenLDAP. Vamos em frente e verificar se está funcionando ou não.
teste o servidor LDAP
execute o seguinte comando para testar o OpenLDAP:
ldapsearch -x
saída da amostra:
# extended LDIF## LDAPv3# base <dc=unixmen,dc=local> (default) with scope subtree# filter: (objectclass=*)# requesting: ALL## unixmen.localdn: dc=unixmen,dc=localobjectClass: topobjectClass: dcObjectobjectClass: organizationo: unixmendc: unixmen# admin, unixmen.localdn: cn=admin,dc=unixmen,dc=localobjectClass: simpleSecurityObjectobjectClass: organizationalRolecn: admindescription: LDAP administrator# search resultsearch: 2result: 0 Success# numResponses: 3# numEntries: 2
se você vir a mensagem de ‘sucesso’ em sua saída, então Parabéns! O servidor LDAP está funcionando!!
administração do servidor LDAP
a administração do servidor LDAP do modo de linha de comando é um pouco difícil. Não podemos memorizar todos os comandos LDAP. Portanto, usaremos uma ferramenta de administração GUI mais fácil chamada “phpldapadmin” para gerenciar, configurar e administrar o servidor LDAP.
instalar phpLDAPadmin
phpLDAPadmin é uma ferramenta de administração LDAP baseada na web para gerenciar seu servidor LDAP. Usando o phpLDAPadmin, você pode navegar em sua árvore LDAP, visualizar o esquema LDAP, realizar pesquisas, criar, excluir, copiar e editar entradas LDAP. Você pode até copiar entradas entre servidores.
digite o seguinte comando para instalar o phpLDAPAdmin:
apt-get install phpldapadmin
crie um link simbólico para o diretório phpldapadmin.
ln -s /usr/share/phpldapadmin/ /var/www/html/phpldapadmin
no Ubuntu 14.10 e versões inferiores, execute:
ln -s /usr/share/phpldapadmin/ /var/www/phpldapadmin
editar ” / etc / phpldapadmin / config.php ” arquivo,
vi /etc/phpldapadmin/config.php
Defina o fuso horário correto. Para fazer isso, encontre e descomente a seguinte linha e defina seu fuso horário.
$config->custom->appearance = 'Asia/Kolkata';
role para baixo e substitua os nomes de domínio por seus próprios valores.
para fazer isso, Encontre a seção “Definir servidores LDAP” no arquivo de configuração e edite as seguintes linhas, conforme mostrado abaixo.
// Set your LDAP server name //$servers->setValue('server','name','Unixmen LDAP Server');// Set your LDAP server IP address // $servers->setValue('server','host','192.168.1.103');// Set Server domain name //$servers->setValue('server','base',array('dc=unixmen,dc=local'));// Set Server domain name again//$servers->setValue('login','bind_id','cn=admin,dc=unixmen,dc=local');
reinicie o serviço apache.
systemctl restart apache2
no Ubuntu 14.10 e versões mais antigas, execute:
service apache2 restart
certifique-se de ter aberto a porta do servidor apache “80” e a porta padrão LDAP “389” na configuração do firewall/roteador.
ufw allow 80
saída da amostra:
Rules updatedRules updated (v6)
ufw allow 389
saída da amostra:
Rules updatedRules updated (v6)
as etapas acima não são necessárias para sistemas Debian.
teste phpLDAPadmin
abra seu navegador da web e navegue até: “http://IP-Address/phpldapadmin”.
a seguinte tela deve aparecer.
Clique em “login” no painel esquerdo. Digite a senha de administrador LDAP que você criou durante a instalação do OpenLDAP e clique em “Autenticar”.
agora a tela principal do console do phpldapadmin será aberta.
você pode ver o domínio LDAP ” unixmen.local ” e outros detalhes à esquerda.
a Partir daqui, você pode adicionar objetos adicionais, como Unidade Organizacional, Usuários e grupos, etc.
Criando Objetos
1. Criar unidade organizacional (OU):
permite criar alguns objetos de amostra a partir do console phpldapadmin. Primeiro, vamos criar uma UO.
clique no sinal ” + ” perto da linha “dc=unixmen” e clique no link “Criar nova entrada aqui”.
role para baixo e selecione “unidade Genérica-Organizacional”.
digite o nome da unidade organizacional (ex.vendas) e clique em “Criar objeto”.
por fim, clique em “Commit”.
Agora, você verá a OU recém-criada na seção principal do LDAP no painel esquerdo.
2. Criar Grupo:
clique na ou de vendas no painel esquerdo e clique no link “Criar uma entrada filho”.
na próxima janela, selecione “Genérico: Grupo Posix”.
digite o nome do grupo e clique no botão Criar objeto. Por exemplo, aqui eu insiro o nome do grupo como”sales-group”.
clique em Confirmar para salvar as alterações.
Agora você pode ver que o grupo recém-criado chamado “sales-group” na OU de vendas.
3. Criar Usuário:
agora, vamos criar um novo usuário em sales-group.
clique no grupo de vendas à esquerda. Selecione Criar um botão de Link de entrada filho.
na próxima janela, selecione “Generic: User Account”.
digite os detalhes do usuário, como nome comum, número GID, sobrenome, shell de Login, senha do Usuário e ID de usuário etc., como mostrado na captura de tela abaixo e clique em Criar objeto. Por exemplo. aqui vou criar um usuário chamado “kumar”.
e, em seguida, clique em “Commit” para salvar as alterações.
agora, o usuário recém-criado “kumar “será encontrado no objeto” sales-group”.
além disso, você pode verificar os objetos recém-criados são realmente existente com comando:
ldapsearch -x
Exemplo de saída:
# extended LDIF## LDAPv3# base <dc=unixmen,dc=local> (default) with scope subtree# filter: (objectclass=*)# requesting: ALL## unixmen.localdn: dc=unixmen,dc=localobjectClass: topobjectClass: dcObjectobjectClass: organizationo: unixmendc: unixmen# admin, unixmen.localdn: cn=admin,dc=unixmen,dc=localobjectClass: simpleSecurityObjectobjectClass: organizationalRolecn: admindescription: LDAP administrator# sales, unixmen.localdn: ou=sales,dc=unixmen,dc=localobjectClass: organizationalUnitobjectClass: topou: sales# sales-group, sales, unixmen.localdn: cn=sales-group,ou=sales,dc=unixmen,dc=localgidNumber: 500cn: sales-groupobjectClass: posixGroupobjectClass: top# kumar, sales-group, sales, unixmen.localdn: cn=kumar,cn=sales-group,ou=sales,dc=unixmen,dc=localcn:: IGt1bWFygidNumber: 500homeDirectory: /home/users/kumarsn: kumarloginShell: /bin/shobjectClass: inetOrgPersonobjectClass: posixAccountobjectClass: topuidNumber: 1000uid: kumar# search resultsearch: 2result: 0 Success# numResponses: 6# numEntries: 5
Como você pode ver na saída acima, os novos objetos, ou seja, ‘vendas’, ‘vendas-grupo’, e ‘kumar’ foram criados com êxito, sob o principal domínio LDAP. Da mesma forma, você pode criar quantos objetos quiser.
instalar e configurar o OpenLDAP no Debian e Ubuntu e derivados é realmente fácil e direto. Mesmo um usuário novato pode facilmente configurar um servidor LDAP funcionando dentro de uma hora.
agora o OpenLDAP Server está pronto para uso.
instalei e configurei com sucesso o servidor LDAP, e agora? Consulte nosso próximo artigo Como configurar clientes Linux para autenticar usando OpenLDAP.
boa sorte! Feliz fim de semana!!