← Back to team overview

sslug-teknik team mailing list archive

auth og login via pam og ldap

 

Hej Sslug

Jeg har nu i længre tid prøvet at knække den nød der hedder at lade en 
brugere logge ind på en "vilkårlige" maskine. Vores burgeredatabase skal 
ligge i en ldap-database. Hvorfor lige det, er en længre og ikke specielt 
vedkommende historie :-)

Jeg er med på at jeg skal rette min /etc/nsswitch.conf samt 
/etc/pam.d/login. Jeg har så støver rundt på nettet og fundet ud af alle 
andre brugere det pam modul som der hedder pam_ldap(supprise:) fra PADL 
Software Pty Ltd (http://www.padl.com).

Jeg har så installeret en openldap lokalt og har sat min 
/etc/openldap/ldap.conf til at pege på den. Jeg har så uden problemmer 
kunne tilføje mine brugere og lave søgninger i den. Men når jeg prøver at 
logge en brugere ind via pam og ldap så kommer der i /var/log/secure 
følgende fejl:

login: pam_ldap: ldap_simple_bind Can't contact LDAP server

og i /var/log/messages kommer denne besked :

login[16838]: FAILED LOGIN 1 FROM (null) FOR ldaptest, Authentication 
service cannot retrieve authentication info.

Jeg prøvet så at sætte ipchains til at logge alt trafik til localhost og 
der kom indet trafik !!!
Så det virker som om at pam_ldap modulet slet ikke prøver at kontakte min 
database.

Jeg håber at der er nogle der har en ide til en løsning.

Med Venlige Hilsen
Finn Dorph-Petersen

Min /etc/nsswitch.conf:
---------------------
#ident $Id: nsswitch.ldap,v 2.3 1999/04/13 22:56:43 lukeh Exp $
#
# An example file that could be copied over to /etc/nsswitch.conf; it
# uses LDAP conjunction with files.
#
# "hosts:" and "services:" in this file are used only if the
# /etc/netconfig file has a "-" for nametoaddr_libs of "inet" transports.
 
# the following two lines obviate the "+" entry in /etc/passwd and 
/etc/group.
passwd:         files ldap
group:          files ldap
 
# consult DNS first, we will need it to resolve the LDAP host. (If we
# can't resolve it, we're in infinite recursion, because libldap calls
# gethostbyname(). Careful!)
hosts:          dns ldap
 
# LDAP is nominally authoritative for the following maps.
services:   ldap [NOTFOUND=return] files
networks:   ldap [NOTFOUND=return] files
protocols:  ldap [NOTFOUND=return] files
rpc:        ldap [NOTFOUND=return] files
ethers:     ldap [NOTFOUND=return] files
 
# no support for netmasks, bootparams, publickey yet.
netmasks:   files
bootparams: files
publickey:  files
automount:  files
 
# I'm pretty sure nsswitch.conf is consulted directly by sendmail,
# here, so we can't do much here. Instead, use bbense's LDAP
# rules ofr sendmail.
aliases:    files
sendmailvars:   files
 
# No one has written the LDAP support for netgroups yet, so we'll
# have to stick with NIS.
netgroup:   files nis


Min /etc/pam.d/login fil
-------------------
auth    required                        pam_nologin.so
auth    [success=1 default=ignore]      pam_ldap.so debug
auth    required                        pam_unix.so try_first_pass
 
auth    optional                        pam_group.so
 
account [success=1 default=ignore]      pam_ldap.so debug
account required                        pam_unix.so
account required                        pam_permit.so
 
session [success=1 default=ignore]      pam_ldap.so debug
session required                        pam_unix.so
session required                        pam_permit.so
 
password required                       pam_cracklib.so retry=3 minlen=6 
difok=3
password required                       pam_ldap.so use_authtok debug


Follow ups