Serviço LDAP no Debian: mudanças entre as edições

De Eriberto Wiki
Ir para navegação Ir para pesquisar
Sem resumo de edição
Linha 23: Linha 23:


'''Tela (1):''' Omitir a configuração do servidor OpenLDAP?
'''Tela (1):''' Omitir a configuração do servidor OpenLDAP?
* Nesta tela deverá ser respondido ''Não'', para que possamos continuar a configuração detalhada do LDAP.


* Nesta tela deverá ser respondido ''Não'', para que possamos continuar a configuração detalhada do LDAP.


'''Tela (2):''' Nome do domínio DNS
'''Tela (2):''' Nome do domínio DNS
Linha 30: Linha 30:
* Aqui deverá ser digitado o domínio da rede que terá os seus usuários cadastrados no LDAP. Apenas como exemplo, ''darknet.com.br''. O LDAP transformará isso em ''dc=darknet,dc=com,dc=br''.
* Aqui deverá ser digitado o domínio da rede que terá os seus usuários cadastrados no LDAP. Apenas como exemplo, ''darknet.com.br''. O LDAP transformará isso em ''dc=darknet,dc=com,dc=br''.
* A abreviatura ''dc'' significa ''Domain Component''.
* A abreviatura ''dc'' significa ''Domain Component''.


'''Tela (3):''' Nome da organização
'''Tela (3):''' Nome da organização
Linha 35: Linha 36:
* Neste ponto deverá ser informado o nome da organização. Exemplo: ''Darknet Redes e Solucoes''
* Neste ponto deverá ser informado o nome da organização. Exemplo: ''Darknet Redes e Solucoes''
* É importante não usar acentuação ou cedilha neste passo.
* É importante não usar acentuação ou cedilha neste passo.


'''Tela (4):''' Senha do administrador
'''Tela (4):''' Senha do administrador
Linha 40: Linha 42:
* Agora deverá ser digitada a senha definitiva do ''admin'', que será o usuário administrador do LDAP.
* Agora deverá ser digitada a senha definitiva do ''admin'', que será o usuário administrador do LDAP.
* Preocupe-se em utilizar uma senha forte e confiável.
* Preocupe-se em utilizar uma senha forte e confiável.


'''Tela (5):''' "Backend" de base de dados a ser usado
'''Tela (5):''' "Backend" de base de dados a ser usado
Linha 48: Linha 51:




(7) Não, a não ser (/var/lib/ldap)
'''Tela (6):''' Você deseja que a base de dados seja removida quando o pacote slapd for expurgado ("purge")?
(8) Sim
 
(9) Não
* Esta será uma decisão pessoal do admnistrador. A base de dados, que fica em ''/var/lib/ldap'', deverá ser deletada, caso o pacote de instalação do LDAP seja removido via ''apt-get purge''?
* Se esta for a sua máquina LDAP definitiva, sugiro responder ''não'', a fim de evitar acidentes.
 
 
'''Tela (7):''' Mover a base de dados antiga?
 
* Esta base de dados antiga foi criada no momento da instalação do LDAP e está vazia. Como o LDAP está sendo reconfigurado, ela deverá ser removida para evitar conflitos. Responda ''Sim''.
 
 


Instalação completa. Para ver o resultado:
Instalação completa. Para ver o resultado:

Edição das 07h52min de 6 de fevereiro de 2014

Este artigo foi baseado em Debian Wheezy.

O que é o LDAP?

Existem milhares de definições sobre LDAP nos livros e páginas da Internet. No entanto, para um rápido entendimento, seria mais fácil dizer que LDAP é um banco de dados que segue padrões descritos em RFCs. É como se estivéssemos trabalhando com um banco que tivesse campos com nomes predefinidos.

O objetivo principal deste arquivo é mostrar como configurar o LDAP em um Debian e, a seguir, como realizar a conexão de clientes via PAM.

Instalação do LDAP

Primeiramente, deveremos instalar o servidor e pacote de comandos básicos.

# apt-get install slapd ldap-utils

Pacote slapd contém...

Depois de emitido o comando de instalação, uma janela surgirá, solicitando uma senha de administrador para o usuário admin. Utilize a senha 123, pois teremos que trocá-la logo em seguida. O próximo passo será fazer um configuração mais detalhada do LDAP. Para isso, emita o comando:

# dpkg-reconfigure slapd

A partir deste ponto, teremos uma sequência de telas com perguntas.

Tela (1): Omitir a configuração do servidor OpenLDAP?

  • Nesta tela deverá ser respondido Não, para que possamos continuar a configuração detalhada do LDAP.


