OpenLDAP: a chave é a centralização

Este artigo tem por finalidade apresentar os conceitos básicos do OpenLDAP afim de despertar o interesse dos leitores para essa poderosa ferramenta, estimulando-os a buscar mais conhecimento sobre o assunto e posteriormente colocá-lo em prática. Aqui serão mostradas as características do OpenLDAP e seu funcionamento, passando por conceitos como serviço de diretórios, origem, aplicações e segurança.

[ Hits: 112.138 ]

Por: Jaime Ribeiro Junior em 11/12/2008


O que é um diretório, onde ele é aplicado



Antes de prosseguir é importante que se saiba realmente o conceito de diretório. Diretórios por si só não são difíceis de serem compreendidos. Uma estrutura organizada em diretórios tem por finalidade facilitar a busca de informações armazenadas na mesma. Sua existência é fundamentada na necessidade da indicação de direções.

Imagine que você precise pesquisar uma palavra no dicionário, primeiro você pega o dicionário procura a letra inicial da palavra desejada e depois procura a palavra que se deseja encontrar, sendo que cada uma dessas etapas depende de uma outra e são organizadas de forma hierárquica.

Eles possuem o mesmo princípio de orientação do dicionário e são organizados de forma hierárquica onde um principal, chamado de raiz, é a base para todos os demais. Os diretórios pertencentes a tal podem conter outros que por sua vez podem conter outros e assim sucessivamente formando uma hierarquia onde a organização da mesma recebe o nome de árvore.

Esta estrutura guia o usuário para facilitar a procura de uma informação, passando desde a raiz, depois pelos diretórios subjacentes até se chegar à informação desejada.

Sua organização deve ser de uma forma lógica e coerente, para que suas direções sempre estejam corretas. Imagine agora que você está procurando uma palavra no dicionário que comece com a letra "A" mas a palavra foi colocada entre as de letra "B", isso geraria uma dor de cabeça terrível, afinal invés de ajudar a direção estaria atrapalhando, contrariando o princípio de sua existência.

Aplicações de diretórios no mundo da informática

Trigo (2007, p. 18), define Diretório como sendo "um serviço de armazenamento hierárquico de informações de objetivo principal de facilitar a pesquisa e a recuperação dessas informações". Por sua vez, Tuttle (2003, doc. eletrônico) descreve o diretório como "uma lista de informações sobre objetos organizados ou catalogados em uma ordem, e que fornece o acesso aos dados dos objetos".

Na informática tudo que se precisa de organização utiliza o principio de diretórios, sistemas de arquivos, protocolos de transferência de arquivos, sistemas de armazenamento WEB, banco de dados e até mesmo o editor de registro do MS-Windows, ou seja, seu conceito é usado por tudo que se precise de organização, mas apesar de serem organizados em forma de diretórios eles não são um serviço de diretório, podendo a vir usufruir da utilização de um.

O serviço de diretório é responsável por prover o armazenamento, a organização das informações durante a escrita e o armazenamento, que serão resgatadas por terceiros, sendo uma ferramenta a mais que pode ser usada para complementar à utilização de outros serviços facilitando manutenção, a busca e localização de dados por usuários e aplicativos, onde todos os serviços que compartilham o mesmo servidor de diretório e a mesma árvore de informações.

A utilização de um serviço de diretório se justifica no âmbito de redes de computadores, sendo ela de pequeno, médio ou grande porte, pois ao utilizar um servidor de diretórios, os dados atualizados ficarão disponíveis a todos os serviços da rede, facilitando e muito a vida dos administradores, através da utilização do conceito denominado centralização de informações.

Com a centralização ficará muito mais fácil à manutenção dos dados , tal como a disponibilização de novas informações na rede. Imagine uma empresa onde existem dez máquinas e todas elas devem manter dados de clientes atualizados em diversos aplicativos, caso não utilizem um serviço de diretório à manutenção destes teria que ser feita na base de dados de cada aplicativo onde seria difícil dar a garantia de que os dados em todos eles ficariam 100% sincronizados.

O serviço de diretório é aquele que armazena informações de forma hierárquica, obedecendo aos critérios que regem seu princípio de organização, possibilitando buscas e consultas, podendo ser ou não distribuídos, disponibilizando suas informações para auxiliar outros serviços, protocolos e aplicativos.

