Você está na página 1de 26

Entendendo o OpenLDAP

Por GABRIEL STEIN

CONCEITOS ABORDADOS
Conceito de diretrio / Servio de diretrio Organizao Hierrquica - rvore LDAP Histrico Caractersticas Atributos ObjectClasses Schemas Entrada DNs Arquivos LDIF Daemons e Configuraes Integraes

Gabriel Stein - gabriel@gabrielstein.org

Entendendo o OpenLDAP

CONCEITO DE DIRETRIO

Diretrios so utilizados como centralizadores de dados; Dados so: Nome, Email, Telefone, Endereo ...

RE DE

um cliente do diretrio

DADOS: Nome, Email Um usurio do diretrio Gabriel Stein - gabriel@gabrielstein.org Servidor de diretrio Entendendo o OpenLDAP

SERVIO DE DIRETRIO

Banco de Dados (NO RELACIONAL) para rpida leitura; Informaes descritivas; Organizao Hierrquica(rvore);

Otimizao para atender um grande nmero de requisies;

Exemplos: DNS, OpenLDAP e Novell eDirectory


Entendendo o OpenLDAP

Gabriel Stein - gabriel@gabrielstein.org

Organizao Hierrquica: rvore


dn:dc=tchelinux,dc=org dc=org
Domain OrganizationalUnit

dc=tchelinux

ou=palestrantes

ou=organizacao

cn:Gabriel Stein Person sn:Stein description:Entendendo OpenLDAP


Gabriel Stein - gabriel@gabrielstein.org Entendendo o OpenLDAP

LDAP

Interface de Acesso para o X.500

Lightweight Directory Acess Protocol(LDAP) Protocolo Leve para acessar servios de diretrio;

LDAP = Evoluo do DAP = Directory Access Protocol;

Conjunto de 4 modelos que servem de guia no uso do diretrio(Informao,Nomes,Funcional,Segurana)

Gabriel Stein - gabriel@gabrielstein.org

Entendendo o OpenLDAP

LEVE? EVOLUO DO DAP?


DAP(X.500) - OSI
Aplicao Apresentao Sesso Transporte Rede Enlace Fsica Enlace Fsica

LDAP - TCP/IP
Aplicao Transporte

Gabriel Stein - gabriel@gabrielstein.org

Entendendo o OpenLDAP

OPENLDAP - Histrico
Comecou a ser desenvolvido pela Universidade de Michigan, mas foi descontinuado em 1996 (U-Mich LDAP v.3.3);

AGOSTO 1998:A empresa Net Boolean, que hospedava servios de e-mails para companhias utilizando softwarelivre (Apache, FreeBSD,U-Mich LDAP, etc.) fundou o projeto OpenLDAP, com o objetivo: to provide open source LDAP software and information

No mesmo ms, foi lanado o OpenLDAP 1.0;

Gabriel Stein - gabriel@gabrielstein.org

Entendendo o OpenLDAP

Caractersticas

Funcionamento sobre IPV4 e IPV6(LDAPv3) Leve e robusto; Suporte a vrios backends(BDB,SQL,PASSWD); Suporte a mltiplas instncias de dados; Backup feito atravs de rplicas; Suporte a SASL(Autenticao) e a TLS/SSL;

Gabriel Stein - gabriel@gabrielstein.org

Entendendo o OpenLDAP

Atributos
So campos que agregam elementos de dados, como nome, telefone, email, endereo;

Tipo de Atributo

Valor

cn: Gabriel Stein sn: Stein mail: gabriel@gabrielstein.org

Possuem regras para determinar o tipo de valor que ser armazenado;

Gabriel Stein - gabriel@gabrielstein.org

Entendendo o OpenLDAP

Atributos(Exemplos)
Tipo de Atributo Valor cn commonName sn: surname mail: email telephoneNumber telefone Address Endereo dc domainComponent ou organizationalUnit

Gabriel Stein - gabriel@gabrielstein.org

Entendendo o OpenLDAP

ObjectClasses

ObjectClasses so compostas por um conjunto de atributos;

A incluso de uma ObjectClass em uma entrada determina quais os atributos devero ser utilizados e quais podero ser utilizados(MUST e MAY);

Ex: A objectclass person exige os atributos cn e sn, mas pode ser utilizado o atributo telephoneNumber Possuem derivaes, uma ObjectClass pode herdar atributos requeridos de outra;

Ex: A objectclass inetorgperson tem como raiz a objectclass person, por isso os atributos cn e sn so obrigatrios

Entendendo o OpenLDAP

Schemas

Conjunto de regras integradas ao diretrio;

Regras que determinam qual o tipo de dados e como esses dados sero armazenados na base;