Tela (2): Nome do domínio DNS

  • Aqui deverá ser digitado o domínio da rede que terá os seus usuários cadastrados no LDAP. Apenas como exemplo, darknet.com.br. O LDAP transformará isso em dc=darknet,dc=com,dc=br.
  • A abreviatura dc significa Domain Component.


Tela (3): Nome da organização

  • Neste ponto deverá ser informado o nome da organização. Exemplo: Darknet Redes e Solucoes
  • É importante não usar acentuação ou cedilha neste passo.


Tela (4): Senha do administrador

  • Agora deverá ser digitada a senha definitiva do admin, que será o usuário administrador do LDAP.
  • Preocupe-se em utilizar uma senha forte e confiável.


Tela (5): "Backend" de base de dados a ser usado

  • O LDAP utiliza um sistema de banco de dados para armazenar as informações. Nesta fase, um sistema deverá ser escolhido.
  • Atualmente, a opção recomendada é o HDB, que é baseado no antigo BDB.
  • É interessante ressaltar que o HDB está em fase de substituição pelo MDB. Caso esta opção esteja disponível, use-a. Caso contrário, selecione o HDB.


Tela (6): Você deseja que a base de dados seja removida quando o pacote slapd for expurgado ("purge")?

  • Esta será uma decisão pessoal do admnistrador. A base de dados, que fica em /var/lib/ldap, deverá ser deletada, caso o pacote de instalação do LDAP seja removido via apt-get purge?
  • Se esta for a sua máquina LDAP definitiva, sugiro responder não, a fim de evitar acidentes.


Tela (7): Mover a base de dados antiga?

  • Esta base de dados antiga foi criada no momento da instalação do LDAP e está vazia. Como o LDAP está sendo reconfigurado, ela deverá ser removida para evitar conflitos. Responda Sim.


Instalação completa. Para ver o resultado:

$ ldapsearch -xb dc=darknet,dc=com,dc=br

Migrando uma base passwd/shadow/group

Procedimentos na máquina que contém os usuários

# apt-get install migrationtools

edite /etc/migrationtools/migrate_common.ph

procure as linhas

$DEFAULT_MAIL_DOMAIN = "padl.com";
$DEFAULT_BASE = "dc=padl,dc=com";

alterar

$DEFAULT_MAIL_DOMAIN = "darknet.com.br";
$DEFAULT_BASE = "dc=darknet,dc=com,dc=br";

Criar arquivos secundários do /etc/passwd e /etc/group (se precisar do group). O shadow será lido. No Debian começa em 1000.

# awk -F: '$3 > 999' /etc/passwd | sort -nt: -k 3 > /tmp/passwd.new

Se for o caso

# awk -F: '$3 > 999' /etc/group | sort -nt: -k 3 > /tmp/group.new

Alterar 999 para 499 em outras distros.

Criar arquivos no formato ldif. Executar dentro do dir do mt.

# cd /usr/share/migrationtools
# ./migrate_passwd.pl /tmp/passwd.new /tmp/passwd.ldif

Observe o conteúdo do arquivo /tmp/passwd.ldif. Os hashes das senhas dos usuários deverão existir, significando que as mesmas foram exportadas.

Mover para a máquina servidora ldap e apagar o arquivo em /tmp.

Procedimentos na máquina com serviço LDAP

A seguir, deveremos gerar um arquivo que será utilizado para estabelecer a área da árvore LDAP que receberá os usuários. Assim, dentro do diretório /tmp, crie o arquivo people.ldif com o seguinte conteúdo:

dn: ou=People,dc=darknet,dc=com,dc=br
ou: People
objectclass: organizationalUnit
fazer grupo tb

Ainda dentro de /tmp, importar os usuários para a base:

# ldapadd -WD "cn=admin,dc=darknet,dc=com,dc=br" -f people.ldif

Será pedida a senha de administrador e ocorrerá a consequente importação. A sequir,

# ldapadd -WD "cn=admin,dc=darknet,dc=com,dc=br" -f /tmp/passwd.ldif

Importado. Verificação:

# ldapsearch -xb dc=darknet,dc=com,dc=br

Se for o caso

# ./migrate_group.pl /tmp/group.new /tmp/group.ldif

Adicionando usuários na base

Configuração dos clientes

  1. apt-get install --no-install-recommends libnss-ldap

telas

  1. apt-get install libpam-ldap

telas

configurar host nos arquivos

backup do pam

alterar pam (mkhome SFC)

alterar nsswitch

arquivos de senhas

phpldapadmin

Usar versão do Wheezy.