Pular para o conteúdo

Configurando Ubuntu Linux 8.04 para autenticar no LDAP

Depois de muitas tentativas e pesquisas na comunidade Linux, consegui fazer o Ubuntu Linux autenticar no LDAP. Caso alguém tenha algo a acrescentar para melhorar o artigo, fico grato pela colaboração. Viva a Liberdade, Viva o Linux.
Rubens Ajala Junior Rubens.Ajala
Hits: 17.127 Categoria: Linux Subcategoria: Configuração
  • Indicar
  • Impressora
  • Denunciar
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Configurando Linux Ubuntu 8.04 para autenticar no LDAP

Criado por Sgt Ruben 30/07/08 Cro/9
Configurando Ubuntu 8.04 para autenticar no LDAP.

Instalação dos pacotes necessários:

# apt-get install libpam-ldap libnss-ldap nss-updatedb libnss-db

Será solicitado o nome ou ip do servidor LDAP:

ldap://servidor-ldap/

Obs.: O arquivo de configuração fica em /etc/ldap.conf.

Será solicitado o nome do domínio LDAP:

dc=dominio,dc=com,dc=br

Será solicitado a versão LDAP usada:

3

Colocar root como admin da base LDAP:

yes

Exige login na base LDAP:

no

Usuário administrador da base LDAP:

cn=admin,dc=dominio,dc=com,dc=br

Senha do administrador LDAP:

sua senha

Obs.: O arquivo de configuração fica em /etc/ldap.secret.

Edite o arquivo /etc/nsswitch.conf e altere os dados conforme abaixo:

# vim /etc/nsswitch.conf

Antes:

#passwd: compat
#group: compat

Depois:

passwd: files ldap
group: files ldap

Execute os comandos abaixo para verificar se os usuários e grupos da base LDAP estão aparecendo:

# getent passwd
# getent group


ALERTA DE BUG: no arquivo /etc/ldap.conf deve ser descomentada a linha "bind_policy hard" e alterada para "bind_policy soft". Caso não inserido será gerado um erro na inicialização do kernel e o sistema não levantará.

Deixe o arquivo /etc/pam.d/common-account conforme abaixo:

# vim /etc/pam.d/common-account

account sufficient      pam_ldap.so
account required        pam_unix.so
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Deixe o arquivo /etc/pam.d/common-auth conforme abaixo:

# vim /etc/pam.d/common-auth

auth    sufficient      pam_ldap.so
auth    required        pam_unix.so nullok_secure use_first_pass

Deixe o arquivo /etc/pam.d/common-password conforme abaixo:

# vim /etc/pam.d/common-password

password    sufficient  pam_ldap.so
password    required    pam_unix.so nullok obscure min=4 max=8 md5

Deixe o arquivo /etc/pam.d/common-session conforme abaixo:

# vim /etc/pam.d/common-session

session required        pam_unix.so
session required        pam_mkhomedir.so skel=/etc/skel/ umask=002
session optional        pam_foreground.so
session sufficient      pam_ldap.so

Crie uma base local no caso de a rede não estar funcionando. Para isso esteja logado como root:

# nss_updatedb ldap

Crie um script com nome nssupdate.sh e salve em /etc/cron.hourly/ conforme conteúdo abaixo:

# vim /etc/cron.hourly/nssupdate.sh

LOCK=/var/run/auth-update.cron

[ "$1" != "0" ] && [ -f $LOCK ] && [ -d /proc/"$(cat $LOCK)" ] && exit 0
echo $$ > $LOCK

RANGE=3600
[ "$1" != "" ] && RANGE=$1
SLEEP=$RANDOM
[ "$RANGE" != "0" ] && let "SLEEP %= $RANGE" || SLEEP=0

sleep $SLEEP

go=true
while $go; do
   /usr/sbin/nss_updatedb ldap
   [ $? -eq 0 ] && go=false
   [ "$go" == "true" ] && sleep 10
done

rm $LOCK

exit 0

# chmod 755 /etc/cron.hourly/nssupdate.sh

Edite seu /etc/nsswitch.conf e deixe conforme abaixo:

# vim /etc/nsswitch.conf

passwd:         files ldap [NOTFOUND=return] db
group:          files ldap [NOTFOUND=return] db

O seu Ubuntu Linux está pronto para autenticar no servidor LDAP!

O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.
   1. Configurando Linux Ubuntu 8.04 para autenticar no LDAP
Nenhum artigo encontrado.

OpenLdap no Debian Squeeze

Som sem problemas em notebooks com placa Intel

Implementando um servidor DHCP

Atualizando o kernel do Slackware de forma segura, sem o famoso "kernel panic"

Debian Squeeze para Desktops

#1 Comentário enviado por m4sk4r4 em 07/11/2008 - 11:44h
Legal.

É só precisava ser mais simples e de preferência na instalção como o fedora faz,
porque ficar configurando depois é um saco mesmo com scripts quando se trata
de várias máquinas.

Abraço
#2 Comentário enviado por corvolino em 10/11/2008 - 03:17h
omg..

o godim falou exatamente isso no planeta ubuntu ;s

yare yare..
#3 Comentário enviado por removido em 10/11/2008 - 18:26h
Bom artigo,
não testei mas os passos parecem funcionar.
só acho que faltou um pouco de explicações... afinal, uma coisa é o cara que está começando ler esse artigo e copiar tudo pro seu sistema, e outra é o cara saber o que faz cada comando desses.
#4 Comentário enviado por upgrade em 09/09/2009 - 16:59h
Olá gostaria de saber o que significam nos arquivos common os suficient e required pois estou meio confuso nessa configuração, abraço
#5 Comentário enviado por tatototino em 27/01/2010 - 12:23h
Boa tarde, tentei colocar nesta solução no ubuntu 9.10 e deu alguns conflitos com PAM.
Com getent passwd aparece os usuários que estão no db mas na hora de autenticar nada.

Se alguém conseguir por favor postem aqui para ajudar os demais usuários.Se eu conseguir antes de postarei aqui.

Grato!
#6 Comentário enviado por vinigeremia em 16/07/2010 - 17:27h
Muito bom o artigo, mas fiz em um Ubuntu 10.04 a primeira vez e deu certo, mas fui tentar em outra maquina com o mesmo sistema operacional, e deu o seguinte erro:
update-rc.d: warning: libnss-ldap start runlevel arguments (2 3 4 5) do not match LSB Default-Start values (none)

Processando gatilhos para libc-bin ...
ldconfig deferred processing now taking place

Me ajudeeem!
abraço
#7 Comentário enviado por joserf em 10/08/2010 - 16:29h
olá amigo eu tenho um dominio com ldap funcionando blz no ubuntu 8.04 vc sabe como eu faço para migrar a base ldap para algum ubuntu + novo como 10.04. obrigado

Contribuir com comentário

Entre na sua conta para comentar.