Quando se fala em diretórios distribuídos significa que irá se trabalhar com mais de um servidor de diretórios, uma árvore de diretórios é considerada distribuída quando ela está armazenada em dois ou mais servidores. Apesar de a árvore estar fisicamente separada a pesquisa continua centralizada, todos os dados pertencem à mesma árvore, sendo que em cada servidor há referências para os nós da rede em que estão os demais servidores e fazem com que logicamente a árvore seja uma só.

Uma busca pode ser realizada através do princípio da árvore (raiz) ou a partir de um nó, indicado pelo usuário, que esteja mais próximo da informação desejada, no segundo caso a resposta será mais rápida. No caso de diretórios distribuídos, à pesquisa será realizada primeiro no servidor raiz e depois passa pelos demais, caso seja estipulado pelo usuário um servidor específico para se iniciar a pesquisa, a resposta será consideravelmente mais rápida, pois ao em vês de pesquisar em todos os servidores a pesquisa será feita a partir de um ponto específico da árvore.

Já os diretórios distribuídos que utilizem meios externos, como a internet, a pesquisa será feita inicialmente no servidor ou servidores locais, se informação não for encontrada o servidor local redirecionara a busca para os servidores externos, tendo um tempo de resposta consideravelmente mais lento, considerando que a banda da internet é muito menor que a de uma rede local. Claro que em todos os casos citados acima, para que as buscas ocorram da forma esperada é inevitável que os servidores de diretórios sejam previamente configurados de forma correta pelo técnico responsável ou o administrador da rede.

Página anterior     Próxima página

Páginas do artigo
   1. Sumário + resumo
   2. Introdução
   3. O que é um diretório, onde ele é aplicado
   4. Do X.500 ao OpenLDAP
   5. O OpenLDAP e a centralização
   6. OpenLDAP e a segurança
   7. Considerações finais + Referências
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Experimento: Transformando openSUSE 12.3 Tumbleweed em 13.2 Factory Milestone 0

Atualizando o seu KDE sem dores de cabeça

Força-tarefa brasileira disponibiliza versão do TikiWiki em Português do Brasil

Instalação do Debian GNU/Linux - Passo a passo

soundKonverter - o maravilhoso conversor de áudio

  
Comentários
[1] Comentário enviado por dfsantos em 11/12/2008 - 14:07h

Primeiramente queria parabeniza-lo pelo artigo de otima qualidade e agradecer por ter separado umas horas para fazer esse trabalho de qualidade incontestavel em favor da comunidade. Possuo o livro do Clonil Trigo e estou estudando para exame da LPI exame 301 que aborda o OPENLDAP e concerteza foi muito dificil achar material de qualidade como esse na internet... parabens pelo trabalho e mais uma vez agradeço o esforço em compartilhar seu conhecimento conosco.

Em relação ao a "porem há poucos profissionais no mercado que o dominam. " estarei me empenhando nos estudos para fazer parte destes e assim poder contribuir para que esse numero de profissionais aumente....

[2] Comentário enviado por jaimejr1987 em 11/12/2008 - 14:39h

Obrigado, pelo comentario, quero sempre estar trablhando afim de espor as qualidades das ferramentas livres de alto peso como está.

[3] Comentário enviado por info24hs em 11/12/2008 - 17:28h

Cara não muito bom teu artigo, ja tinha visto esse nome na internet mas não tinha lido sobre, com esse artigo entendi perfeitamente oque significa esse recurso. vou tentar implementar aqui, valeu e parabens!

[4] Comentário enviado por joserribeirojuni em 11/12/2008 - 18:08h

Muito bom esse artigo parabéns !

[5] Comentário enviado por oseasfr em 11/12/2008 - 20:50h

Artigo de qualidade. Parabéns Jayme Jr.

[6] Comentário enviado por rrinfor em 12/12/2008 - 08:55h

Ótimo artigo! trabalho 4 anos com informática, e 3 especificamente com Linux, mas so ouvia falar rapidamente do OpenLDAP, mas ja li o bastante no seu artigo para me interessar e aprender mais sobre ele.

Abraços

[7] Comentário enviado por removido em 13/12/2008 - 12:24h

Excelente... parabéns e continue com artigos desse nível... a comunidade agradece!!!
Se possível, seria interessante um artigo mostrando a parte técnica do OpenLDAP.
Imagino que um OpenLDAP rodando com PostgreSQL 8.3 com replicação de dados seja uma façanha bem interessante pra se testar.
Se eu conseguir algo nessa aventura, postarei um artigo aqui explicando e detalhando os passos de como montar um ambiente deste tipo.
Valeu!!!

