Re: PAM an LDAP anbinden: Authentication service cannot retrieve authentication info.

2005-08-23 Diskussionsfäden Torsten Flammiger

Fabian Holler schrieb:

Hallo,

ich habe unter Debian Sarge ein LDAP Server aufgesetzt und einen User 
carsten angelegt.


Ich habe nsswitch und das pam Modul für ldap konfiguriert.
nsswitch findet den user:

sparctacus:~# getent passwd| grep carsten
carsten:x:1000:100:Carsten:/home/carsten:/bin/bash

Wenn ich mich einloggen will, mit dem user carsten mit z.B. su oder über 
ssh erhalte ich die Fehlermeldung:

Authentication service cannot retrieve authentication info.

su carsten als root funktioniert.

Wo könnte mein Fehler liege, ich hab keine Idee mehr :)



Hallo Fabian,

wie ist nun der Stand - Problem gelößt?

Gruß
Torsten



PAM an LDAP anbinden: Authentication service cannot retrieve authentication info.

2005-08-19 Diskussionsfäden Fabian Holler

Hallo,

ich habe unter Debian Sarge ein LDAP Server aufgesetzt und einen User 
carsten angelegt.


Ich habe nsswitch und das pam Modul für ldap konfiguriert.
nsswitch findet den user:

sparctacus:~# getent passwd| grep carsten
carsten:x:1000:100:Carsten:/home/carsten:/bin/bash

Wenn ich mich einloggen will, mit dem user carsten mit z.B. su oder über 
ssh erhalte ich die Fehlermeldung:

Authentication service cannot retrieve authentication info.

su carsten als root funktioniert.

Wo könnte mein Fehler liege, ich hab keine Idee mehr :)


Vielen Dank

Gruß

Fabian



Noch 'n paar infos :


