Serviço de diretório com OpenLDAP [7 e final?]: Ldap Account Manager

Olá amigos!. Não queríamos publicar este artigo porque está contido no compêndio em formato PDF que muitos leitores solicitaram. Sim, vamos escrever um resumo com adições interessantes. E como uma prévia desse compêndio, transcrevemos o Introdução:

Muitos responsáveis ​​pelos serviços em redes empresariais, quando assumem o comando de uma rede cujos serviços são baseados em produtos Microsoft, se desejam migrar para o Linux, consideram a migração de Controladores de Domínio entre outros serviços.

Se eles não escolherem um produto de terceiros, como ClearOS ou Zentyal, ou se por outras razões quiserem se tornar independentes, eles assumem a árdua tarefa de se tornarem seus próprios Controladores de Domínio, ou do Samba 4 -ou outro- seus próprios Active Directory.

Então começam os problemas e algumas outras decepções. Erros operacionais. Não encontram a localização dos problemas para poder resolvê-los. Tentativas de instalação repetidas. Operações parciais dos serviços. E uma longa lista de problemas.

Se olharmos de perto, a maior parte da Internet não usa redes do tipo Microsoft. No entanto, em nosso ambiente de negócios fazemos, muito.

Com este compêndio tentamos mostrar que podemos construir uma rede empresarial sem a filosofia da Microsoft. Serviços baseados na autenticação de usuários em um diretório OpenLDAP, como: E-Mail, FTP, SFTP, Business Cloud baseado em Owncloud, etc.

Aspiramos oferecer uma abordagem diferenciada baseada em Software 100% Livre, e que não utilize ou emule -o que para o caso é o mesmo- a filosofia das redes Microsoft, seja com Software Microsoft, seja com OpenLDAP e Samba como principais.

Todas as soluções que utilizam o software livre Openldap + Samba passam obrigatoriamente pelos conhecimentos básicos do que é um servidor LDAP, como se instala, como se configura e administra, etc. Mais tarde, eles integram Samba e possivelmente Kerberos, e no final nos oferecem "emular" um Controlador de Domínio no estilo do NT 4 da Microsoft ou um Active Directory.

Tarefa difícil quando o implementamos e configuramos a partir dos pacotes do repositório. Quem estudou e aplicou a extensa documentação do Samba sabe muito bem o que queremos dizer. O Samba 4 ainda propõe a administração do seu Active Directory utilizando o clássico console de administração que encontramos em um Microsoft Active Directory, seja ele 2003 ou outro mais avançado.

Leitura recomendada.

https://wiki.debian.org/LDAP
Guia do administrador do software OpenLDAP 2.4
Guia do Servidor Ubuntu 12.04
Configuração de servidor com GNU / Linux.

Excelente manual que o El Maestro, Joel Barrios Dueñas nos dá e que serve muito bem aos jogadores Debian, embora seja orientado para CentOS e Red Hat.

Quais serviços e software planejamos instalar e configurar?

  • NTP, DNS e DHCP independentes, ou seja, os dois últimos não estão integrados ao Diretório
  • Serviço de diretório ou «Serviço de Diretório»Baseado em OpenLDAP
  • E-mail, "Citadel" Group Work Suite, FTP e SFTP,
  • Business Cloud «OwnCloud«
  • Servidor de arquivos independente baseado em Samba.

Em todos os casos, o processo de autenticação das credenciais dos usuários será realizado diretamente no Diretório, ou por meio libnss-ldap y PAM dependendo das características do software em questão.

E, sem mais delongas, vamos ao que interessa.

Gerente de conta Ldap

Antes de continuar, devemos ler:

Quem acompanhou a série de artigos anteriores terá notado que JÁ temos um Diretório para administrar. Podemos conseguir isso de várias maneiras, seja por meio dos utilitários do console agrupados no pacote ldapscripts, as interfaces da web phpLDAPadmin, Gerente de conta Ldap, etc., que estão no repositório.

