Hallo erstmal!
Zum einen moechte ich meine Installationsroutine hier vorstellen. Zum anderen habe ich spaeter ein Problem mit dem pam_mount Modul in Verbindung mit GDM (Der normale login funktioniert tadellos mit pam_mount).
Folgende Konfiguration ist auf der Serverseite:
- Ein LDAP Server ist in Betrieb
- Ein Samba Server bietet die Homeverzeichnisse als Freigaben an (Mit Authentifizierung ueber LDAP)
Der Client wurde nun folgendermassen installiert:
- Standard Installation von Ubuntu 6.06 Dapper Drake
- Ergaenzung der sources.list um die "Universe" Pakete
Dazu:
1)
sudo vi /etc/apt/sources.list
--> "#" entfernen vor Universe Repository
2)
sudo apt-get update
- Installation der Software
3)
sudo apt-get install libnss-ldap
Auf die Fragen entsprechend der Serverkonfiguration von LDAP antworten.
4)
sudo vi /etc/libnss-ldap.conf
"#" entfernen vor "pam_password exop"
5)
sudo vi /etc/nsswitch.conf
Folgendermassen aendern:
password: files ldap group: files ldap shadow: files ldap
6) Test mit:
getent passwd
Wird eine lange Liste angezeigt mit den lokalen UND den Benutzer von dem LDAP Verzeichnis bist Du soweit erfolgreich!
Nun die Authentifizierung durch ein PAM Modul mit dem LDAP-Server
7)
sudo apt-get install libpam-ldap
Die beiden Fragen koennen mit "Nein" beantwortet werden.
Da ich die Passwoerter von den Samba Homelaufwerken und dem Linux Account synchron halten moechte installiere ich auch folgendes PAM Modul:
8)
sudo apt-get install libpam_smbpass smbfs
In der richtigen Reihenfolge konfiguriert (/etc/pam.d/service) werden die Passwoerter synchronisiert.
Aber vorerst noch einige Einstellungen:
9)
sudo vi /etc/pam_ldap.conf
"#" entfernen vor "pam_password exop"
10)
sudo vi /etc/ldap/ldap.conf
BASE dc=ldap,dc=server URI ldap://192.168.5.1:389 (IP des Servers)
Die folgenden Informationen werden von libpam-smbpass benoetigt:
11)
sudo vi /etc/samba/smb.conf
[global] passdb backend = ldapsam:ldap://192.168.5.1 ldap admin dn = cn=admin,dc=server,dc=ldap ldap suffix = dc=server,dc=ldap ldap user suffix = ou=People ldap group suffix = ou=Group
Zudem muss das Administratorpasswort fuer den LDAP Server fuer Samba gespeichert werden. Fragt mich nicht warum, aber ohne funktioniert es nicht:
smbpasswd -w passwort
Ausserdem moechte ich die Homeverzeichnisse automatisch beim Login gemountet haben:
12)
sudo apt-get install libpam-mount
13)
sudo vi /etc/security/pam_mount.conf
volume * smbfs 192.168.5.1 & /home/& username=&,uid=& - -
Damit werden die Homeverzeichnisse automatisch vom richtigen Benutzer mit dem Passwort vom Login gemountet. Und zwar nur das Homeverzeichnis des aktuellen Benutzers. Beim Logout wird es wieder ungemountet.
Aber bisher funktioniert nichts, denn PAM (Pluggable Authentication Module) ist noch nicht fuer die Module (pam_mount, pam_smbpass, pam_ldap) konfiguriert:
14)
sudo vi /etc/pam.d/login
auth required pam_securetty.so auth required pam_nologin.so auth optional pam_mount.so auth sufficient pam_smbpass.so try_first_pass audit debug auth required pam_unix.so account sufficient pam_ldap.so account required pam_unix.so password required pam_cracklib.so password required pam_smbpass.so debug use_first_pass use_authok password required pam_unix.so use_first_pass use_authtok session required pam_unix.so none # debug or trace session required pam_limits.so session required pam_env.so session optional pam_mail.so session optional pam_mount.so session required pam_mkhomedir.so umask=0022 skel=/etc/skel
15)
sudo vi /etc/pam.d/passwd
auth sufficient pam_ldap.so auth required pam_unix.so nullok use_first_pass account sufficient pam_ldap.so account required pam_unix.so password required pam_ldap.so password sufficient pam_smbpass.so audit use_first_pass debug password required pam_unix.so nullok use_first_pass use_authtok session required pam_unix.so
16)
sudo vi /etc/pam.d/gdm
auth required pam_securetty.so auth required pam_nologin.so auth optional pam_mount.so auth sufficient pam_smbpass.so try_first_pass audit debug auth required pam_unix.so account sufficient pam_ldap.so account required pam_unix.so password required pam_cracklib.so password required pam_smbpass.so debug use_first_pass use_authok password required pam_unix.so use_first_pass use_authtok session required pam_unix.so none # debug or trace session required pam_limits.so session required pam_env.so session optional pam_mail.so session optional pam_mount.so session required pam_mkhomedir.so umask=0026 skel=/etc/skel
Und der Konsolen-Login funktioniert problemlos:
- Authentifizierung ueber LDAP (Samba-Accounts in LDAP)
- Mounten des Homeverzeichnisses vom Samba Server beim login
- Unmounten des Homeverzeichnisses beim logout
Das Aendern des Passworts mithilfe von "passwd" aendert gleichzeitig das Unix- (LDAP - userPassword) und Samba- (LDAP - NTpassword) Passwort!
Der "Service" Login funktioniert also mit den Einstellungen oben. Kopiere ich die Einstellungen fuer den Service GDM (/etc/pam.d/gdm - Das ist der Service fuer den Gnome Login Manager) funktioniert es nicht. Ich kann mich zwar anmelden, aber eine Meldung erscheint, dass ich mich nicht laenger als 10 Sekunden angemeldet habe mit folgender Fehlermeldung:
"Unable to lock ICE authority file: /home/user/.ICEauthority"
--> GELOEST!
Ein Teil muss in das TMP Verzeichnis ausgelagert werden:
vi /etc/gdm/Xsession
ICEAUTHORITY="/tmp/ICEauthority-${USER}"
export ICEAUTHORITYGruss
Bonobo
2004 – 2017 ubuntuusers.de • Einige Rechte vorbehalten
