Implantando autenticação centralizada e segura usando Openldap - PAM e LDAP
Colaboração: Alexandro Silva
Data de Publicação: 02 de agosto de 2010
Com o servidor configurado e seguro podemos integrar todas as soluções existentes a nossa base LDAP como por exemplo Apache, Squid, Postfix, Bind, sudo, ssh e todos os serviços com suporte a autentição via PAM ou direto no LDAP.
Agora apresentarei como autenticar os usuários das estações de trabalho, evitando assim a criação de usuários e grupos locais.
Instale os pacotes necessários
aptitude install libnss-ldap libpam-ldap nscd
LDAP server Uniform Resource Identifier: ldaps://[ IP_LDAP_MASTER ] Distinguished name of the search base: dc=acme,dc=local LDAP version: 3 LDAP account for root: cn=admin,dc=acme,dc=local LDAP root account password: [ SENHA_ADMIN ] nsswitch.conf not managed automatically: Ok Make local root Database admin: Yes Does the LDAP database require login: No LDAP account for root: cn=admin,dc=acme,dc=local
Edite as seguintes linhas do arquivo /etc/libnss-ldap.conf
host [ IP_LDAP_MASTER ] uri ldaps://[ IP_LDAP_MASTER ]/ base ou=People,dc=acme,dc=local bind_policy soft nss_base_passwd ou=People,dc=acme,dc=local?one nss_base_shadow ou=People,dc=acme,dc-local?one nss_base_group ou=Group,dc=acme,dc=local?one
Edite as seguintes linhas do arquivo /etc/pam_ldap.conf
host [ IP_LDAP_MASTER ] uri ldaps://[ IP_LDAP_MASTER ]/ base ou=People,dc=acme,dc=local bind_policy soft nss_base_passwd ou=People,dc=acme,dc=local?one nss_base_shadow ou=People,dc=acme,dc-local?one nss_base_group ou=Group,dc=acme,dc=local?one
Edite os seguintes arquivos no diretório /etc/pam.d/
common-account
account sufficient pam_ldap.so account required pam_unix.so session required pam_mkhomedir.so umask=0022 skel=/etc/skel/ silent
common-auth
auth sufficient pam_ldap.so auth required pam_unix.so nullok_secure use_first_pass
common-password
password sufficient pam_ldap.so password required pam_unix.so nullok obscure min=4 max=8 md5
common-session
session sufficient pam_ldap.so session required pam_unix.so
Edite o arquivo /etc/nsswitch.conf
vim /etc/nsswitch.conf
passwd: files ldap group: files ldap shadow: files ldap
Remova os usuários cadastrados localmente
adduser [usuário]
Reinicie a máquina
init 6
Após reiniciar a máquina logue com um usuário existente no LDAP
Agora tudo será feito pelo LDAP (ssh, sudo e etc) não sendo necessário a craição de usuários ou grupos locais.
Administração do LDAP via WEB
Phpldapadmin - http://phpldapadmin.sourceforge.net/wiki/index.php/Main_Page