Ich habe kürzlich Ubuntu ldap client authentication
auf karmischen und luziden Desktop-Clients eingerichtet und der LDAP-Server läuft auf einem 10.04 LTS-Server. Dies ist der Link, dem ich für die Client-Einrichtung gefolgt bin, und wahrscheinlich funktioniert dies auch für 11.04. Ich konnte mich bei Clients mit den ldap-Benutzerkonten anmelden und auf den Clients habe ich einen Eintrag session required pam_mkhomedir.so umask=0022 skel=/etc/skel
in pam.d / verwendet common-session
, um das Basisverzeichnis auf Clientcomputern automatisch zu erstellen, wenn sich der Benutzer zum ersten Mal anmeldet. Ich denke, es gibt eine Möglichkeit, das Home-Verzeichnis von Client zu Server und umgekehrt zu synchronisieren, sodass Benutzer ihre Dokumente auf jedem Client haben, bei dem sie sich anmelden.
Ich habe die folgende Aufgabe noch zu erledigen:
- Synchronisieren Sie die Home-Verzeichnisse zwischen Client und Server (genau wie beim Roaming-Profil in Windows).
Ich habe es mit versucht, autofs
aber das Problem liegt bei lokalen Benutzerkonten (Administrator, Gast) auf Clientcomputern, die ebenfalls synchronisiert oder überschrieben werden (ich möchte nicht, dass sie gemountet werden), wenn ich den Eintrag * server:/ldaphome/&
in /etc/auto.home
das Home-Verzeichnis des LDAP-Benutzers lege synchronisiert (inklusive Eintrag /home /etc/autofs.home
in /etc/autofs.master
).
Jeder hat einen Trick, um dies oder auf andere Weise zu tun, damit ich mich bei Clients mit ldap- und lokalen Benutzeranmeldeinformationen anmelden kann, wobei das Home-Verzeichnis für ldap-Benutzer synchronisiert ist. Ich weiß, dass viele Meister hier sind, wie würde man das mit ihrem Stil machen?
Update: 1
Ich habe versucht, ein autofs
anderes Verzeichnis (ldaphome) als home
auf einem Client automatisch bereitzustellen, und ich habe versucht, das ldaphome/$USER
und home/$USER
auf demselben Client zu verknüpfen, sodass das Home-Verzeichnis home / $ USER des Benutzers aufgrund von symlink synchronisiert wird, wenn das ldaphome auf dem Server ldaphome auf dem Client bereitstellt . Also habe ich die /etc/profile.d/custom.sh
Datei bearbeitet und ln -sf "/ldaphome/$USER" "/home/$USER"
diese Verzeichnisse beim Login verlinkt. Ich habe festgestellt, dass Symlinks für das Verzeichnis nicht wie erwartet funktionieren, da ein Linkname unter / home / $ USER / $ USER erstellt wird.
DROPPED THIS SYMLINK METHOD!
Update: 2
Es fühlt sich nicht anders an, als das Home-Verzeichnis des lokalen Benutzers auf Clients zu ändern und das home
Verzeichnis automatisch zu mounten, autofs
aber derselbe lokale Administrator-Benutzer auf Clients, den ich sichern möchte, ist auch als Benutzerkonto auf dem Server (Admin, Gast) verfügbar. .
Update: 3
Ich habe das Verschieben ( usermod -m -d /local-home/admin admin
) der bereits vorhandenen lokalen Benutzerkonten in ein anderes Ausgangsverzeichnis kompromittiert und dann automount für home
auf dem Client eingerichtet. Wieder bin ich auf ein Problem gestoßen, sobald der Client durch ldap authentifiziert ist, werden die Home-Dokumente nicht vom Server abgerufen, sondern funktionieren nur, wenn ich sie manuell ( mount ldapserver:/ldaphome/test /home/test
) auf dem Client einbinde . Der Kunde ist karmic
...
Client-Konfiguration :
vim /etc/nsswitch.conf:
# pre_auth-client-config # passwd: compat
passwd: files ldap
# pre_auth-client-config # group: compat
group: files ldap
# pre_auth-client-config # shadow: compat
shadow: files ldap
hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4
networks: files
protocols: db files
services: db files
ethers: db files
rpc: db files
# pre_auth-client-config # netgroup: nis
netgroup: nis
vim /etc/ldap.conf:
base dc=mydomain,dc=net
uri ldap://192.168.1.2
ldap_version 3
rootbinddn cn=admin,dc=mydomain,dc=net
bind_policy soft
pam_password md5
nss_initgroups_ignoreusers avahi,avahi-autoipd,backup,bin,colord,daemon,games,gdm,gnats,hplip,irc,kernoops,libuuid,lightdm,list,lp,mail,man,messagebus,news,proxy,pulse,root,rtkit,saned,speech-dispatcher,sshd,statd,sync,sys,syslog,usbmux,uucp,vboxadd,www-data
vim /etc/ldap/ldap.conf:
BASE dc=mydomain,dc=net
URI ldap://192.168.1.2
SIZELIMIT 0
TIMELIMIT 0
DEREF never
# TLS certificates (needed for GnuTLS)
TLS_CACERT /etc/ssl/certs/ca-certificates.crt
vim /etc/auto.master:
+auto.master
/home /etc/auto.home
vim /etc/auto.home:
* 192.168.1.2:/ldaphome/&
Ich habe ldaphome
auf dem Server geteilt (192.168.1.2). Jetzt ist das Problem, dass ich /home
als separate Partition auf dem Client habe und sie in fstab
gemountet und mit ldaphome gemountet habe, was Sie in autofs config sehen konnten. Wenn ich versuche, mich mit ldap anzumelden, wird nach erfolgreicher Authentifizierung erneut der Anmeldebildschirm angezeigt. Wenn ich den autofs
Dienst session required pam_mkhomedir.so umask=0022
beende , meldet er sich normalerweise beim Erstellen des Basisverzeichnisses an, wie ich es in pam.d / common-session verwendet habe.
Wenn ich versuche, mich zum ersten Mal mit einem neuen ldap-Konto anzumelden, wird der folgende Fehler angezeigt:
Creating directory '/home/user3'.
Unable to create and initialize directory '/home/user3'.
No directory, logging in with HOME=/
vim /var/log/auth.log:
lucid mkhomedir_helper: PAM unable to create directory /home/user3: No such file or directory
quelle
/home
Partition für Ihre Clients zu verwenden? Ich habe es versucht und mich seitdem für die Verwendung entschieden/export/home/<USERNAME>
. Ich gehe/home
für lokale Systemkonten. Wie auch immer, ich bin auf dasselbe Problem gestoßen, aber ich verwende WinBind, um mich bei Active Directory zu authentifizieren. Ich kann die Home-Verzeichnisse automatisch lokal erstellen, konnte jedoch keine Autofs aus der Ferne verwenden. Mein Fix? Sie wissen, wer alle Ihre Benutzer sind. Erstellen Sie daher zuerst ihren Basisordner auf dem NFS-Server./home
befindet sich jedoch eine separate Partition mit 30 GB, die die NFS-Freigabe/ldaphome
auf dem Server bereitstellt . Irgendein Trick zum Spielen?.Antworten:
Es gibt zwei gängige Methoden für den Umgang mit einer Mischung aus lokalen und zentralisierten Konten (LDAP oder NIS oder was auch immer). Ihr drittes Update umfasst eines davon.
/home
Basisverzeichnis für Privathaushalte/home
Basisverzeichnis für PrivathaushalteIch benutze häufig Option # 1 und erstellen
/local
dann mein Setup lokale Konten Home - Verzeichnisse haben dort wie/local/admin
,/local/sysadmin
,/local/joe
usw. ich dann autofs verwenden , um zu steuern unter zentralisierter / Remote - Home - Verzeichnisse Montage/home
viel in der gleichen Art und Weise Sie beschreiben in " Update 3 ".Ich nehme an, Ihr Server exportiert Home-Verzeichnisse mit NFS. Wenn das manuelle Mounten des NFS-Exports auf dem Client wie erwartet funktioniert, Autofs jedoch nicht, liegt Ihr Problem mit ziemlicher Sicherheit in Ihrer Autofs-Konfiguration.
Für Hilfe bei Ihrem autofs Problem, schreiben Sie bitte den Inhalt
/etc/nsswitch.conf
,/etc/(open)ldap/ldap.conf
,/etc/ldap.conf
und/etc/auto.master
und/etc/auto.home
(oder was auch immer / , wo die entsprechenden autofs Konfigurationen sind).quelle
sshfs
anstelle von verwendenautofs
? unix.stackexchange.com/questions/306713/…Hast du dir pam_mount angesehen ? Das ist es, was ich derzeit verwende, obwohl mein Anwendungsfall etwas anders ist als Ihr. Dieser Blogpost bietet einen ziemlich guten Überblick über den Prozess. Er ist auf einen SAMBA-Server ausgerichtet. Wenn Sie jedoch die Samba-spezifischen Teile ignorieren, funktioniert er mit NFS (das ist, was ich verwende) und funktioniert mit 10.04. Ich habe am 11.04 nicht versucht.
quelle
Ich musste
home directory
ldap-Benutzer erstellen oder kopieren , unterldaphome
denen ich über nfs auf dem Server geteilt habe, und ich hatte überhaupt nicht erwartet, dass dies die Ursache sein sollte. Ich dachte, das Home-Verzeichnis des Benutzers wird automatisch unter ldaphome erstellt, wenn sich der Benutzer zum ersten Mal beim Client anmeldet. Ich habe die folgenden Dinge getan und jeder Benutzer ist leicht zu authentifizieren und hat sein Ausgangsverzeichnis automatisch automatisiert, ohne dass eine Fehlermeldung angezeigt wird, und ich denke, der Eintrag wird überhauptsession required pam_mkhomedir.so umask=0022
nicht benötigt:Bei Server
Oder wenn das Basisverzeichnis für ldap-Benutzer unter / home nicht verfügbar ist, hat das Erstellen des Verzeichnisses funktioniert.
Beim Kunden,
Verschieben Sie das lokale Benutzerkonto in ein beliebiges Verzeichnis
/local-home
.mkdir /local-home
usermod -m -d /local-home/username username
/home
Verzeichnis in der/etc/fstab
Datei aus, damit Autofs gemountet werden/home
.Versuchen Sie, sich mit ldap-Anmeldeinformationen auf dem Client anzumelden ... hat funktioniert!
quelle
/etc/pam.d/system-auth
...session required pam_mkhomedir.so skel=/etc/skel umask=0077
rthomson
der Antwort verwendet, aber die Verwendung von beiden hat keine Verwendung.group: cannot find group id 1002
beim Öffnen des Terminals, sollte die Gruppe des Home-Verzeichnisses auch auf dem Client erstellt werden .