Als Linux-Administrator müssen Sie wissen, wie man sudo-Berechtigungen hinzufügt, löscht und gewährt an Benutzer. Manchmal haben Sie einem normalen Benutzer vorübergehend sudo-Zugriff gewährt, um eine Software zu installieren oder bestimmte Verwaltungsaufgaben selbst auszuführen. Im Laufe der Zeit vergessen wir möglicherweise, die sudo-Berechtigungen zu widerrufen. Es empfiehlt sich daher, von Zeit zu Zeit zu überprüfen, wie viele Superuser in Ihrem Linux-System vorhanden sind. Wenn vergessene oder unerwünschte Sudo-Zugriffe vorhanden sind, können Sie diese einfach widerrufen. Diese kurze Anleitung erklärt, wie Sie alle sudo-Benutzer in Linux- und Unix-ähnlichen Betriebssystemen finden.
Empfohlener Download – kostenloser Spickzettel:„Linux-Befehlszeilen-Spickzettel“
Sudo-Benutzer unter Linux auflisten
Lassen Sie uns zunächst alle Benutzer im System auflisten. Führen Sie dazu Folgendes aus:
$ awk -F':' '{ print $1}' /etc/passwd
Beispielausgabe von meinem Ubuntu-System:
root daemon bin sys sync games man lp mail news uucp proxy www-data backup list irc gnats nobody systemd-timesync systemd-network systemd-resolve systemd-bus-proxy syslog _apt lxd messagebus uuidd dnsmasq sshd sk senthil kumar ostechnix
Eine andere Möglichkeit, alle Benutzer in einem Linux-System aufzulisten, ist:
$ compgen -u
Lassen Sie uns nun nur die sudo- oder Superuser in unserem Linux-System mit dem Befehl:
finden$ grep '^sudo:.*$' /etc/group | cut -d: -f4 sk,ostechnix
Sie können auch "getent"
verwenden Befehl anstelle von "grep"
um dasselbe Ergebnis zu erhalten.
$ getent group sudo | cut -d: -f4 sk,ostechnix
Wie Sie in der obigen Ausgabe sehen, sind „sk“ und „ostechnix“ die sudo-Benutzer in meinem System.
Finden Sie heraus, ob ein Benutzer sudo-Berechtigungen hat
Wir wissen jetzt, wie wir alle sudo-Benutzer in unserem Linux-System finden. Wie finde ich heraus, ob ein bestimmter Benutzer sudo-Privilegien hat oder nicht? Ganz einfach!
Um herauszufinden, ob ein Benutzer ein sudo-Benutzer ist, führen Sie einfach
aus$ sudo -l -U sk
Beispielausgabe:
Matching Defaults entries for sk on ubuntuserver: env_reset, mail_badpass, secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin\:/snap/bin User sk may run the following commands on ubuntuserver: (ALL : ALL) ALL
Wie Sie sehen, kann der Benutzer namens „sk“ alle Befehle ausführen. Er ist also in der sudo-Gruppe.
Lassen Sie uns einen anderen Benutzer überprüfen.
$ sudo -l -U senthil
Beispielausgabe:
User senthil is not allowed to run sudo on ubuntuserver.
Nun, der Benutzer "senthil" darf sudo nicht ausführen. Er ist nur ein normaler Benutzer!
Wir können auch feststellen, ob ein Benutzer sudo-Zugriff hat, indem wir den folgenden Befehl ausführen:
$ sudo -nv
Wenn Sie nichts als Ausgabe erhalten, hat der Benutzer sudo-Zugriff.
Wenn Sie eine Ausgabe wie unten sehen, hat der Benutzer keinen sudo-Zugriff.
$ sudo -nv Sorry, user senthil may not run sudo on ubuntuserver.
Empfohlene Lektüre:
- Erteilen und Entfernen von Sudo-Berechtigungen für Benutzer unter Ubuntu
- So ändern Sie die Standard-Sudo-Protokolldatei in Linux
- So stellen Sie Sudo-Berechtigungen für einen Benutzer wieder her
- So führen Sie bestimmte Befehle ohne Sudo-Passwort in Linux aus
- So zwingen Sie Benutzer, bei der Verwendung von sudo das Root-Passwort anstelle ihres eigenen Passworts zu verwenden