4º Seminário de SoftwareLivre TcheLinux Pelotas                  Servidor de Autenticação                           Centra...
$ whoami       Thiago Finardi             Analista e Desenvolvedor de Sistemas             Coordenador da área de TI Senac...
echo $USER       1º Contato em 2003       Usuário GNU/Linux a 4 anos        Programador Cobol por 5 anos        Docente no...
OK deu, e o LDAP?                      Experiência com4 - OpenLDAP: Servidor de Autenticação Centralizada
Cronograma  O que é LDAP  Diretórios  Serviços de diretórios  Entendendo os diretórios  Atributos, ObjectClasses e Schemas...
4º Seminário de SoftwareLivre TcheLinux Pelotas                           LDAP
O que é LDAP      Lightweight Directory Access Protocol é um      conjunto de protocolos desenhados para      acessar info...
Características do LDAP      Funcionalidade sobre IPV4 e IPV6 (LDAP V3);      Leve e robusto;      Suporte a vários backen...
4º Seminário de SoftwareLivre TcheLinux Pelotas                           Diretórios
Diretórios        Quais são as características?        Quantidade de caracteres?        São compartilhamentos com fim de o...
Diretórios        Cada diretório, é um objeto no sistema de           arquivos que tem características próprias           ...
4º Seminário de SoftwareLivre TcheLinux Pelotas                  Serviço de Diretórios
Serviços de Diretórios?        “Um serviço que armazena e organiza           informações sobre os recursos e os usuários d...
4º Seminário de SoftwareLivre TcheLinux Pelotas                     Entendendo os                       Diretórios
Entendendo os Diretórios       Elimine quaisquer outros conceitos pré existentes;       Não estabeleça elos com base de da...
Entendendo os Diretórios    Raiz : dc=tchelinux,dc=org      Formato em dc=dominio,dc=foo,dc=bar    A partir da raiz todos ...
Entendendo os Diretórios    Diretórios com nomes diferentes:      ou=usuarios,dc=tchelinux,dc=org      ou=grupos,dc=tcheli...
Entendendo os Diretórios  Arquivos com nomes diferentes:    cn=”Thiago Finardi”, ou=usuarios,dc=tchelinux,dc=org    cn=”Pa...
Entendendo os Diretórios19 - OpenLDAP: Servidor de Autenticação Centralizada
4º Seminário de SoftwareLivre TcheLinux Pelotas                Atributos, ObjectClasses                       e Schemas
Atributos    ●   Um atributo é um campo que armazena uma        determinada informação;    ●   Definem regras para o tipo ...
Atributos    ●   Exemplo:        attributetype ( 1.3.6.1.1.1.1.3 NAME ’homeDirectory’        DESC ’The absolute path to th...
ObjectClasses    ●   ObjectClasses são compostas por um conjunto        de atributos;    ●   Possuem derivações, uma objec...
ObjectClasses    ●   Exemplo:         objectclass ( 1.3.6.1.1.1.2.0 NAME ’posixAccount’          DESC ’Abstraction of an a...
ObjectClasses    ●   O posixAccount é uma classe de objetos que        visa criar um usuário real de sistema. Perceba     ...
Objects ●   Um Object é um conjunto de ObjectClass e seus     atributos:     dn: cn="Thiago Finardi",ou=usuarios,dc=tcheli...
Schemas    ●   São os arquivos que contém todos os atributos        e todos os ObjectClass.    ●   São arquivos textuais p...
Schemas    ●   Os schemas são lidos pela base LDAP e assim        permite o uso dos campos nele definido.    ●   Quanto ma...
Atributos, ObjectClasses eSchemas    ●   Resumindo:        ●   Os schemas nada mais são do que arquivos texto            c...
4º Seminário de SoftwareLivre TcheLinux Pelotas                      Instalação e                      Configuração
Instalação    ●   Iniciando pela configuração correta do nome e        endereço IP da máquina antes de realizar a        i...
Configurando nome +domínio    ●   Altere o /etc/hostname        ●   ldap.tchelinux.org    ●   Alterar o /etc/hosts        ...
Instalação    ●   Instalando a partir dos repositórios:        ●   aptitude install slapd    ●   Um menu de configuração s...
4º Seminário de SoftwareLivre TcheLinux Pelotas                  Uso e Gerenciamento
Uso e Gerenciamento    ●   O uso e gerenciamento do OpenLDAP é feito        nativamente pelos seus comandos. Há dois      ...
Uso e Gerenciamento                            Mão na massa36 - OpenLDAP: Servidor de Autenticação Centralizada
4º Seminário de SoftwareLivre TcheLinux Pelotas                  Autenticando Serviços
Instalando o proftpd    ●   Para instalar o “proftpd” e sua documentação        execute o comando abaixo:        ●   aptit...
Configurando o proftpd    ●   Edite o arquivo de configuração do “proftpd”:        /etc/proftpd/proftpd.conf.        ●   U...
Configurando o proftpd ●   Para fazer o proftpd autenticar na base LDAP adicione     as seguintes linhas no arquivo /etc/p...
Finalizando ●   Para ativar o suporte a LDAP, edite o arquivo     “/etc/proftpd/modules.conf” e descomente a linha     22:...
Teste de funcionamento ●   Para testar a conexão basta estabelecer uma     conexão ftp com o comando:     ●   ftp ldap.tch...
4º Seminário de SoftwareLivre TcheLinux Pelotas                   Porque usar LDAP?
Vantagens do LDAP  Padrão aberto;  API bem definida com para várias linguagens de  programação  Esquemas (regras para arma...
Muito Obrigado!!                          Thiago Finardi                     email: tfinardi@gmail.com                    ...
Upcoming SlideShare
Loading in …5
×

Servidor de autenticação centralizada com OpenLDAP

2,229
-1

Published on

Palestra ministrada na Universidade Católica de Pelotas durante o 4º Seminário de Software Livre Tchê Linux Pelotas no dia 28/08/2010.

Published in: Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
2,229
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
73
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Servidor de autenticação centralizada com OpenLDAP

  1. 1. 4º Seminário de SoftwareLivre TcheLinux Pelotas Servidor de Autenticação Centralizada
  2. 2. $ whoami Thiago Finardi Analista e Desenvolvedor de Sistemas Coordenador da área de TI Senac Uruguaiana Sysadmin na G8 Sistemas de Informação www.g8si.com2 - OpenLDAP: Servidor de Autenticação Centralizada
  3. 3. echo $USER 1º Contato em 2003 Usuário GNU/Linux a 4 anos Programador Cobol por 5 anos Docente no curso Técnico em Informática Blog www.botecodigital.info3 - OpenLDAP: Servidor de Autenticação Centralizada
  4. 4. OK deu, e o LDAP? Experiência com4 - OpenLDAP: Servidor de Autenticação Centralizada
  5. 5. Cronograma O que é LDAP Diretórios Serviços de diretórios Entendendo os diretórios Atributos, ObjectClasses e Schemas Registros na base LDAP Instalação Uso e gerenciamento Autenticando serviços Conclusão
  6. 6. 4º Seminário de SoftwareLivre TcheLinux Pelotas LDAP
  7. 7. O que é LDAP Lightweight Directory Access Protocol é um conjunto de protocolos desenhados para acessar informação centralizada em uma rede; Define a forma de funcionamento de um serviço de diretórios ( critérios, mecanismos e métodos); Tem a função de verificar as credenciais do cliente;7 - OpenLDAP: Servidor de Autenticação Centralizada
  8. 8. Características do LDAP Funcionalidade sobre IPV4 e IPV6 (LDAP V3); Leve e robusto; Suporte a vários backends (SQL,BDB,PASSWD); Suporte a múltiplas instâncias de dados; Backup fácil Replicação (Slurpd e Syncrepl) Suporte a TLS/SSL8 - OpenLDAP: Servidor de Autenticação Centralizada
  9. 9. 4º Seminário de SoftwareLivre TcheLinux Pelotas Diretórios
  10. 10. Diretórios Quais são as características? Quantidade de caracteres? São compartilhamentos com fim de organização Regra Highlander: Só pode haver um.10 - OpenLDAP: Servidor de Autenticação Centralizada
  11. 11. Diretórios Cada diretório, é um objeto no sistema de arquivos que tem características próprias que o diferenciam das demais informações. A raiz do sistema é conhecida como ”/”11 - OpenLDAP: Servidor de Autenticação Centralizada
  12. 12. 4º Seminário de SoftwareLivre TcheLinux Pelotas Serviço de Diretórios
  13. 13. Serviços de Diretórios? “Um serviço que armazena e organiza informações sobre os recursos e os usuários de uma rede de computadores.” Catálogo, lista de recursos; Centralização de gestão dos recursos da rede; Simplificar a administração, backup e replicação; Centralizar é a palavra chave;13 - OpenLDAP: Servidor de Autenticação Centralizada
  14. 14. 4º Seminário de SoftwareLivre TcheLinux Pelotas Entendendo os Diretórios
  15. 15. Entendendo os Diretórios Elimine quaisquer outros conceitos pré existentes; Não estabeleça elos com base de dados SQL ou DB; Pense em diretório com o conceito mais simples; Arquivos e diretórios; Em uma base LDAP não se armazenam arquivos, mas sim recursos de rede.15 - OpenLDAP: Servidor de Autenticação Centralizada
  16. 16. Entendendo os Diretórios Raiz : dc=tchelinux,dc=org Formato em dc=dominio,dc=foo,dc=bar A partir da raiz todos os demais "diretórios" e "arquivos" serão armazenados Alguns objetos são diretórios que servem para organizar e outros objetos servem para armazenar diferentes tipos de informação.16 - OpenLDAP: Servidor de Autenticação Centralizada
  17. 17. Entendendo os Diretórios Diretórios com nomes diferentes: ou=usuarios,dc=tchelinux,dc=org ou=grupos,dc=tchelinux,dc=org OU = Organizational Unit Objeto para organizar, agrupar objetos. Faz o papel de diretório.17 - OpenLDAP: Servidor de Autenticação Centralizada
  18. 18. Entendendo os Diretórios Arquivos com nomes diferentes: cn=”Thiago Finardi”, ou=usuarios,dc=tchelinux,dc=org cn=”Palestrantes”,ou=grupos,dc=tchelinux,dc=org CN = Common Name Cada arquivo é classificado de acordo com seu conteúdo. Cada objeto será diferente de acordo com seu conteúdo.18 - OpenLDAP: Servidor de Autenticação Centralizada
  19. 19. Entendendo os Diretórios19 - OpenLDAP: Servidor de Autenticação Centralizada
  20. 20. 4º Seminário de SoftwareLivre TcheLinux Pelotas Atributos, ObjectClasses e Schemas
  21. 21. Atributos ● Um atributo é um campo que armazena uma determinada informação; ● Definem regras para o tipo de valor a ser armazenado;21 - OpenLDAP: Servidor de Autenticação Centralizada
  22. 22. Atributos ● Exemplo: attributetype ( 1.3.6.1.1.1.1.3 NAME ’homeDirectory’ DESC ’The absolute path to the home directory’ EQUALITY caseExactIA5Match SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE ) ● O atributo homeDirectory permite o armazenamento de textos e caracteres especiais.22 - OpenLDAP: Servidor de Autenticação Centralizada
  23. 23. ObjectClasses ● ObjectClasses são compostas por um conjunto de atributos; ● Possuem derivações, uma objectClass pode herdar atributos requeridos de outra;23 - OpenLDAP: Servidor de Autenticação Centralizada
  24. 24. ObjectClasses ● Exemplo: objectclass ( 1.3.6.1.1.1.2.0 NAME ’posixAccount’ DESC ’Abstraction of an account with POSIX attributes’ SUP top AUXILIARY MUST ( cn $ uid $ uidNumber $ gidNumber $ homeDirectory ) MAY ( userPassword $ loginShell $ gecos $ description ) ) ● MUST – Atributos obrigatórios ● MAY – Atributos opcionais24 - OpenLDAP: Servidor de Autenticação Centralizada
  25. 25. ObjectClasses ● O posixAccount é uma classe de objetos que visa criar um usuário real de sistema. Perceba os atributos. ● O conjunto de ObjectClasses e atributos são chamados de “schemas”25 - OpenLDAP: Servidor de Autenticação Centralizada
  26. 26. Objects ● Um Object é um conjunto de ObjectClass e seus atributos: dn: cn="Thiago Finardi",ou=usuarios,dc=tchelinux,dc=org uid: tfinardi sn: tfinardi objectClass: top objectClass: person objectClass: qmailUser homeDirectory: /home/tfinardi userPassword::c2VuaGEK cn: Thiago Finardi mail: tfinardi@gmail.com26 - OpenLDAP: Servidor de Autenticação Centralizada
  27. 27. Schemas ● São os arquivos que contém todos os atributos e todos os ObjectClass. ● São arquivos textuais puros que são lidos pelo OpenLDAP. ● Cada schema habilita um determinado tipo informação a ser armazenada na base. ● /etc/ldap/schema27 - OpenLDAP: Servidor de Autenticação Centralizada
  28. 28. Schemas ● Os schemas são lidos pela base LDAP e assim permite o uso dos campos nele definido. ● Quanto mais schemas sua base LDAP tiver, mais flexível ela será. ● Cada schema contém uma série de objetos e atributos para atender necessidades específicas de recursos específicos (Ex: Samba).28 - OpenLDAP: Servidor de Autenticação Centralizada
  29. 29. Atributos, ObjectClasses eSchemas ● Resumindo: ● Os schemas nada mais são do que arquivos texto contendo uma série de ObjectClasses. ● Os ObjectClasses nada mais são do que um conjunto de atributos ● Atributos nada mais são do que a definição lógica dos campos que podem ser utilizados em uma base LDAP.29 - OpenLDAP: Servidor de Autenticação Centralizada
  30. 30. 4º Seminário de SoftwareLivre TcheLinux Pelotas Instalação e Configuração
  31. 31. Instalação ● Iniciando pela configuração correta do nome e endereço IP da máquina antes de realizar a instalação do OpenLDAP. (FQDN) ● Porque essa configuração é importante? ● O nome do servidor é utilizado para compor o nome da raiz da base LDAP.31 - OpenLDAP: Servidor de Autenticação Centralizada
  32. 32. Configurando nome +domínio ● Altere o /etc/hostname ● ldap.tchelinux.org ● Alterar o /etc/hosts ● 192.168.0.1 ldap.tchelinux.org ● sysctl kernel.hostname=ldap.tchelinux.org32 - OpenLDAP: Servidor de Autenticação Centralizada
  33. 33. Instalação ● Instalando a partir dos repositórios: ● aptitude install slapd ● Um menu de configuração será aberto ● Defina a senha para a base ldap ● Cheque o sufixo da base em: ● /etc/ldap/slapd.conf33 - OpenLDAP: Servidor de Autenticação Centralizada
  34. 34. 4º Seminário de SoftwareLivre TcheLinux Pelotas Uso e Gerenciamento
  35. 35. Uso e Gerenciamento ● O uso e gerenciamento do OpenLDAP é feito nativamente pelos seus comandos. Há dois grupos de comandos: os do servidor e os do cliente. ● Comandos “slap” x comandos “ldap”, quais as diferenças entre eles? ● Instalando comandos ldap ● aptitude install ldap-utils35 - OpenLDAP: Servidor de Autenticação Centralizada
  36. 36. Uso e Gerenciamento Mão na massa36 - OpenLDAP: Servidor de Autenticação Centralizada
  37. 37. 4º Seminário de SoftwareLivre TcheLinux Pelotas Autenticando Serviços
  38. 38. Instalando o proftpd ● Para instalar o “proftpd” e sua documentação execute o comando abaixo: ● aptitude install proftpd proftpd-mod-ldap proftpd-doc ● Na primeira tela selecione “standalone”(solitário)38 - OpenLDAP: Servidor de Autenticação Centralizada
  39. 39. Configurando o proftpd ● Edite o arquivo de configuração do “proftpd”: /etc/proftpd/proftpd.conf. ● UseIPv6 off ● ServerName "FTP com OpenLDAP" ● DefaultRoot ~ As linhas alteradas foram: Linha 1 – Desativa o uso de Ipv6; Linha 3 – Mudança no banner apresentado durante o login via ftp; Linha 21 – Define que o diretório padrão, quando um usuário se logar, é o seu diretório “home”.39 - OpenLDAP: Servidor de Autenticação Centralizada
  40. 40. Configurando o proftpd ● Para fazer o proftpd autenticar na base LDAP adicione as seguintes linhas no arquivo /etc/proftpd/proftpd.conf. LDAPServer ldap.tchelinux.org LDAPDNInfo cn=admin,dc=tchelinux,dc=org sua_senha LDAPDoAuth on "ou=Usuarios,dc=tchelinux,dc=org" uid=%v LDAPUseTLS off40 - OpenLDAP: Servidor de Autenticação Centralizada
  41. 41. Finalizando ● Para ativar o suporte a LDAP, edite o arquivo “/etc/proftpd/modules.conf” e descomente a linha 22: ● LoadModule mod_ldap.c ● Reinicie o “proftpd”: ● /etc/init.d/proftpd restart41 - OpenLDAP: Servidor de Autenticação Centralizada
  42. 42. Teste de funcionamento ● Para testar a conexão basta estabelecer uma conexão ftp com o comando: ● ftp ldap.tchelinux.org ● OBSERVAÇÃO: o usuário somente será capaz de logar no servidor FTP se o diretório “home” dele existir.42 - OpenLDAP: Servidor de Autenticação Centralizada
  43. 43. 4º Seminário de SoftwareLivre TcheLinux Pelotas Porque usar LDAP?
  44. 44. Vantagens do LDAP Padrão aberto; API bem definida com para várias linguagens de programação Esquemas (regras para armazenamento) padronizados para diferentes funções; Permite a consolidação de informações de várias fontes(email,samba,squid,apache,ftp,radius,etc.); Implementa ACLs Facilmente replicável e distribuível.
  45. 45. Muito Obrigado!! Thiago Finardi email: tfinardi@gmail.com Blog: www.botecodigital.info Twitter: @tfinardi Palestra: www.g8si.com/finardi
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×