Essas regras so compostas de Atributos e ObjectClasses;

Cada aplicao integrada ao OpenLDAP pode ter o prprio schema(Ex: SAMBA - samba.schema);

Gabriel Stein - gabriel@gabrielstein.org

Entendendo o OpenLDAP

Schemas(Exemplo)
Atributo: attributetype ( 2.5.4.9 NAME ( 'street' 'streetAddress' ) DESC 'RFC2256: street address of this object' EQUALITY caseIgnoreMatch SUBSTR caseIgnoreSubstringsMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{128} ) ObjectClass: objectclass ( 2.5.6.6 NAME 'person' DESC 'RFC2256: a person' SUP top STRUCTURAL MUST ( sn $ cn ) MAY ( userPassword $ telephoneNumber $ seeAlso $ description ) )
Gabriel Stein - gabriel@gabrielstein.org Entendendo o OpenLDAP

Entrada

um conjunto de informaes de UM objeto; onde so referenciados atributos e objectclasses;

Ex: cn: Gabriel Stein sn: Stein telephoneNumber: 55-5555555 mail:gabriel@gabrielstein.org objectclass:inetorgperson

Gabriel Stein - gabriel@gabrielstein.org

Entendendo o OpenLDAP

DN Distinguished Name
So nomes distintos que identificam cada entrada na base;

A utilizao de dn importante para referenciar itens da base, adicionando, alterando ou removendo itens da base, como atributos e at mesmo entradas;

So utilizados nos arquivos LDIF e na autenticao de usurios;

Ex: dn:cn=Gabriel Stein,ou=palestrantes,dc=tchelinux,dc=org

Gabriel Stein - gabriel@gabrielstein.org

Entendendo o OpenLDAP

DN: Representao => rvore


dc=org
Domain OrganizationalUnit

dc=tchelinux

ou=palestrantes

ou=organizacao

cn:Gabriel Stein sn:Stein description:Entendendo OpenLDAP

Person

dn:cn=Gabriel Stein,ou=palestrantes,dc=tchelinux,dc=org
Gabriel Stein - gabriel@gabrielstein.org Entendendo o OpenLDAP

Arquivos LDIF
Arquivos texto utilizados para adicionar, alterar e remover informaes de uma base;

Devem conter sempre DNs referenciando entradas e informaes;

Ex: dn:uid=gabriel,ou=palestrantes,dc=tchelinux,dc=org objectclass:inetorgperson uid: gabriel cn: Gabriel Stein sn: Stein telephoneNumber:55-123467
Gabriel Stein - gabriel@gabrielstein.org Entendendo o OpenLDAP

Daemons e confs
Daemons

Daemon OpenLDAP: slapd Daemon para rplica OpenLDAP: slurpd

Confs

Configurao servidor OpenLDAP: slapd.conf Configurao cliente OpenLDAP: ldap.conf

Gabriel Stein - gabriel@gabrielstein.org

Entendendo o OpenLDAP

SLAPD.CONF
Diretivas principais

Referencia a schemas include /etc/ldap/schema/meuschema.schema

Database database bdb

Sufixo suffix dc=tchelinux,dc=org

Gabriel Stein - gabriel@gabrielstein.org

Entendendo o OpenLDAP

SLAPD.CONF - 2

DN para autenticao do administrador da base rootdn cn=manager,dc=tchelinux,dc=org

Senha para autenticao do administrador da base rootpw {SSHA}I8QMpde4dJue4pP21+OToT+9WJ9ADtfl

Diretrio da base directory /var/lib/ldap

Gabriel Stein - gabriel@gabrielstein.org

Entendendo o OpenLDAP

SLAPD.CONF - 3

Indexes para tornar a consulta mais rpida index objectclass eq

ACLs para controle de acesso da base access to attrs=userPassword by dn.base=cn=manager,dc=tchelinux,dc=org write by self write by * none

Gabriel Stein - gabriel@gabrielstein.org

Entendendo o OpenLDAP

LDAP.CONF

Possibilita o acesso a base LDAP atravs de clientes; Referncia ao servidor OpenLDAP HOST 10.0.0.1

Referncia a base LDAP BASE dc=tchelinux,dc=org

Gabriel Stein - gabriel@gabrielstein.org

Entendendo o OpenLDAP

INTEGRAES

Gabriel Stein - gabriel@gabrielstein.org

Entendendo o OpenLDAP

S A M B A

PE O NL

APACHE

SQUID

POSTFIX

P DA

Gabriel Stein - gabriel@gabrielstein.org

MUITO OBRIGADO!! PERGUNTAS??


gabriel@gabrielstein.org

Entendendo o OpenLDAP

Você também pode gostar