Verwalten von Benutzern bei gleichzeitiger Freigabe von Home-Verzeichnissen auf mehreren Servern

Verwalten von Benutzern bei gleichzeitiger Freigabe von Home-Verzeichnissen auf mehreren Servern

Ich habe zwei Ubuntu-Server, die sich Home-Verzeichnisse teilen. Das /home-Verzeichnis von Server1 ist als /home-Verzeichnis auf Server2 gemountet. Ich habe ein Problem, wenn ich versuche, einer neuen Person Zugriff auf beide Server zu gewähren. Ich verwende auf jedem Server den Befehl adduser mit demselben Benutzernamen. Die UID stimmt dabei jedoch nicht überein, sodass der Benutzer letztendlich keine Berechtigung für Dateien in seinem Home-Verzeichnis hat, wenn er mit dem Konto von Server2 darauf zugreift.

Auf Server 1, wo der Benutzer zusammen mit seinem Home-Verzeichnis erstellt wurde. (Sieht alles in Ordnung aus)

selah@server1:~$ tail -n 2 /etc/passwd
dfulgon:x:1083:1087:,,,:/home/dfulgon:/bin/bash
swartp:x:1085:1089:,,,:/home/swartp:/bin/bash

selah@server1:~$ ll -a /home/dfulgon | tail -n 3
-rw-rw----  1 dfulgon dfulgon   25 Jun  2 13:41 .my.cnf~
-rw-r--r--  1 dfulgon dfulgon  675 Jun  2 13:35 .profile
drwxrwxr-x  2 dfulgon dfulgon 4096 Jun  2 14:27 .ssh/

Auf Server 2, wo ein Benutzerkonto mit demselben Namen erstellt wurde, aber das Home-Verzeichnis des anderen Servers verwendet wird: (Die Berechtigungen sind durcheinander und verweisen auf den falschen Benutzer)

selah@server2:~$ tail -n 2 /etc/passwd
bslf:x:1083:1087:,,,:/home/bslf:/bin/bash
dfulgon:x:1087:1091:,,,:/home/dfulgon:/bin/bash

selah@server2:~$ ll -a /home/dfulgon | tail -n 3
-rw-rw----  1 bslf bslf   25 Jun  2 13:41 .my.cnf~
-rw-r--r--  1 bslf bslf  675 Jun  2 13:35 .profile
drwxrwxr-x  2 bslf bslf 4096 Jun  2 14:27 .ssh/

Gibt es eine gute Möglichkeit, dieses Problem zu lösen und gleichzeitig den Komfort gemeinsam genutzter Home-Verzeichnisse beizubehalten?

Antwort1

Am einfachsten ist es, Ihre Konten in einer zentralen Datenbank zu erstellen. Heutzutage hat fast jeder eine Art LDAP-Datenbank dafür. Wenn Sie jedoch die unsichere Methode der alten Schule verwenden möchten, können Sie sich auch NIS ansehen. (Tun Sie das nicht).

Eine weitere Möglichkeit besteht darin, ein Konfigurationsverwaltungstool zum Erstellen Ihrer Konten zu verwenden und die UIDs synchronisiert zu halten. Sie können Ihre Konten also mit Puppet erstellen und die gewünschte UID/GID definieren.

Mit dem NFS-ID-Mapper können Sie einige Dinge tun, um IDs zwischen Systemen zu übersetzen, aber das kann zu einem Verwaltungsalbtraum werden.

Antwort2

Die Lösung, für die wir uns entscheiden:

Überprüfen Sie beide /etc/passwd-Dateien und wählen Sie die nächste geeignete GID und UID. Geben Sie sie dann während des Benutzererstellungsprozesses wie folgt an.

addgroup -g $GID $username
adduser -g $GID -u $UID $username 

verwandte Informationen