Sincronizar senhas no openldap e Active Directory

1,028 views
Skip to first unread message

Jeronimo Menezes

unread,
May 25, 2011, 6:39:37 PM5/25/11
to Tche...@googlegroups.com
Olá pessoal,

Alguém já usou ou conhece uma solução para sincronizar os usuarios e senhas do OpenLDAP no Active Directory?

As senhas dos meus usuários estão armazenadas no OpenLDAP e eu gostaria que os usuários e as senhas fossem replicadas no AD.

Estava estudando este projeto, http://lsc-project.org/wiki/ mas as senhas não podem estar armazenadas em forma de hashs, o que é o meu caso.

Qualquer ajuda é bem vinda!!

Abraço,

Jerônimo Menezes


Eduardo Sachs

unread,
May 25, 2011, 6:54:52 PM5/25/11
to tche...@googlegroups.com
Jeronimo,

Vamos partir do principio, o que você precisa fazer?

[]s



--
Mensagem enviada para <http://groups.google.com/group/tchelinux>.
Regras de Conduta para o grupo: <http://tchelinux.org/regras>.



--
Att,

Eduardo Sachs - www.eduardosachs.org


Alexandre Luiz dos Santos

unread,
May 25, 2011, 6:52:20 PM5/25/11
to tche...@googlegroups.com

Jeronimo Menezes

unread,
May 25, 2011, 11:31:07 PM5/25/11
to tche...@googlegroups.com
Olá,

Obrigado pela atenção Eduardo!

Atualmente minha base de usuários está num servidor openldap. Ele realiza autenticação para a maioria dos serviços de rede que tenho como email, sftp, conferencia web e acredito que quase todos os outros serviços de rede que disponibilizo.
Surgiu agora a demanda de instalar um Controlador de Domínio para minha rede windows e nele gerenciar as políticas de grupos e usuários além de todas as funcionalidades que o a Active Directory possibilita. No entanto não quero (e não posso) obrigar meus usuário a decorar uma senha para o AD e outra senha para os demais serviços de rede. Meu desafio, então, é importar meus usuários e respectivas senhas que estão na base do OpenLDAP para dentro do AD e então manter uma sincronização periódica destes dois atributos (username e password), no mínimo.

Gostaria de receber dicas de como atacar este problema e se alguém já conhece alguma ferramenta opensource que realize essa tarefa de manter sincronizadas as senhas na base do OpenLDAP com as senhas do AD.

Não sei se consegui ser claro na minha explicação, caso tenha ficado alguma dúvida, responderei prontamente.    

Grato pela atenção,

Jerônimo Menezes

Yucatan "Kenjiro" Costa

unread,
May 26, 2011, 7:36:47 AM5/26/11
to tche...@googlegroups.com
Jeronimo,

Aqui na Universidade também tínhamos essa demanda. Mas nosso caso era um pouco pior: LDAP+AD+SIE (um sistema acadêmico desenvolvido pela UFSM). Três bases de usuário separadas e "diferentes".

O jeito foi uma solução in-house. O pessoal do desenvolvimento fez um "sisteminha" (sei que todo mundo odeia essa palavra) para catar a entrada de usuários em uma base (SIE) e lançar no LDAP e AD. Como o tipo de senha no LDAP é diferente do AD (mesmo caso que o teu), o jeito foi meter um resetão na senha de todo mundo, daí unificando as senhas. O sistema utilizado pra troca de senhas (web), pega a senha que o cara digita e a seta nos três sistemas.

Eu sei que tu preferes algo mais "ok, achei, baixei, configurei, rodei", mas... dependendo do caso o jeito é desenvolver.



2011/5/26 Jeronimo Menezes <trico...@gmail.com>



--
May the Force be with you!

Yucatan "Kenjiro" Costa

Rodrigo de Lima Silva

unread,
May 26, 2011, 9:20:47 AM5/26/11
to tche...@googlegroups.com
Em 25 de maio de 2011 19:39, Jeronimo Menezes <trico...@gmail.com> escreveu:

Olá Jerônimo,

Estive estudando uma solução a um tempo atrás para implementar isso.
Mas realmente não fui muito a fundo e acabamos partindo para uma outra
solução. Mas posso te indicar três ferramentas que olhei:

LDSU (from HP)
SimpleSync (from CPS Systems)
MIIS (aka ILM from MS)

Mas já posso te adiantar, não é uma coisa muito simples de fazer.

Nossa migração aqui acabou sendo facilitada, já que o provisionamento
para o Openldap é feito através do banco de dados Oracle. Ou seja,
todo usuário é primeiro cadastrado no Oracle e depois provisionado
para o OpenLdap. Agora, o Oracle provisiona também para o Active
Directory, ou seja, o Oracle que criptografa a senha e grava nas
bases, tando no OpenLdap como no Active Directory. Logicamente, já
existem scripts prontos da Oracle para estas finalidades.


--
Rodrigo de Lima Silva
Linux Professional Institute Certified LPIC-1 - LPIID: LPI000122442
RHCE - Red Hat Certified Engineer - Certification number 805010769749181
rodrigodlima[arroba]gmail[dot]com

Eduardo Sachs

unread,
May 26, 2011, 9:45:04 AM5/26/11
to tche...@googlegroups.com
Jeronimo,
 