cat /etc/pam_ldap.conf
host 127.0.0.1
base dc=sparctacus,dc=ldap,dc=it
ldap_version 3
rootbinddn cn=admin,dc=sparctacus,dc=ldap,dc=it
---
grep ldap /etc/pam.d/*
/etc/pam.d/login:auth sufficient pam_ldap.so use_first_pass
/etc/pam.d/login:account sufficient pam_ldap.so
/etc/pam.d/login:password sufficient pam_ldap.so
---
sparctacus:~# ldapsearch -x uid=carsten -D
cn=admin,dc=sparctacus,dc=ldap,dc=it -W
Enter LDAP Password:

# extended LDIF
#
# LDAPv3
# base  with scope sub
# filter: uid=carsten
# requesting: ALL
#

# carsten, People, sparctacus.ldap
dn: uid=carsten,ou=People,dc=sparctacus,dc=ldap,dc=i t
sn: carsten
uid: carsten
cn: Carsten Brunke
homeDirectory: /home/carsten
uidNumber: 1000
objectClass: person
objectClass: posixAccount
objectClass: shadowAccount
gidNumber: 100
gecos: Carsten
shadowLastChange: 13013
userPassword:: e2NyeXB0fVpaajdMUUtlM0gwcUk=
loginShell: /bin/bash

# search result
search: 2
result: 0 Success

# numResponses: 2
# numEntries: 1


--
Haeufig gestellte Fragen und Antworten (FAQ): 
http://www.de.debian.org/debian-user-german-FAQ/


Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: PAM an LDAP anbinden: Authentication service cannot retrieve authentication info.

2005-08-19 Diskussionsfäden Torsten Flammiger

Fabian Holler schrieb:

Hallo,


Servus

ich habe unter Debian Sarge ein LDAP Server aufgesetzt und einen User 
carsten angelegt.


Ich habe nsswitch und das pam Modul für ldap konfiguriert.
nsswitch findet den user:

sparctacus:~# getent passwd| grep carsten
carsten:x:1000:100:Carsten:/home/carsten:/bin/bash


das ist auch OK so

Wenn ich mich einloggen will, mit dem user carsten mit z.B. su oder über 
ssh erhalte ich die Fehlermeldung:

Authentication service cannot retrieve authentication info.

su carsten als root funktioniert.

Wo könnte mein Fehler liege, ich hab keine Idee mehr :)


[...]


Noch 'n paar infos :


cat /etc/pam_ldap.conf
host 127.0.0.1
base dc=sparctacus,dc=ldap,dc=it
ldap_version 3
rootbinddn cn=admin,dc=sparctacus,dc=ldap,dc=it


in meiner verwende ich kein rootbinddn - nur so am rande...
sollte es nämlich auch nicht benötigen, wenn man die ACL's
des slapd halbwegs korrekt erstellt hat.

Meine pam_ldap.conf schaut so aus:

host 192.168.1.2
base dc=flammiger,dc=org
ldap_version 3
scope sub
pam_login_attribute uid
pam_password crypt
nss_base_passwdou=people,dc=flammiger,dc=org?one
nss_base_shadowou=people,dc=flammiger,dc=org?one
nss_base_group ou=group,dc=flammiger,dc=org?one


---
grep ldap /etc/pam.d/*
/etc/pam.d/login:auth sufficient pam_ldap.so use_first_pass
/etc/pam.d/login:account sufficient pam_ldap.so
/etc/pam.d/login:password sufficient pam_ldap.so


die PAM-Konfiguration für login habe ich nicht angefasst.
Ich habe common-auth stattdessen für LDAP verwendet - ich
denke, PAM unter Ubuntu und orig. Debian wird sich nicht
großartug unterscheiden:

auth sufficient  pam_unix.so nullok_secure
auth sufficient  pam_ldap.so try_first_pass
account  sufficient  pam_ldap.so
password sufficient  pam_ldap.so


sparctacus:~# ldapsearch -x uid=carsten -D
cn=admin,dc=sparctacus,dc=ldap,dc=it -W
Enter LDAP Password:


[...]

Ergebnis meines Erachtens nach OK

Das Ganze hat natürlich einen Haken:
Da ich Ubuntu als Client verwende (Server läuft unter Sarge),
habe ich natürlich ein großes Problem mit sudo: das läuft
nämlich so nicht mehr - ein su - geht jedoch.
Wie ich sudo mit LDAP als Backend verheirate, hab ich noch nicht
wirklich in Angriff genommen :-)

Desweiteren ist damit noch nicht gewährleistet, das die Benutzer
ihr Passwort ändern können. Das muss man imho unter /etc/pam.d/passwd
einstellen? Ich hatte das schonmal am laufen aber net unter Debian..

hth
Torsten



Re: PAM an LDAP anbinden: Authentication service cannot retrieve authentication info.

2005-08-19 Diskussionsfäden Fabian Holler



die PAM-Konfiguration für login habe ich nicht angefasst.
Ich habe common-auth stattdessen für LDAP verwendet - 


Login kannst du auch verwenden. Funktioniert jedenfalls mit nem anderen
ClientServer :)


Desweiteren ist damit noch nicht gewährleistet, das die Benutzer
ihr Passwort ändern können.


Ich wär froh könnt ich mich erstmal authentifizieren :)

Ich hab mal 'n bisschen rumgetestet und mit 'nem anderen LDAP Server
funktioniert es. Ich hab nur die Binddn des Servers in der pam_ldap.conf
und libnss-ldap.conf geändert.

Also muss es an meinem Server liegen... Und nicht an den PAM
Einstellungen. Leider kann ich nicht herausfinden was an meiner
slapd.conf falsch ist.

meine slapd.conf sieht folgendermaßen aus:

include /etc/ldap/schema/core.schema
include /etc/ldap/schema/cosine.schema
include /etc/ldap/schema/nis.schema
include /etc/ldap/schema/inetorgperson.schema
schemacheck on
pidfile /var/run/slapd/slapd.pid
argsfile/var/run/slapd.args
loglevel0
modulepath  /usr/lib/ldap
moduleload  back_bdb
backend bdb
checkpoint 512 30
databasebdb
suffix  dc=sparctacus,dc=inmedias,dc=it
directory   /var/lib/ldap
index   objectClass eq
lastmod on
access to attrs=userPassword
by dn=cn=admin,dc=sparctacus,dc=inmedias,dc=it write
by anonymous auth
by self write
by * none
access to dn.base= by * read
access to *
by dn=cn=admin,dc=sparctacus,dc=inmedias,dc=it write
by * read


Gruß

Fabian




--
Haeufig gestellte Fragen und Antworten (FAQ): 
http://www.de.debian.org/debian-user-german-FAQ/


Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: PAM an LDAP anbinden: Authentication service cannot retrieve authentication info.

2005-08-19 Diskussionsfäden Torsten Flammiger

Fabian Holler schrieb:



die PAM-Konfiguration für login habe ich nicht angefasst.
Ich habe common-auth stattdessen für LDAP verwendet - 



Login kannst du auch verwenden. Funktioniert jedenfalls mit nem anderen
ClientServer :)


Desweiteren ist damit noch nicht gewährleistet, das die Benutzer
ihr Passwort ändern können.



Ich wär froh könnt ich mich erstmal authentifizieren :)

Ich hab mal 'n bisschen rumgetestet und mit 'nem anderen LDAP Server
funktioniert es. Ich hab nur die Binddn des Servers in der pam_ldap.conf
und libnss-ldap.conf geändert.

Also muss es an meinem Server liegen... Und nicht an den PAM
Einstellungen. Leider kann ich nicht herausfinden was an meiner
slapd.conf falsch ist.

meine slapd.conf sieht folgendermaßen aus:

include /etc/ldap/schema/core.schema
include /etc/ldap/schema/cosine.schema
include /etc/ldap/schema/nis.schema
include /etc/ldap/schema/inetorgperson.schema
schemacheck on
pidfile /var/run/slapd/slapd.pid
argsfile/var/run/slapd.args
loglevel0
modulepath  /usr/lib/ldap
moduleload  back_bdb
backend bdb
checkpoint 512 30
databasebdb
suffix  dc=sparctacus,dc=inmedias,dc=it
directory   /var/lib/ldap
index   objectClass eq
lastmod on
access to attrs=userPassword
by dn=cn=admin,dc=sparctacus,dc=inmedias,dc=it write
by anonymous auth
by self write
by * none
access to dn.base= by * read
access to *
by dn=cn=admin,dc=sparctacus,dc=inmedias,dc=it write
by * read


die letzten beiden sind irgendwie redundant was den * angeht?

ich hab das so gelößt:

access to dn.subtree=dc=flammiger,dc=org attr=userPassword
by dn=cn=Manager,dc=flammiger,dc=org write
by self write
by * auth

access to dn.subtree=ou=people,dc=flammiger,dc=org
by self write
by * read
by * auth

access to dn=ou=groups,dc=flammiger,dc=org
by * read

Torsten



Re: PAM an LDAP anbinden: Authentication service cannot retrieve authentication info.

2005-08-19 Diskussionsfäden Torsten Flammiger

Fabian Holler schrieb:



die PAM-Konfiguration für login habe ich nicht angefasst.
Ich habe common-auth stattdessen für LDAP verwendet - 



Login kannst du auch verwenden. Funktioniert jedenfalls mit nem anderen
ClientServer :)


Desweiteren ist damit noch nicht gewährleistet, das die Benutzer
ihr Passwort ändern können.



Ich wär froh könnt ich mich erstmal authentifizieren :)

Ich hab mal 'n bisschen rumgetestet und mit 'nem anderen LDAP Server
funktioniert es. Ich hab nur die Binddn des Servers in der pam_ldap.conf
und libnss-ldap.conf geändert.

Also muss es an meinem Server liegen... Und nicht an den PAM
Einstellungen. Leider kann ich nicht herausfinden was an meiner
slapd.conf falsch ist.


nochwas:
poste doch mal den entsprechenden syslog-Eintrag des slapd



Re: PAM an LDAP anbinden: Authentication service cannot retrieve authentication info.

2005-08-19 Diskussionsfäden Fabian Holler


Es liegt an meinen access regeln. Bis du mich drauf hingewiesen hast,
bin ich garnicht drauf gekommen, einfach mal das LogLevel hochzuschrauben.

Aug 19 15:29:56 sparctacus slapd[9067]: = acl_mask: [2] applying
auth(=x) (stop)
Aug 19 15:29:56 sparctacus slapd[9067]: = acl_mask: [2] mask: auth(=x)
Aug 19 15:29:56 sparctacus slapd[9067]: = access_allowed: read access
denied by auth(=x)
Aug 19 15:29:56 sparctacus slapd[9067]: send_search_entry: conn 0 access
to attribute userPassword, value #0 not allowed

Soweit ich das manual verstanden habe sollte by anonymous auth zum
authentifizieren reichen, wie auch immer ich hab noch by * auth von
dir übernommen.

access to attrs=userPassword
by dn=cn=admin,dc=sparctacus,dc=inmedias,dc=it write
by anonymous auth
by self write
by * auth


Funktioniert aber immer noch nicht :/


Gruß

Fabian


--
Haeufig gestellte Fragen und Antworten (FAQ): 
http://www.de.debian.org/debian-user-german-FAQ/


Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: PAM an LDAP anbinden: Authentication service cannot retrieve authentication info.

2005-08-19 Diskussionsfäden Torsten Flammiger

Fabian Holler schrieb:



Es liegt an meinen access regeln. Bis du mich drauf hingewiesen hast,
bin ich garnicht drauf gekommen, einfach mal das LogLevel 
hochzuschrauben.


Aug 19 15:29:56 sparctacus slapd[9067]: = acl_mask: [2] applying
auth(=x) (stop)
Aug 19 15:29:56 sparctacus slapd[9067]: = acl_mask: [2] mask: auth(=x)
Aug 19 15:29:56 sparctacus slapd[9067]: = access_allowed: read access
denied by auth(=x)
Aug 19 15:29:56 sparctacus slapd[9067]: send_search_entry: conn 0 access
to attribute userPassword, value #0 not allowed

Soweit ich das manual verstanden habe sollte by anonymous auth zum
authentifizieren reichen, wie auch immer ich hab noch by * auth von
dir übernommen.

access to attrs=userPassword



access to attrs=userPassword
.. ^^^
Sicher, das das kein Schreibfehler ist?






Re: PAM an LDAP anbinden: Authentication service cannot retrieve authentication info.

2005-08-19 Diskussionsfäden Fabian Holler



access to attrs=userPassword
.. ^^^
Sicher, das das kein Schreibfehler ist?



Jep, mit allow * read funktioniert der login


--
Haeufig gestellte Fragen und Antworten (FAQ): 
http://www.de.debian.org/debian-user-german-FAQ/


Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: PAM an LDAP anbinden: Authentication service cannot retrieve authentication info.

2005-08-19 Diskussionsfäden Torsten Flammiger

Fabian Holler schrieb:



Es liegt an meinen access regeln. Bis du mich drauf hingewiesen hast,
bin ich garnicht drauf gekommen, einfach mal das LogLevel 
hochzuschrauben.


Aug 19 15:29:56 sparctacus slapd[9067]: = acl_mask: [2] applying
auth(=x) (stop)
Aug 19 15:29:56 sparctacus slapd[9067]: = acl_mask: [2] mask: auth(=x)
Aug 19 15:29:56 sparctacus slapd[9067]: = access_allowed: read access
denied by auth(=x)
Aug 19 15:29:56 sparctacus slapd[9067]: send_search_entry: conn 0 access
to attribute userPassword, value #0 not allowed

Soweit ich das manual verstanden habe sollte by anonymous auth zum
authentifizieren reichen, wie auch immer ich hab noch by * auth von
dir übernommen.

access to attrs=userPassword
by dn=cn=admin,dc=sparctacus,dc=inmedias,dc=it write
by anonymous auth


tu mal by anonymous auth ganz nach unten in dieser ACL o.
gleich wech damit...


by self write
by * auth 


1. kannst du deinen Loglevel so anpassen, das er dir die Abfrage zeigt...
2. teste, ob dir der slapd den Password-Hash anzeigt, wenn Du dich per
   ldapsearch mit deiner DN suchst - wie du es schon mit dem admin
   gemacht hast

UND: Geh weider, des gibts doch net! wo liegt der Hase im Pfeffer?

Torsten