Ein "sudo"
Benutzer kann eine administrative Aufgabe oder einen Befehl ausführen, zu der/dem ein normaler Benutzer keine Berechtigung hat. Diese Anleitung erklärt, wie man sudo
hinzufügt, löscht und gewährt Privilegien für Benutzer in CentOS und anderen RHEL-basierten Systemen. Ich habe die folgenden Schritte verwendet, um einen sudo-Benutzer in der CentOS 8-Minimalversion zu erstellen. Es sollte jedoch auch auf anderen RPM-basierten Systemen funktionieren.
Was ist sudo?
Unter Linux und Unix im Allgemeinen ist das sudo
Programm ermöglicht es einem normalen Benutzer, vorübergehend Superuser zu erhalten oder root
Fähigkeiten des Benutzers. Mit sudo
Befehl kann ein normaler Benutzer die administrativen Aufgaben ausführen, ohne Zugriff auf das root
zu haben das Passwort des Benutzers. Anstatt root
zu verschenken Passwort für jeden, weisen Sie einfach den sudo
zu Berechtigungen für die Benutzer, um ihre Berechtigungen zu erhöhen. Das Wort "sudo" kommt ursprünglich von "su Benutzer tun ", weil es früher hauptsächlich die Aufgaben des Superusers erledigte. Jetzt steht es auch für "substitute user do"
Vorteile von sudo-Benutzern
Ein sudo
sein Benutzer bietet viele Vorteile, wie unten aufgeführt:
- Der Systemadministrator muss den
root
nicht freigeben Benutzerpasswort für alle. - Ein normaler Benutzer kann administrative Aufgaben ausführen, selbst wenn er/sie den
root
nicht kennt Passwort. - Die sudo-Berechtigungen können den Benutzern jederzeit erteilt und entzogen werden.
- Die sudo-Sitzung läuft automatisch nach einer bestimmten Zeit der Inaktivität des Benutzers ab. Es ist sehr nützlich, wenn ein Benutzer vergessen hat, sich von seiner Sitzung abzumelden. Standardmäßig läuft die Sudo-Sitzung nach 15 Minuten Inaktivität ab.
- Die Systemadministratoren können die Aktivitäten aller sudo-Benutzer überwachen. Alle Aktivitäten von sudo-Benutzern werden in
/var/log/secure
protokolliert Datei. Wenn es Probleme gibt, können Sie in die Protokolldatei schauen und versuchen herauszufinden, was schief gelaufen ist. Sie würden auch herausfinden, wer die sudo-Privilegien missbraucht, und Sie können seine Erlaubnis einfach widerrufen.
Hinzufügen, Löschen und Gewähren von Sudo-Berechtigungen für Benutzer in CentOS
Melden Sie sich als root
bei Ihrem CentOS-System an Benutzer oder als beliebiger Benutzer mit sudo-Berechtigung.
Lassen Sie uns zuerst einen neuen Benutzer hinzufügen.
1. Benutzer in CentOS hinzufügen
Lassen Sie mich einen neuen Benutzer namens "senthil" erstellen. Dazu habe ich den folgenden Befehl als root
ausgeführt Benutzer vom Terminal:
# adduser senthil
Legen Sie ein Passwort für den neuen Benutzer „senthil“ fest:
# passwd senthil
Jetzt haben wir einen normalen Benutzer erstellt. Er ist noch nicht befugt, Verwaltungsaufgaben wahrzunehmen. Lassen Sie uns prüfen, ob der Benutzer "senthil" sudo
verwenden kann Befehl oder nicht, indem Sie den folgenden Befehl ausführen:
# sudo -l -U senthil
Beispielausgabe:
User senthil is not allowed to run sudo on centos8
Ja, er darf sudo
noch nicht ausführen auf meinem CentOS 8-System. Geben wir ihm sudo
Rechte jetzt.
2. Gewähren Sie Benutzern in CentOS sudo-Berechtigungen
Um einen normalen Benutzer zur sudoers-Gruppe hinzuzufügen, müssen Sie ihn/sie zum wheel
hinzufügen Gruppe. Für diejenigen, die sich fragen, das wheel
ist eine spezielle Gruppe in einigen Unix-ähnlichen Betriebssystemen. Alle Mitglieder von wheel
Gruppe dürfen administrative Aufgaben ausführen. Die Wheel-Gruppe ähnelt sudo
Gruppe in Debian-basierten Systemen.
Wir können Benutzer auf zwei Arten zu sudoers hinzufügen. Die erste Methode verwendet chmod
Befehl.
2.1. Benutzer mit usermod
zu sudoern hinzufügen Befehl in CentOS
Lassen Sie uns nun dem neu erstellten Benutzer „senthil“ sudo-Privilegien erteilen, indem wir ihn zum wheel
hinzufügen Gruppe mit usermod
Befehl wie unten:
# usermod -aG wheel senthil
Hier -aG
bezieht sich auf eine ergänzende Gruppe. In unserem Fall ist es wheel
Gruppe. Das war's, wir haben gerade dem Benutzer "senthil" sudo-Rechte gewährt.
Lassen Sie uns überprüfen, ob sich der Benutzer in der sudoers-Liste befindet, mit dem Befehl:
# sudo -l -U senthil
Beispielausgabe:
Matching Defaults entries for senthil on centos8:
!visiblepw, always_set_home, match_group_by_gid,
always_query_group_plugin, env_reset, env_keep="COLORS DISPLAY
HOSTNAME HISTSIZE KDEDIR LS_COLORS", env_keep+="MAIL PS1 PS2 QTDIR
USERNAME LANG LC_ADDRESS LC_CTYPE", env_keep+="LC_COLLATE
LC_IDENTIFICATION LC_MEASUREMENT LC_MESSAGES", env_keep+="LC_MONETARY
LC_NAME LC_NUMERIC LC_PAPER LC_TELEPHONE", env_keep+="LC_TIME LC_ALL
LANGUAGE LINGUAS _XKB_CHARSET XAUTHORITY",
secure_path=/sbin:/bin:/usr/sbin:/usr/bin
User senthil may run the following commands on centos8:
(ALL) ALL
Wie Sie in der letzten Zeile der obigen Ausgabe sehen können, kann der Benutzer "senthil" nun alle Befehle ausführen.
2.2. Fügen Sie Benutzer zu sudoers hinzu, indem Sie die sudoers-Konfigurationsdatei in CentOS bearbeiten
Die andere Möglichkeit, Benutzer zur sudoers-Liste hinzuzufügen, besteht darin, ihn/sie direkt zur sudoers-Konfigurationsdatei hinzuzufügen.
Bearbeiten Sie die sudoers-Konfigurationsdatei mit dem Befehl:
# visudo
Dadurch wird /etc/sudoers
geöffnet Datei in Ihrem Vi Editor oder was auch immer Sie in Ihrem $PATH
haben . Scrollen Sie nach unten, bis Sie folgenden Eintrag finden:
root ALL=(ALL) ALL
Fügen Sie direkt nach dem obigen Eintrag die folgende Zeile hinzu:
senthil ALL=(ALL) ALL
Hier die Zeile ALL=(ALL) ALL
bezieht sich der Benutzer "senthil" kann beliebige Befehle auf jedem Host ausführen. Ersetzen Sie „senthil“ durch Ihren eigenen Benutzernamen. Speichern und schließen Sie die Datei. Erledigt! Der Benutzer „senthil“ wurde zur sudoers-Liste hinzugefügt.
2.3. Verifizieren Sie sudo-Benutzer in CentOS
Melden Sie sich von der aktuellen Sitzung ab und als neu erstellter sudo-Benutzer wieder an. Alternativ können Sie mit folgendem Befehl direkt zum anderen Benutzer wechseln, ohne sich von der aktuellen Sitzung abmelden zu müssen:
# sudo -i -u senthil
Überprüfen Sie nun, ob der Benutzer mit sudo
administrative Aufgaben ausführen kann Erlaubnis:
$ sudo dnf update
3. Sudo-Berechtigungen von einem Benutzer in CentOS löschen
Wir können sudo-Berechtigungen von einem Benutzer entfernen, ohne das Benutzerkonto vollständig löschen zu müssen.
Um einem Benutzer sudo-Berechtigungen zu entziehen, führen Sie einfach den folgenden Befehl als root
aus Benutzer:
# gpasswd -d senthil wheel
Beispielausgabe:
Removing user senthil from group wheel
Der obige Befehl löscht den Benutzer namens "senthil"
vom "wheel"
Gruppe. Bitte beachten Sie, dass der Benutzer nicht vollständig aus dem System gelöscht wird. Wir haben nur die sudo-Berechtigungen entfernt.
Überprüfen Sie, ob der Benutzer Sudo-Operationen ausführen kann:
# sudo -l -U senthil
User senthil is not allowed to run sudo on centos8.
Nun, senthil
ist nicht mehr in der sudoers-Gruppe und kann keine administrativen Aufgaben ausführen.
Um den Benutzer dauerhaft aus dem System zu entfernen, führen Sie Folgendes aus:
# userdel -r senthil
Der obige Befehl löscht den Benutzer „senthil“ zusammen mit seinem home
Verzeichnis und Mail-Spool.
Weitere Einzelheiten finden Sie auf der Manpage des jeweiligen Befehls:
$ man sudo
$ man adduser
$ man usermod
$ man gpasswd
$ man userdel
Schlussfolgerung
Sie wissen jetzt, wie Sie Benutzern in CentOS-Betriebssystemen sudo-Berechtigungen hinzufügen, löschen und gewähren. Wie Sie sehen können, ist es sehr einfach, neue Benutzer zu sudoers-Listen hinzuzufügen, vorhandenen Benutzern sudo-Berechtigungen zu erteilen und die sudo-Berechtigungen von einem Benutzer zu entfernen. Hoffe das hilft.
Verwandte Lektüre:
- Hinzufügen, Löschen und Gewähren von Sudo-Berechtigungen für Benutzer in Alpine Linux
- Wie man Sudo-Berechtigungen für Benutzer in Arch Linux hinzufügt, löscht und gewährt
- Wie man Sudo-Berechtigungen für Benutzer in Fedora hinzufügt, löscht und gewährt
- So fügen Sie Benutzern in Ubuntu Sudo-Berechtigungen hinzu, löschen und gewähren sie
- So ändern Sie das Sudo-Passwort-Timeout in Linux
- So ändern Sie die Standard-Sudo-Protokolldatei in Linux
- So stellen Sie Sudo-Berechtigungen für einen Benutzer wieder her
- So finden Sie alle Sudo-Benutzer in Ihrem Linux-System
- So führen Sie bestimmte Befehle ohne Sudo-Passwort in Linux aus