
Bitte fragen Sie nicht warum, sondern ob es möglich ist, dies zu tun.
p/s: Ich weiß, dass das nicht gut ist. Nehmen wir einfach an, jemand aus der oberen Führungsebene, der keine Computerkenntnisse hat, möchte eine ArtKontrolleüber den Server.
Antwort1
Tun Sie das nicht ... Sie können ihnen entweder das Root-Passwort geben oder es ausführen sudo passwd root
(dabei wird vorausgesetzt, dass sudo so eingestellt ist, dass entweder das Benutzerpasswort oder kein Passwort verwendet wird und dass passwd ein Befehl ist, für dessen Ausführung durch diesen Benutzer sudo autorisiert ist).
Antwort2
sudo
ist das Schweizer Taschenmesser der benutzerdefinierten Berechtigungen. Sie können den Benutzer bitten,
sudo /usr/bin/passwd root
Um zu sehen, wie dies aktiviert werden kann, sehen Sie hier ein entsprechendes Beispiel von der Manpage sudoers(5).
pete HPPA = /usr/bin/passwd [A-Za-z]*, !/usr/bin/passwd root
The user pete is allowed to change anyone's password except for root on the
HPPA machines. Note that this assumes passwd(1) does not take multiple
usernames on the command line.
Sie müssen die Logik natürlich umkehren, um Ihr Ziel zu erreichen. Sie führen also die aus visudo
und fügen eine Zeile wie diese hinzu
user ALL = /usr/bin/passwd root
Zu /etc/sudoers
.
Antwort3
Vielleicht können Sie diese Zeile zur Sudoer-Datei hinzufügen (mit visudo
) und phunehehe
durch den Benutzernamen ersetzen.
phunehehe localhost = NOPASSWD: /usr/bin/passwd
Ich weiß allerdings nicht, ob das Ihre Bedingung eines „normalen Benutzers“ verletzt, da er/sie danach über so viel Macht verfügt.
EDIT: gemäß Kommentar von xenoterracide :)
Antwort4
Wenn Sie dem Besitzer des Root-Kontos nicht vertrauen, können Sie diesen Root-Benutzer wahrscheinlich nicht daran hindern, diese Sonderberechtigung zu entfernen. Wenn Sie dem Root-Benutzer vertrauen, fragen Sie ihn einfach nach dem aktuellen Passwort.