Heim  >  Artikel  >  Betrieb und Instandhaltung  >  Ausführliche Erklärung von sudo unter Linux und die detaillierte Konfiguration seiner Konfigurationsdatei /etc/sudoers

Ausführliche Erklärung von sudo unter Linux und die detaillierte Konfiguration seiner Konfigurationsdatei /etc/sudoers

黄舟
黄舟Original
2017-06-04 11:18:332037Durchsuche

In diesem Artikel werden hauptsächlich relevante Informationen zur detaillierten Konfiguration von sudo unter Linux und seiner Konfigurationsdatei /etc/sudoers vorgestellt

Ausführliche Erklärung von sudo unter Linux und die detaillierte Konfiguration seiner Konfigurationsdatei /etc/sudoers

1.sudo-Einführung

sudo ist ein unter Linux häufig verwendetes Tool, das es normalen Benutzern ermöglicht, Superuser-Rechte zu verwenden. Es ermöglicht Systemadministratoren, normalen Benutzern die Ausführung einiger oder aller Root-Befehle wie halt, reboot, su usw. zu ermöglichen. Dies reduziert nicht nur die Anmelde- und Verwaltungszeit des Root-Benutzers, sondern verbessert auch die Sicherheit. Sudo ist kein Ersatz für die Shell, sondern für jeden Befehl.

Zu seinen Hauptfunktionen gehören die folgenden:

§ sudo kann Benutzer darauf beschränken, bestimmte Befehle nur auf einem bestimmten Host auszuführen.

§ sudo stellt umfangreiche Protokolle bereit, die detailliert aufzeichnen, was jeder Benutzer getan hat. Es kann Protokolle an einen zentralen Host oder Protokollserver übertragen.

§ sudo verwendet zeitgestempelte Dateien, um ein ähnliches System zur „Ticketprüfung“ durchzuführen. Wenn der Benutzer sudo aufruft und sein Passwort eingibt, wird ihm ein Ticket mit einer Gültigkeitsdauer von 5 Minuten ausgestellt (dieser Wert kann zur Kompilierzeit geändert werden).

§ Die sudo-Konfigurationsdatei ist die sudoers-Datei, die es Systemadministratoren ermöglicht, Benutzerberechtigungen und Hosts zentral zu verwalten. Der Standardspeicherort ist /etc/sudoers und das -Attribut muss 0411 sein.

2. Konfigurationsdatei/etc/sudoers

Die Hauptkonfigurationsdatei ist sudoers, die sich unter Linux normalerweise im Verzeichnis /etc befindet Nach dem Kompilieren von und der Installation von wird Sudo normalerweise im Verzeichnis etc des Installationsverzeichnisses installiert. Unabhängig davon, wo sich die sudoers-Datei befindet, stellt sudo bereit ein Befehl zum Bearbeiten der Datei: visudo zum Ändern der Datei. Es wird dringend empfohlen, diesen Befehl zum Ändern von sudoers zu verwenden, da er Ihnen hilft, zu überprüfen, ob die Dateikonfiguration korrekt ist. Wenn sie falsch ist, werden Sie beim Speichern und Beenden gefragt, welche Konfiguration falsch ist.

Zurück zum Geschäft: So konfigurieren Sie Sudoers

Schreiben Sie zunächst die Standardkonfiguration von Sudoers:

############################################################# 
# sudoers file. 
# 
# This file MUST be edited with the 'visudo' command as root. 
# 
# See the sudoers man page for the details on how to write a sudoers file. 
# 

# Host alias specification 

# User alias specification 

# Cmnd alias specification 

# Defaults specification 

# User privilege specification 
root  ALL=(ALL) ALL 

# Uncomment to allow people in group wheel to run all commands 
# %wheel    ALL=(ALL)    ALL 

# Same thing without a password 
# %wheel    ALL=(ALL)    NOPASSWD: ALL 

# Samples 
# %users ALL=/sbin/mount /cdrom,/sbin/umount /cdrom 
# %users localhost=/sbin/shutdown -h now 
##################################################################

1. Die einfachste Konfiguration, die normale Benutzer unterstützen können root Alle Berechtigungen

Nach der Ausführung von visudo können Sie sehen, dass es nur eine Standardkonfiguration gibt:

root ALL=(ALL) ALL

Dann fügen Sie unten eine Konfiguration hinzu:

support ALL=(ALL) ALL

Auf diese Weise können normale Benutzer Support ausführen Alle Befehle mit Root-Berechtigungen

Nachdem Sie sich als Support-Benutzer angemeldet haben, führen Sie Folgendes aus:

sudo su -

Geben Sie dann das eigene Passwort des Support-Benutzers ein, um zum Root-Benutzer zu wechseln

2 Erlauben Sie dem normalen Benutzer-Support, nur bestimmte Befehle auszuführen, die Root auf bestimmten Servern ausführen kann

Zuerst müssen Sie einige Alias ​​konfigurieren. Dies ist bei der Konfiguration der folgenden Berechtigungen praktischer, ohne dass große Konfigurationsabschnitte geschrieben werden müssen. Alias ​​werden hauptsächlich in 4 Typen unterteilt

Host_Alias 
Cmnd_Alias 
User_Alias 
Runas_Alias

1) Host_Alias ​​konfigurieren: Es ist die Liste der Hosts

Host_Alias ​​​​HOST_FLAG = Hostname1, Hostname2, hostname3

2) Cmnd_Alias ​​konfigurieren: Dies ist die Liste der Befehle, die ausgeführt werden dürfen

Cmnd_Alias ​​​​COMMAND_FLAG = command1, command2, command3

3 ) User_Alias ​​konfigurieren: Es handelt sich um eine Liste von Benutzern mit Sudo-Berechtigungen

User_Alias ​​​​USER_FLAG = user1 , Benutzer2, Benutzer3

4) Konfigurieren Sie Runas_Alias: Es handelt sich um eine Liste der Identität des Benutzers (z. B. Root oder Oracle)

Runas_Alias ​​RUNAS_FLAG = Operator1, Operator2, Operator3

5) Berechtigungen konfigurieren

Das Format der Konfigurationsberechtigungen ist wie folgt:

USER_FLAG HOST_FLAG=(RUNAS_FLAG) COMMAND_FLAG

Wenn keine Passwortüberprüfung erforderlich ist, konfigurieren Sie sie in diesem Format

USER_FLAG HOST_FLAG=(RUNAS_FLAG) NOPASSWD: COMMAND_FLAG

Konfigurationsbeispiel:

############################################################################
# sudoers file. 
# 
# This file MUST be edited with the 'visudo' command as root. 
# 
# See the sudoers man page for the details on how to write a sudoers file. 
# 

# Host alias specification 
Host_Alias   EPG = 192.168.1.1, 192.168.1.2 

# User alias specification 

# Cmnd alias specification 
Cmnd_Alias   SQUID = /opt/vtbin/squid_refresh, /sbin/service, /bin/rm 

# Defaults specification 

# User privilege specification 
root  ALL=(ALL) ALL 
support EPG=(ALL) NOPASSWD: SQUID 

# Uncomment to allow people in group wheel to run all commands 
# %wheel    ALL=(ALL)    ALL 

# Same thing without a password 
# %wheel    ALL=(ALL)    NOPASSWD: ALL 

# Samples 
# %users ALL=/sbin/mount /cdrom,/sbin/umount /cdrom 
# %users localhost=/sbin/shutdown -h now 
##################################################

Das obige ist der detaillierte Inhalt vonAusführliche Erklärung von sudo unter Linux und die detaillierte Konfiguration seiner Konfigurationsdatei /etc/sudoers. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn