Artigo para configuração passo-a-passo de uma base LDAP para servidores Ubuntu. Dentre as funcionalidades está a autenticação direta dos usuários de sistema na base com criação automática do /home do usuário.
Instalando o libnss-ldap (muitas vezes isso é instalado no momento da instalação do ldapscripts):
# aptitude install libpam-ldap
Respostas:
host address: IP da máquina
destinguished name ou dn: dc=vivaolinux,dc=com,dc=br
ldap version: 3
login database: no
readable/writable: no
OK
Instalando o libpam-ldap (muitas vezes isso é instalado no momento da instalação do ldapscripts):
# aptitude install libpam-ldap
Make local root database admin: yes
Database requires logging in: no
root login account: cn=admin,dc=vivaolinux,dc=com,dc=br
root passwd: senha do admin
local crypt to use when changing passwords: crypt
[1] Comentário enviado por roberva em 04/06/2007 - 11:32h
Duvidas...
Se meu servidor ldap estiver fora da rede como os clientes vao se logar??
Quem eles vao buscar primeiro? Local ou no Dominio?
Mesmo assim como eu setaria timeout nos clientes?
Quem tiver essas respostas posta ai.... valeu gaelra!
[3] Comentário enviado por Sup0rt3 em 04/06/2007 - 12:05h
muito dez cara, valeu.
Respondendo o dochism:
Bem servidores ldap servem como base de dados de usuario para varios servidor: samba, apache, squid, postfix, etc....
He uma base unica de usuarios que evita criar um usuario no proxy, depois um de login na rede, depois outro de email...
O ldap é de super rapido acesso para consultas e facil manipulação. O AD da Micro$oft usa uma implementação do protocolo LDAP. O slapd é uma outra implementação do mesmo protocolo.
[4] Comentário enviado por Sup0rt3 em 04/06/2007 - 12:10h
Neste caso do Artigo muito bem feito do nosso amigo rfreitasa, Ele configurou o Servidor e o cliente na propria maquina pelo q entendi. Ja trabalhei em uma rede que as maquinas linux se logavam num servidor ldap, tinham seu home mapeados por nfs. Logo qualquer maquina que vc entresse com seu username e passwd vc tinha as suas configurações. esse é o tal do perfil ambulante.
No artigo ele so fez a maquina dele do ubuntu não usar mais o passwd para autenticar os usuario, mas sim o ldap.
[5] Comentário enviado por rfreitasa em 04/06/2007 - 12:13h
Exatamente
Toda autenticação é local... O master funciona como replicador da base...na qual cada servidor Ldap slave terá a mesma base ..(identica)...
Só não será identica se replicarmos partyes da base master..
Mas respondendo sua pergunta... se estiver sem "link" vc autenticará normalmente local.. pois cada servidor slave tem sua base ....... grato.
[8] Comentário enviado por vladijr em 04/06/2007 - 22:12h
ola não consigo adicionar os usuarios no servidor fiz todas as configurações de acordo com o artigo mas depois que digito o comando para adicionar os usuarios simplemente não acontece nada a base fica do mesmo jeito e pelo phpldapadmin não consigo me logar como admin aparece o seguinte erro
Error
Could not bind to the LDAP server.
LDAP said: Undefined attribute type
Error number: 0x11 (LDAP_UNDEFINED_TYPE)
Description: The attribute type specified is invalid.
[9] Comentário enviado por rfreitasa em 05/06/2007 - 10:20h
Sim toda vez que alteramos o indice damos um slapindex -v com o servidor parado...
No caso da senha... faça o seguinte amigo
coloque essas 2 linhas no seu slapd.conf e tente se logar novamente, se conseguir é problema no passwd do admin.
coloque abaixo do sufix
rootdn "cn=admin,dc=vivaolinux,dc=com,dc=br" (troque pela dn sua)
rootpw "senhadoadmin"
Tente acessar via phpldapadmin novamente.
o outro problema deve ser exatamente por causa disso...tente logar via phpldapadmin e crie os usuarios por lá...se conseguir é pau de senha do admin...se não conseguir é problema de schema ou indice...
abc, Raphael
[10] Comentário enviado por vladijr em 05/06/2007 - 13:34h
ok rafael só que quando reinicio o computador aparece uma msg de erro dizendo que não foi possivel encontrar o servidor ldap e meu ubuntu não abre mais o q pode estar acontecendo???
[11] Comentário enviado por rfreitasa em 06/06/2007 - 09:21h
Isso é problema no pam.d.
Entre em modo failsafe e verifique toda a configuração do pam.d que esta no artigo!
Com certeza ou foi digitado algo errado ou alguma linha foi pulada ok?
Em relação ao erro de nao encontrar o servidor ldap pode ser seu ldap.conf que está errado. Amigo de uma revisada em todos os passos ok?
abc,
[12] Comentário enviado por vladijr em 07/06/2007 - 00:54h
olá fiz o que vc falou acrecentei
rootdn "cn=admin,dc=vivaolinux,dc=com,dc=br" (troque pela dn sua)
rootpw "minhasenha"
ao slapd.conf mas mesmo assim não consigo acessar o phpldapadmin o que pode estar dando errado?
vamos ver se isso ajuda usei o comando slapd -d 256 e obtive a seguinte resposta:
@(#) $OpenLDAP: slapd 2.2.26 (Nov 20 2006 22:42:27) $
buildd@terranova:/build/buildd/openldap2.2-2.2.26/debian/build/servers/slapd
daemon: bind(6) failed errno=98 (Address already in use)
daemon: bind(6) failed errno=98 (Address already in use)
slapd stopped.
connections_destroy: nothing to destroy.
que pode estar acontecendo
[14] Comentário enviado por rfreitasa em 11/06/2007 - 16:40h
Amigo algum passo fui pulado pois se nem via rootdn funcionou significa que ele não autentica nem no modo "forçado"(vamos dizer assim rs..)
Verifique todods os passos novamente que vai dar certo ok ... seu slapd tá com problemas.
abc,
[15] Comentário enviado por rfreitasa em 11/06/2007 - 16:47h
Amigo lacraia ..
Funciona da seguinte forma:
Craiamos uma base ldap conbtendo usuarios e senhas ... dessa forma todos os serviços (squid/samba/apache /etc) podem se autenticar numa única base entendeu?
Ela é extremamente rapida e confiável.
Outro fator importanmte..... com uma base criada vc pode replicar em todos os servidores que vc tem ... ou seja se vc tiver 3 empresas em varios pontos do brasil todos os usuarios se autenticaram sem problemas em todas as unidades, pois vc terá uma única base .... Nesse artigo somente explico como autenticar , mas em outro momento colocarei replicação tb ok?
Em síntese é uma centralização de autenticação.
abc,
[16] Comentário enviado por elthon_abreu em 12/06/2007 - 14:11h
Amigo,
Sempre que dou o comando "ldapsearch -x" no Terminal recebo a seguinte mensagem:
ldap_bind: Can't contact LDAP server (-1)
Pelo que li nos fórums, o meu SLAPD parece não estar subindo. Porém, eu não sei o que pode estar errado. Tô precisando de uma mãozinha do pessoal que já passou por essa complicação.
[17] Comentário enviado por rfreitasa em 12/06/2007 - 14:32h
Amigo elthon ...
Quando instalamos o slapd a seco... ou seja ...damos um apt-get install slapd ... ele faz as perguntas que coloquei no artigo...pois bem ...se vc após isso der um start nesse serviço verá que sobe sem problemas.... Bom para que o slapd esteja com pau com certeza é problema de digitação ou vc esqueceu algum passo..
Verifique o arquivo slap.conf e o ldap.conf ... tem que conter o mesmo host ok?
Se estiver errado não dará subirá pois não encontrará o server!
Espero ter ajudado.
ÁÁÁ VERIFIQUE os arquivos que postei ok?
abc,Raphael
[18] Comentário enviado por rfreitasa em 20/06/2007 - 11:49h
Pessoal....... Aos que nao conseguiram logar dar o comando dpkg-reconfigure slapd e modifique o nome da base pela desejada ... Dai sim vai autenticar normalmente!
abc,
[21] Comentário enviado por rfreitasa em 23/01/2008 - 08:30h
Amigo o ldap deve fornecer suporte a Ipv6 se a opção allow bind_v3 estiver habilitada
Caso contrário atualize seu repositório ldap e faça a instalação novamente.
Você tb pode forçar o ldap a "entender somente Ipv4 , nesse caso vc precisa passar um parametro na inicialização do slapd:
edite o /etc/default/slapd colocando SLAPD_OPTIONS="-4"
teste com o comando slapd -d -4..
Espero ter ajudado....
abção,
Raphael
[23] Comentário enviado por Imigrante em 10/11/2009 - 09:09h
Meu LDAP já está autenticando beleza. Mas gostaria de saber como devo fazer para utilizar um perfil previamente configurado, para servir de padrão quando outros perfis forem criados.
Ex: Área de trabalho, ícones, paineis, configurações de proxy e browser, etc...
Valeu!!!
[24] Comentário enviado por rfreitasa em 10/11/2009 - 12:06h
Amigo, essa configuração já é samba . Para lhe ajudar vou te passar o caminho das pedras.
No samba há uma opção de perfil: logon path = /caminhoondeestaraosperfis , ativando essa linha, assim que o usuario desligar a maquina será sincronizado o perfil dele , feito isso vc pode copiar o perfil e dar novo nome ao "boi".
Lembrando que o path deve ter sido mapeado logo abaixo EX:
#[sysvol]
#comment = System Volume
#path = /caminhodoperfil/nomedodiretorio
#guest ok = yes
#writable = yes
#share modes = no
#3browseable = no
Blz. ?? Acho que há tutorias bacanas aqui falando sobre isso.
Forte Abraço Raphael
[28] Comentário enviado por rfreitasa em 01/05/2010 - 17:27h
Amigo portesurf,
Todo serviço (samba,squid,etc) você aponta o servidor que deverá autenticar. Na verdade o termo master /slave sugere apenas o quesito replicação.
Ouqe voc~e procura é alta disponibilidade, manter a autenticação mesmo com a queda de um server. veja esse artigo, se lhe ajudar fico feliz. http://www.nisled.org/category/heartbeat/
Forte abraço.
[29] Comentário enviado por jnetux em 29/09/2010 - 15:48h
Caro Raphael, parabéns pelo excelente Tutorial.
Mas, se o servidor cair, vc podeira dar uma luz de como se faria o logon na máquina.
Pois só há login, se a máquina estiver ligada à rede.
Se puder mostrar o caminho das pedras, fico muito grato.
JNetux
[30] Comentário enviado por kleison paiva em 21/09/2011 - 16:51h
Excelente artigo você está de parabéns,
eu instalei da mesma forma que você mostrou, mais não sei pq ñ aparece o arquivo slapd.conf dentro de /etc/ldap, se puder me ajudar estarie grato.
[31] Comentário enviado por lindrix em 10/06/2013 - 08:55h
Na parte Configurações para autenticar na base LDAP, você esqueceu de colocar o caminho completo dos arquivos common-password e common-session, que na verdade estão em /etc/pam.d/common-password e /etc/pam.d/common-session. No artigo estão como /etc/common-password e /etc/common-session.
Sim, ficou um pouco confuso para mim se é para editar esses arquivos ou adicionar as novas linhas a eles...