Tu pretende migrar todas as tuas estações de trabalho para um controlador de domínio Active Directory? Se sim, tu vai precisar manter o OpenLDAP ativo? Se sim, porque tu vai precisar manter o OpenLDAP ativo?
 
Eu já vi um vídeo no Youtube de funcionarios da Microsoft falando sobre migração de uma solução OpenSource (Samba+LDAP) para Active Directory, segue: http://www.youtube.com/watch?v=-TQTVQpHrKE (primeira parte de seis partes)
 
Não sei se isso que eu vou te falar possa te ajudar, mas segue: o OpenLDAP tem um recurso para fazer pass-through de autenticação. Assim sendo, o OpenLDAP pode consultar a senha do usuário do Active Directory. Segue o fluxo grama abaixo:
 
Usuário requisita autenticação para o OpenLDAP ---> OpenLDAP requisita autenticação para o SASL ---> O SASL requisita a autenticação no Kerberos do Active Directory ---> O SASL libera a autenticação para o OpenLDAP ---> O OpenLDAP autentica o usuário (ok). ---> Autenticação feita com a senha do Active Directory.
 
 
Agora, acho dificil ter uma inversão desse fluxo grama.
 
Agora te pergunto, se a tua rede vai ter um controlador de domínio baseado no Active Directory, porque tu não autentica todas as tuas aplicações diretamente no Active Directory?
 
[]s

Eduardo Sachs

unread,
May 30, 2011, 10:05:38 AM5/30/11
to tche...@googlegroups.com, trico...@gmail.com
Olá Jeronimo,
 
Conseguiu resolver esta questão?
 
[]s

Jeronimo Menezes

unread,
May 30, 2011, 1:54:01 PM5/30/11
to tche...@googlegroups.com
Oi Pessoal,

obrigado pela ajuda de todos.
Respondendo ao Eduardo, agradeço a sugestão de usar o AD como base central de usuários. Nossos sistemas de gerenciamento são focados no LDAP e seria inviável migrar essa gerencia de usuários e grupos para o AD. De toda forma obrigado.

Yukatan, creio que tua solução seja a mais próxima da que eu preciso. Se tu puder me dar mais detalhes do teu "sisteminha" fico agradecido. A alteração de senhas dos meus usuários já é sempre feita em um portal na web. Pretendo reescrever a parte que joga essa senha para o MSSQL e para o OpenLDAP e começar a mandá-la para o AD também.

Desculpem-me a demora em responder, mas comecei a estudar o 389 Directory Server [ http://directory.fedoraproject.org/ ] pois ele tem uma programa que realiza a sincronização das senhas entre o 389 DS e o AD. O nome do programa é WindowsSync [ http://directory.fedoraproject.org/wiki/Howto:WindowsSync ]

Já reparei que essa pesquisa é longa e conforme ocorrerem avanços posto coisas novas aqui.


Abraços,

Jerônimo Menezes

-

Vinicius Mello

unread,
Jun 1, 2011, 10:11:59 AM6/1/11
to tche...@googlegroups.com
Ol� Jeronimo,

Este artigo no kb da Microsoft detalha como conectar no AD e alterar a
senha usando o protocolo LDAP simples:
http://support.microsoft.com/kb/269190

O artigo � baseado em Windows 2000, mas acredito que funciona para o
Win2003 e 2008. Ele descreve como deve ser a opera��o (uma �nica
opera��o delete+add no atributo unicodePwd, em uma conex�o SSL de no
m�nimo 128 bits, com a nova senha em unicode entre aspas, etc).

Buscando no Google aparecem v�rios relatos de sucesso
http://www.google.com/search?q=ldap+ad+change+password

On 05/30/2011 02:54 PM, Jeronimo Menezes wrote:
> A altera��o de senhas dos meus usu�rios j� � sempre feita em um


> portal na web. Pretendo reescrever a parte que joga essa senha para o

> MSSQL e para o OpenLDAP e come�ar a mand�-la para o AD tamb�m.

"Reescrever" possivelmente significa escrever as linhas que faltam pra
conectar no AD (via LDAP) e trocar a senha.

Em 2008 precisei conectar no AD pra deixar alguns atributos de usu�rio
iguais ao de uma base OpenLDAP. Eu lembro que funcionou usando a lib C
do OpenLDAP (com programas em C e perl) e tamb�m com a lib do Java. Mas
n�o era uma troca de senha.


Sds,
vmm.

Yucatan "Kenjiro" Costa

unread,
Jun 1, 2011, 10:20:48 AM6/1/11
to tche...@googlegroups.com
Jeronimo,

O sistema não é meu, visto que não sou DEV ;)  O pessoal que desenvolveu, aqui na Universidade, está com a coisa assim:

APACHE+TOMCAT

No apache tem um "portal" em php que tem os formulários pro pessoal trocar/resgatar senha, entre outras coisas. As infos são jogadas pro sistema que roda no TOMCAT, que faz as conexões com LDAP, AD e SIE.

Fui muito "curto e grosso"? Detalhes mais específicos de como foi implementado eu não tenho :(



2011/5/30 Jeronimo Menezes <trico...@gmail.com>
Reply all
Reply to author
Forward
0 new messages