Também existe a possibilidade de fazê-lo através do Estúdio de diretório Apache, que devemos baixar da Internet. Ele pesa cerca de 142 megabytes.

Para gerenciar nosso diretório, recomendamos fortemente o uso do Gerente de conta Ldap. E a primeira coisa que vamos dizer sobre isso, é que após sua instalação, podemos acessar seu documentação que está localizado na pasta / usr / share / doc / ldap-account-manager / docs.

por Gerente de conta Ldap, daqui em diante LAM, podemos gerenciar contas de usuários e grupos armazenados em nosso diretório. O LAM é executado em qualquer servidor de página da web que suporte PHP5, e podemos nos conectar a ele por meio de um canal não criptografado ou por meio de IniciarTLS, que é o formulário que usaremos em nosso exemplo.

Instalação e configuração iniciais:

: ~ # aptitude install ldap-account-manager

Após a instalação do Apache2 -apache2-mpm-prefork-, do PHP5 e outras dependências, e do próprio pacote gerenciador de contas ldap, a primeira coisa que devemos fazer é criar um link simbólico da pasta de documentação do LAM para a pasta raiz dos documentos em nosso servidor web. Exemplo:

: ~ # ln -s / usr / share / doc / ldap-account-manager / docs / manual / / var / www / lam-docs

Desta forma, garantimos o acesso ao manual do LAM através de um navegador web, se apontarmos para o endereço http://mildap.amigos.cu/lam-docs.

A seguir, vamos começar a configurar o próprio LAM. Em um navegador, apontamos para http://mildap.amigos.cu/lam.

  • Clicamos no link "Configuração LAM".
  • Clique no link "Editar perfis de servidor".
  • Nós digitamos a senha 'Eles' sem as aspas.

Nas páginas de configuração do LAM, podemos modificar muitos parâmetros de acordo com nossas preferências e necessidades. Como sempre recomendei ir do Simples ao Complexo, e não o contrário, tocaremos apenas no estritamente necessário para usar a poderosa ferramenta que é o LAM. Se depois de nos tornarmos Mestres na sua utilização, quisermos modificar ou adicionar funcionalidades, seja bem-vindo.

  • Ative TLS: sim -Recomendado-.
  • Sufixo da árvore: dc = amigos, dc = cu
  • Idioma padrão: Espanhol (Espanha)
  • Lista de usuários válidos *: cn = admin, dc = amigos, dc = cu
  • Nova senha: senha diferente de lam
  • Digite novamente a senha: senha diferente de lam

Nota: O ' * 'significa que é uma entrada obrigatória.

No canto inferior esquerdo estão os botões ^ Salvar y ^ Cancelar. Se salvarmos as alterações agora, isso nos levará de volta à página inicial e podemos ver que o idioma já mudou e que o nome do usuário agora é admin. Antes era Novos Negócios. No entanto, vamos voltar a editar o -agora em espanhol- "Configuração. da LAM ». Depois de voltarmos à página de configuração, faremos o seguinte:

  • Nós selecionamos a guia 'Tipos de contas'.
  • Na seção 'Tipos de contas ativas' -> 'Usuários' -> 'Sufixo LDAP', nós escrevemos: ou = Pessoas, dc = amigos, dc = cu.
  • Na seção 'Tipos de contas ativas' -> 'Grupos' -> 'Sufixo LDAP', nós escrevemos: ou = Grupos, dc = amigos, dc = cu.
  • Usando os botões intitulados '^ Remover este tipo de conta', eliminamos aqueles correspondentes a 'Equipes' y 'Domínios Samba', que não usaremos.
  • Nós selecionamos a guia 'Módulos'.
  • En 'Comercial', na lista 'Módulos selecionados', movemos o módulo 'Samba 3 (sambaSamAccount)' para a lista de 'Módulos Disponíveis'.
  • En 'Grupos', na lista 'Módulos selecionados', movemos o módulo 'Samba 3 (sambaGroupMapping)' para a lista de 'Módulos Disponíveis'.

Por enquanto, e até que nos familiarizemos com a configuração do LAM, vamos deixar por isso mesmo.