[8] Comentário enviado por removido em 26/02/2009 - 11:47h

Jaime,

parabéns pelo ótimo trabalho.
Gostaria de saber, se não for problema, se você teria mais algum material falando sobre OpenLDAP, Samba ou Active Directory. Se o material for seu melhor ainda porque já vi a qualidade dos mesmos =). Estou fazendo um trabalho abordando justamente esses temas, qualquer coisa pode me enviar um email.

Valeu !!!

[9] Comentário enviado por jrosalino em 07/04/2009 - 14:07h

Muito bom o texto, me ajudou a conhecer melhor o LDAP. Mas tenho uma dúvida, o servidor LDAP da minha empresa está instalado em servidor linux utilizando MySQL e temos uma aplicaçao em Visual Basic 6 no windows XP que terá que acessa-lo. A conexão com a fonte de dados necessita de um driver? se necessitar seria qual tipo?

Obrigado

[10] Comentário enviado por jaimejr1987 em 07/04/2009 - 18:36h

ok, vamos entender melhor o assunto... O seu aplicativo VB6 vai acessar a base LDAP diretamente?.... ex: Um servidor de dominio + servidor FTP + Programa de gerencia como o nagios que utiliza a base LDAP para altenticação... Todos esses serviços utizão apenas a base LDAP para buscar nomes de usuario e senha alem de endereço e telefone do usuario. Bem no exemplo acima o uma estação windows xp vai usar o dominio samba, ou seja ele vai utilizar o samba e não o ldap, quem usa o ldap é o samba, o ftp da mesma forma o usuario vai utilizar o ftp não o ldap diretamente pois é o servidor ftp que vai utilizar o ldap e da mesma forma ao fazer um acesso remoto e utilizar um software de gerenciamento via browser vc vai utilizar o software que por sua vez usa o ldap. Bem estou estou querendo chegar no seguinte... Lenbra o que é um SCHEMA bem... todos os softwares acima precisão do seu para poder acessar a base ldap, da mesma forma o software feito em VB vai precisar... a parte do mySQL já ta configurada no ldap ok... se vc ta querendo acessar um dado como login e senha e utiliza-lo para fazer a autenticação no seu software VB6 vc vai precisar de um SCHEMA para ele, se vc estiver querendo acessar informações no BD do LDAP como telefone e endereço, alem da linha de comando existem softwares que faz isso pra vc.... ok... bem... não sei se existe algum SCHEMA para um aplicação VB6, mas vc pode criar um. Ps: não sei criar SQUEMAS utilizo os que já existem... pois aplicações como as que citei acima já tem SCHEMAS prontos na net.... criar um SCHEMA não é facil. Mas vc pode tentar. A parte do dirver seria para que seu software VB6 utiliza-se o My SQL, mas pelo que eu entendi vc que usar a base LDAP que esta utilizando o MySQL para ser armazenada, ou seja como nos exemplos acima hehe... vc vai utilizar é o ldap não o MySQL diretamente... que precisa se comunciar com o MySQL é o LDAP. Ou seja se for isso que eu entendi que vc ta querendo vc vai presisar de um SCHEMA para seu software alem de fazer um acesso na Base ldap remotamente pela rede. Existem algumas configurações de vairam de software para software que deve ser feita no proprio software para usar o LDAP, ex o Samba de ser configurado para usar a base LDAP ao em ves da padão.

Espero ter ajudado, mas se não for essa sua duvida posta outro comentaria explicando melhor a situação

até

by JaimeJR

[11] Comentário enviado por jaimejr1987 em 07/04/2009 - 18:42h

A como na informatica tudo gira e nuca para... caso vc consiga descobrir um geito de acessar a base LDAP pelo seu programa VB6 de outra forma poste aki Ok.

[12] Comentário enviado por jrosalino em 08/04/2009 - 16:50h

Obrigado jaime, eu vou verificar exatemente a condição do LDAP com os gestores para passar informação melhor detalhada. Se conseguir acessar pelo VB6 postarei a forma sim. \(^o^)/

[13] Comentário enviado por lucfab em 21/04/2010 - 15:45h

Parabens Jayme pelo seu Artigo, Será que vc poderia me dar uma dicas de replicação de bases LDAP (Master/Slave), Obrigado Luciano S.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts