So wechseln Sie (SU) auf ein anderes Benutzerkonto ohne Passwort
- 3175
- 989
- Lana Saumweber
In diesem Handbuch zeigen wir, wie Sie zu einem anderen oder einem bestimmten Benutzerkonto wechseln, ohne ein Kennwort zu benötigen. Zum Beispiel haben wir ein Benutzerkonto auf dem Namen Postgres (der Standard PostgreSQL Superuser -Systemkonto), wir möchten jeden Benutzer (in der Regel unser PostgreSQL Datenbank- und Systemadministratoren) in der Gruppe genannt Postgres Um zum Wechsel zum Wechsel zu der Postgres Konto mit dem su
Befehl ohne ein Passwort einzugeben.
Standardmäßig kann nur der Root -Benutzer zu einem anderen Benutzerkonto wechseln, ohne ein Kennwort einzugeben. Jeder andere Benutzer wird aufgefordert, das Kennwort des Benutzerkontos einzugeben, zu dem er wechselt (oder wenn er den Befehl sudo verwendet, werden aufgefordert, sein Passwort einzugeben), wenn er nicht das richtige Passwort angibt ein "Authentifizierung fehlgeschlagenFehler wie im folgenden Screenshot gezeigt.
Fehler bei der AuthentifizierungsfehlerSie können eine der beiden unten angegebenen Lösungen verwenden, um das obige Problem zu lösen.
1. Verwenden des PAM -Authentifizierungsmoduls
Pam (Steckbare Authentifizierungsmodule) stehen im Kern der Benutzerauthentifizierung auf modernen Linux -Betriebssystemen. Damit Benutzer in einer bestimmten Gruppe ohne Kennwort zu einem anderen Benutzerkonto wechseln können, können wir die Standard -PAM -Einstellungen für die ändern SU -Befehl im /etc/pam.d/su Datei.
# vim /etc /pam.D/SU oder $ sudo vim/etc/pam.d/su
Fügen Sie die folgenden Konfigurationen danach hinzu “Authark über pam_rootok.So”Wie im folgenden Screenshot gezeigt.
auth [success = ignore default = 1] PAM_SUCPEDE_IF.Also user = postgres auth genügend pam_succepe_if.So ua_uid user Ingroup Postgres
In der obigen Konfiguration prüft der erste Zeilen, wenn der Zielbenutzer ist Postgres, Wenn dies der Fall ist, überprüft der Service den aktuellen Benutzer, sonst die Standard = 1
Die Zeile wird übersprungen und die normalen Authentifizierungsschritte werden ausgeführt.
auth [success = ignore default = 1] PAM_SUCPEDE_IF.Also user = postgres
Die folgende Zeile überprüft, ob sich der aktuelle Benutzer in der Gruppe befindet Postgres, Wenn Ja
, Der Authentifizierungsprozess wird als erfolgreich angesehen und gibt dadurch ausreichend zurück. Andernfalls werden die normalen Authentifizierungsschritte ausgeführt.
authreich ausreichend pam_sucreped_if.So ua_uid user Ingroup PostgresKonfigurieren Sie PAM, um den Befehl SU ohne Passwort zu ermöglichen
Speichern Sie die Datei und schließen Sie sie.
Als nächstes fügen Sie den Benutzer hinzu (zum Beispiel Aaronk) dass du willst su
zum Konto Postgres ohne Passwort für die Gruppe Postgres Verwenden von UsMod -Befehl.
$ sudo usermod -ag postgres aaronk
Versuchen Sie nun su
zum Postgres Konto als Benutzer Aaronk, Sie sollten nicht für ein Passwort aufgefordert werden, wie im folgenden Screenshot gezeigt:
$ su - PostgresBenutzer zur Gruppe hinzufügen
2. Verwenden von Sudoers -Datei
Du kannst auch su
an einen anderen Benutzer, ohne ein Passwort zu benötigen, indem Sie einige Änderungen in der Sudoers -Datei vornehmen. In diesem Fall der Benutzer (zum Beispiel Aaronk) Wer wechselt zu einem anderen Benutzerkonto (z. B. zum Beispiel Postgres) sollte in der Sudoers -Datei oder in der Sudo -Gruppe sein, um die aufrufen zu können Sudo -Befehl.
$ sudo visudo
Fügen Sie dann die folgende Konfiguration unter die Zeile hinzu "%Sudo alle = (alle: alle) alle"
wie in den folgenden Screenshot gezeigt.
Aaronk All = nopasswd: /bin /su - postgresBenutzer zur sudoers -Datei hinzufügen
Speichern und schließen Sie die Datei.
Versuchen Sie nun su
zum Konto Postgres als Benutzer Aaronk, Die Shell sollte Sie nicht auffordern, ein Passwort einzugeben:
$ sudo su - PostgresWechseln Sie zu einem anderen Benutzer ohne Passwort
Das ist alles fürs Erste! Weitere Informationen finden Sie auf der PAM -Handbucheintragsseite (Mann Pam.Conf) und das von Sudo -Befehl sowie (Mann sudo).
$ MAN PAM.Conf $ Man sudoVerwandte Lesen: 10 nützliche Sudoers -Konfigurationen zum Einstellen von 'sudo' unter Linux
- « Setup Kennwortloses SSH -Login für mehrere Remote -Server mithilfe von Skript einrichten
- So installieren Sie Postgresql und Pgadmin in RHEL 8 »