Salvamos as alterações e voltamos à página inicial, onde devemos digitar a senha do usuário admin (cn = admin, dc = amigos, dc = cu), declarado durante a instalação do bofetada. Se você retornar um erro, verifique se o /etc/ldap/ldap.conf ele está configurado corretamente no próprio servidor. Você pode ter o caminho errado para o certificado TLS ou outro erro. Lembre-se de que deve ser assim:

BASE dc = amigos, dc = cu URI ldap: //mildap.amigos.cu # Certificados TLS (necessários para GnuTLS) TLS_CACERT /etc/ssl/certs/cacert.pem

Uma vez dentro do LAM, devemos passar algum tempo estudando-o ANTES de alterar qualquer configuração. Sua interface é muito intuitiva e fácil de usar. Use-o e verifique.

Observação: No documento http://mildap.amigos.cu/lam-docs/ch02s02.html#confTypicalScenarios, podemos ler no final:

Diretório LDAP único com muitos usuários (> 10)
O LAM foi testado para funcionar com 10 usuários. Se você tiver muito mais usuários, terá basicamente duas opções.

  • Divida sua árvore LDAP em unidades organizacionais: geralmente é a opção de melhor desempenho. Coloque suas contas em várias unidades organizacionais e configure o LAM como no cenário avançado acima.
  • Aumentar o limite de memória: Aumente o parâmetro memory_limit em seu php.ini. Isso permitirá que o LAM leia mais entradas. Mas isso diminuirá os tempos de resposta do LAM.

Sejamos criativos e ordeiros na administração de nossa diretoria.

Políticas de segurança de senha e outros aspectos por meio do LAM

  • Clicamos no link «Configuração LAM».
  • Clique no link "Editar configurações gerais".
  • Nós digitamos a senha 'Eles' sem as aspas.

E nessa página encontramos as Políticas de Senha, Preferências de Segurança, Hosts Permitidos e outros.

Nota: A configuração LAM é salva em /usr/share/ldap-account-manager/config/lam.conf.

Habilitamos https para se conectar ao LAM com segurança:

: ~ # a2ensite default-ssl
: ~ # a2enmod ssl
: ~ # /etc/init.d/apache2 restart

Quando habilitamos o https da forma anterior, estamos trabalhando com os certificados que o Apache gera por padrão e os reflete na definição de seu host virtual default-ssl. Se quisermos usar outros certificados gerados por nós mesmos, por favor, deixe-nos consultar /usr/share/doc/apache2.2-common/README.Debian.gz. Os certificados em questão são chamados "Óleo de cobra" o Óleo de cobra, e eles são encontrados em:

/etc/ssl/certs/ssl-cert-snakeoil.pem
/etc/ssl/private/ssl-cert-snakeoil.key

Vamos apontar o navegador para https://mildap.amigos.cue aceitamos o certificado. Então apontamos para https://mildap.amigos.cu/lam e já podemos trabalhar através do https do LAM.

Importante: se durante o processo de inicialização do servidor, o Exim leva muito tempo para iniciar, instale o substituto leve smtp.

: ~ # aptitude install ssmtp
 Os seguintes NOVOS pacotes serão instalados: ssmtp {b} 0 pacotes atualizados, 1 novo instalado, 0 para remover e 0 não atualizado. Preciso baixar 52,7 KB de arquivos. Após descompactar, será usado 8192 B. Dependências dos seguintes pacotes não são satisfeitas: exim4-config: Conflitos: ssmtp mas 2.64-4 serão instalados. exim4-daemon-light: Conflitos: mail-transport-agent que é um pacote virtual. ssmtp: Conflicts: mail-transport-agent que é um pacote virtual. As seguintes ações resolverão essas dependências Remova os seguintes pacotes: 1) exim4 2) exim4-base 3) exim4-config 4) exim4-daemon-light Você aceita esta solução? [S / n / q /?] E

Em seguida, executamos:

: ~ # aptitude purge ~ c: ~ # aptitude clean: ~ # aptitude autoclean: ~ # reboot

Se você estiver trabalhando com servidores virtuais, este seria um ótimo momento para fazer um bom backup de todo o servidor principal ... só para garantir. 🙂

Replicação. Salve e restaure o banco de dados do Directory.

No excelente guia -que recomendamos a todos que leiam e estudem- «Guia do servidor Ubuntu»Do Ubuntu Server 12.04« Preciso », vem uma explicação detalhada de partes do código que escrevemos sobre OpenLDAP e geração de certificados TLS, e também lida em muitos detalhes com Replicação de Diretório e como fazer Salvar e Restaurar os bancos de dados.

No entanto, aqui está um procedimento para restaurar todo o banco de dados no caso de um desastre.

Muito importante:

Devemos SEMPRE ter o arquivo exportado em mãos através do Ldap Account Manager como um backup de nossos dados. Claro, o arquivo cn = amigos.ldif deve corresponder à nossa própria instalação. Também podemos obtê-lo por meio do comando slapcat, como veremos mais tarde.

1.- Eliminamos apenas a instalação slapd.

: ~ # aptitude purge slpad

2.- Limpamos o sistema de embalagem

: ~ # aptitude install -f: ~ # aptitude purge ~ c: ~ # aptitude clean: ~ # aptitude autoclean

3.- Eliminamos completamente a base de dados do Directory

: ~ # rm -r / var / lib / ldap / *

4.- Reinstalamos o daemon slapd e suas dependências

: ~ # aptitude install slapd

5.- Nós verificamos

: ~ # ldapsearch -Q -LLL -Y EXTERNO -H ldapi: /// -b cn = config dn: ~ # ldapsearch -x -LLL -H ldap: /// -b dc = amigos, dc = cu dn

6.- Adicione o mesmo arquivo de índice olcDbIndex.ldif

: ~ # ldapmodify -Y EXTERNAL -H ldapi: /// -f ./olcDbIndex.ldif

7.- Verificamos os índices adicionados

: ~ # ldapsearch -Q -LLL -Y EXTERNO -H ldapi: /// \ -b cn = config '(olcDatabase = {1} hdb)' olcDbIndex

8.- Adicionamos a mesma regra de controle de acesso

: ~ # ldapmodify -Y EXTERNAL -H ldapi: /// -f ./olcAccess.ldif

9.- Verificamos as Regras de Controle de Acesso

: ~ # ldapsearch -Q -LLL -Y EXTERNO -H ldapi: /// \ -b cn = config '(olcAccess = *)' olcAccess olcSuffix

10.- Adicionamos os Certificados TLS. Não há necessidade de reconstruir ou corrigir permissões. Eles já existem no sistema de arquivos, mas não são declarados no banco de dados.

: ~ # ldapmodify -Y EXTERNAL -H ldapi: /// -f /etc/ssl/certinfo.ldif

11.- Adicionamos o conteúdo de acordo com nosso próprio backup

: ~ # ldapadd -x -D cn = admin, dc = amigos, dc = cu -W -f dc = amigos.ldif

NÃO reinicie o slapd porque ele está indexando o banco de dados e pode estar corrompido !!! SEMPRE edite seu arquivo de backup ANTES de adicioná-lo, para evitar inserir entradas existentes.

Apontamos em um navegador para https://mildap.amigos.cu/lam e nós verificamos.

O comando slapcat

Comando tapa É usado principalmente para gerar em formato LDIF, o conteúdo do banco de dados que lida com o bofetada. O comando abre o banco de dados determinado por seu número ou sufixo e grava o arquivo correspondente no formato LDIF na tela. Os bancos de dados configurados como subordinados também são mostrados, a menos que especifique a opção -g.

A limitação mais importante do uso deste comando é que ele não deve ser executado quando o bofetada, pelo menos no modo de gravação, para garantir a consistência dos dados.

Por exemplo, se quisermos fazer uma cópia de backup do banco de dados do Directory, para um arquivo chamado backup-slapd.ldif, nós executamos:

: ~ # serviço slapd stop: ~ # slapcat -l backup-slapd.ldif: ~ # serviço slapd start

Imagens LAM

lam-01

lam-02

lam-03

lam-04

lam-05

lam-06


Deixe um comentário

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

*

*

  1. Responsável pelos dados: Miguel Ángel Gatón
  2. Finalidade dos dados: Controle de SPAM, gerenciamento de comentários.
  3. Legitimação: Seu consentimento
  4. Comunicação de dados: Os dados não serão comunicados a terceiros, exceto por obrigação legal.
  5. Armazenamento de dados: banco de dados hospedado pela Occentus Networks (UE)
  6. Direitos: A qualquer momento você pode limitar, recuperar e excluir suas informações.

  1.   jose antonio dito

    Grande contribuição, adorei, e também as leituras recomendadas.
    Ele estava procurando um artigo semelhante sem muito sucesso.

    Eu te dou um 10 😉

    1.    federico dito

      Obrigado por comentar e avaliar meus artigos !!!

  2.   vamos usar linux dito

    Interessante! Mais uma vez, excelente contribuição, Fico!
    Abraço! Paulo.

    1.    federico dito

      Muito obrigado pelo seu comentário e elogio, amigo Pablo !!! Espero que seja útil para aqueles que precisam.

  3.   vidagnu dito

    Excelente conteúdo! Obrigado novamente por compartilhar.

    lembranças

    1.    federico dito

      Obrigado por comentar !!!

  4.   caçador dito

    Homerun Fico !! E o pdf oficial de quando estará pronto?

    1.    federico dito

      Saudações dhunter !!!. Imagine que além de conter os 7 posts publicados até agora, vou incluir como integrar um servidor de e-mail básico baseado no CITADEL; FTP, serviços SFTP; uma Business Cloud baseada em OwnCloud; um servidor Samba independente com usuários do sistema via libnss-ldap e PAM e assim por diante. Tire suas próprias conclusões. 🙂 Acho que no final de março ou início de abril.

      1.    Guzmanweb dito

        Olá Federico, obrigado pela contribuição, estaremos ansiosos por isso. com a atualização ..

        1.    federico dito

          Farei um esforço para terminá-lo até o final deste mês. Não é nada fácil escrever um livro, mesmo que tenha apenas algumas páginas.

  5.   nexus6 dito

    Só posso dizer que dos colaboradores deste blog, vocês me parecem ser os mais interessantes, os mais bem explicados e os mais próximos de TODOS.

    1.    federico dito

      Muito obrigado para sua revisão. Em cada artigo que escrevo, faço o possível, pois sei que sempre há leitores como você, apesar de muitos que não comentam.
      Saudações Nexus6 !!!

  6.   edgar dito

    Boa tarde, sempre que consulto a rede sobre ldap encontro vocês dando recomendações, as quais parabenizo pela intenção, agora sou novo nisso e gosto de todos ansiosos por aprender
    Esta é a questão
    Meus amigos me disseram que quando a rede é desconectada, o sistema operacional já autenticado com ldap muda meu idioma para inglês para que você possa me dizer onde devo verificar qual arquivo verificar para que seja em espanhol que meu usuário já foi reinicializado adicionado no LDAP antecipadamente, obrigado por ajudar

  7.   pedrop dito

    Excelente post de Federico como sempre. Estava lendo que você estava comentando algo relacionado a um PDF com a configuração da maioria dos serviços telemáticos usados ​​em uma rede empresarial. Você disse que até o final de março ou início de abril do ano passado estaria pronto. Minha dúvida é se naquela hora você conseguiu finalizar e fazer o upload? Desde já agradeço, no final vou testar o Openfire, vejo que tem até uma interface web para o 9090.

    1.    Federico A. Valdés Toujague dito

      Obrigado pelos seus comentários, Pedro Pablo. Em vez de lhe responder extensivamente, escrevi um artigo que você lerá hoje ou amanhã. Leitores gratos como você merecem uma resposta. Obrigado novamente.