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
/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?.