Erstellen eines anderen Benutzers für eine bestimmte Domain

0

Normalerweise logge ich mich als root ein, was meines Wissens nach eine schlechte Praxis ist.

Also habe ich einen anderen Benutzer erstellt, nennen wir es user1. Außer jetzt, wenn ich mich als dieser Benutzer anmelde, bin ich in einem leeren / home-Verzeichnis und es ist ziemlich nutzlos.

Das Problem ist, dass user1ich Zugriff auf das Verzeichnis / home / eines anderen Benutzers haben möchte , wodurch die Berechtigungen des anderen Benutzers effektiv geklont werden. Wie kann ich das machen?

Chud37
quelle
Sind Sie vertraut mit Befehlen wie cp, chmodund chown?
John1024
1
@ John1024 ja das bin ich, aber als ich sie das letzte Mal benutzt habe, habe ich alles ruiniert.
Chud37

Antworten:

2

Sie könnten dies tun, indem Sie für beide Benutzer dieselbe Benutzer-ID (UID) verwenden. Dies ist jedoch eine sehr schlechte Vorgehensweise und kann unbeabsichtigte Folgen haben. Sehen Sie dies für eine umfassende Diskussion darüber.

Eine bessere Möglichkeit besteht darin, diese Benutzer in derselben Gruppe zu haben und die Berechtigungen für R- oder RW-Gruppen in ihren Privathaushalten festzulegen oder weiterhin erweiterte Attribute (man setfattr) zu verwenden oder Ihrem Benutzer die Möglichkeit zu geben, sudo su - <anotheruser>über eine /etc/sudoersDatei zuzugreifen, oder Ihrem Benutzer zu ermöglichen, sudo als Root zu verwenden.

Gleiche Gruppenoption

Erstelle zuerst eine spezielle Gruppe, sag team_a:

groupadd team_a

Stellen Sie diese Gruppe dann auf Ihre Benutzer ein (sagen Sie user1und user2). Standardmäßig wird jeder Benutzer in einer neuen Gruppe mit demselben Namen wie der Benutzer erstellt. Sie legen team_a als Hauptgruppe fest und lassen die einzelnen Gruppen als sekundäre Gruppen:

for user in user1 user2; do usermod -g team_a $user; usermod -a -G $user $user; done

Aktualisieren Sie anschließend die Berechtigungen auf der Startseite von Benutzer2, und gewähren Sie den Mitgliedern der team_aGruppe rekursiv uneingeschränkten Zugriff auf den Ordner sowie auf alle darin enthaltenen Dateien und Ordner. dies jedes Mitglied erlauben würde , den team_aZugriff auf user2‚s Home - Ordner und Dateien, aber Sie gewähren Zugang nicht über andere Benutzer (zB die folgenden bietet keinen Zugang zu Mitgliedern team_azu Ihrem user1‘ s Home - Ordner):

chmod -R g+rwX ~user2

Beachten Sie, dass Sie user2diese Berechtigungen jederzeit entfernen oder neue Dateien erstellen können, ohne der Gruppe Zugriffsberechtigungen zu erteilen.

Stellen Sie schließlich sicher, dass Ihre anderen Benutzer alle Dateien mit uneingeschränktem Zugriff für Mitglieder dieser Gruppe erstellen:

echo "umask 002" >> ~user2/.profile

Ihr Benutzer, der zur Standardgruppe anderer Benutzer gehört:

Möglicherweise einfacher als oben beschrieben, können Sie Ihren user1Benutzer zu den Standardgruppen aller anderen Benutzer hinzufügen . Standardmäßig ist in den meisten Linux-Distributionen und UNIX-Systemen die Standardgruppenberechtigung für neue Dateien der vollständige Zugriff auf die Gruppe, wenn der Gruppenname des Benutzers mit dem Namen des Benutzers übereinstimmt. umaskIn diesem Fall müssen diese Benutzer nicht manipuliert werden.

Einstellung user1, auch in user2die Standardgruppe zu gehören :

usermod -a -G user2 user1

Gewähren des Zugriffs auf Mitglieder der user2Gruppe auf user2den Basisordner von:

chmod g+rwX ~user2
Ziggy Crueltyfree Zeitgeister
quelle
Können Sie die Idee der Gruppenberechtigungen anhand von CLI-Beispielen näher erläutern? : D
Chud37
@ Chud37 Beispiele hinzugefügt
Ziggy Crueltyfree Zeitgeister
@ Chud37 Eine weitere, vielleicht einfachere Option sowie eine notwendige zusätzliche Anforderung (umask) für das vorherige Beispiel wurden
hinzugefügt
@ZiggyCrueltyfreeZeitgeister - Möglicherweise möchten Sie den ersten usermod-Befehl ändern, damit die neue Gruppe an den Benutzer angehängt wird. Auf diese Weise werden Sie einen Zeilencode los.
Ramhound