Sudo: Unterschied zwischen den Versionen

Aus Foxwiki
TuanDoan1 (Diskussion | Beiträge)
Keine Bearbeitungszusammenfassung
K Textersetzung - „== Syntax ==“ durch „== Aufruf ==“
 
(56 dazwischenliegende Versionen von 5 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
Der Befehl sudo kann Programmaufrufen vorangestellt werden. Er ermöglicht berechtigten Benutzern, das Programm im Namen und mit den Rechten eines anderen Benutzers auszuführen. Beispielsweise um Aufgaben auszuführen, die Administratoren vorbehalten sind:
{{DISPLAYTITLE:sudo}}
'''sudo''' führt Kommandos mit der Identität eines anderen Benutzers aus


Programme installieren (sudo apt-get install ...)
== Beschreibung ==
* Der Befehl sudo kann Programmaufrufen vorangestellt werden
* Er ermöglicht berechtigten Benutzern, das Programm im Namen und mit den Rechten eines anderen Benutzers auszuführen.
* sudo, sudoedit — execute a command as another user


Systemkonfigurationen ändern (sudo nano /etc/fstab)
sudo ermöglicht es einem zugelassenen Benutzer, einen Befehl als Superuser oder als ein anderer Benutzer auszuführen, wie in der Sicherheitsrichtlinie angegeben.
* Die echte (nicht effektive) Benutzer-ID des aufrufenden Benutzers wird verwendet, um den Benutzernamen zu bestimmen, mit dem die Sicherheitsrichtlinie abgefragt wird.


Der Linux-Befehl sudo ermöglicht einem Benutzer, einen Befehl als Superuser oder als ein anderer Benutzer auszuführen. sudo erfordert die Angabe eines Passworts. Dies ist normalerweise das Benutzerpasswort, nicht das Root-Passwort
sudo unterstützt eine Plugin-Architektur für Sicherheitsrichtlinien, Auditing und Input/Output-Logging.  
* Dritte können ihre eigenen Plugins entwickeln und vertreiben, die nahtlos mit dem sudo-Frontend zusammenarbeiten.  
* Die Standard-Sicherheitsrichtlinie ist sudoers, die über die Datei /etc/sudoers oder über LDAP konfiguriert wird.
* Weitere Informationen finden Sie im Abschnitt Plugins.


==Konfiguration==
Die Sicherheitsrichtlinie bestimmt, ob und welche Rechte ein Benutzer hat, um sudo auszuführen.
Zuerst muss man sich als Superuser einloggen, das funktioniert mit dem Befehl "su", dort gibt man das bei der Installation festgelegte Passwort ein und wenn die Anmeldung erfolgreich war, kann das Paket "sudo" installiert werden mit dem Befehl:
* Die Richtlinie kann verlangen, dass sich die Benutzer mit einem Passwort oder einem anderen Authentifizierungsmechanismus authentifizieren.
* Wenn eine Authentifizierung erforderlich ist, wird sudo beendet, wenn das Passwort des Benutzers nicht innerhalb einer konfigurierbaren Zeitspanne eingegeben wird.
* Dieses Zeitlimit ist richtlinienspezifisch; das Standardzeitlimit für die Kennworteingabeaufforderung für die Sicherheitsrichtlinie sudoers beträgt 0 Minuten.


#apt-get install sudo
Sicherheitsrichtlinien können das Zwischenspeichern von Anmeldeinformationen unterstützen, damit der Benutzer sudo für eine gewisse Zeit erneut ausführen kann, ohne dass eine Authentifizierung erforderlich ist.


Nach der Installation muss nur noch der Benutzer, der SuperUser-Rechte erhalten soll, der Gruppe "sudo" hinzugefügt werden. Das funktioniert mit dem Befehl
Die sudoers-Richtlinie zwischenspeichert Anmeldeinformationen für jedes Terminal für 15 Minuten.
* Weitere Informationen finden Sie unter den Optionen timestamp_type und timestamp_timeout in sudoers(5).
* Wenn Sie sudo mit der Option -v ausführen, kann ein Benutzer die zwischengespeicherten Anmeldeinformationen aktualisieren, ohne einen Befehl auszuführen.


#usermod -G sudo -a BENUTZERNAME
Auf Systemen, auf denen sudo die primäre Methode zur Erlangung von Superuser-Rechten ist, müssen unbedingt Syntaxfehler in den Konfigurationsdateien der Sicherheitsrichtlinien vermieden werden.
Ausführen von sudo ohne Passwort.


   #visudo
 
* Für die Standard-Sicherheitsrichtlinie sudoers(5) sollten Änderungen an den Konfigurationsdateien mit dem Dienstprogramm visudo(8) vorgenommen werden.
 
Wenn es als sudoedit aufgerufen wird, ist die Option -e (siehe unten) impliziert.
 
Sicherheitsrichtlinien und Audit-Plugins können erfolgreiche und fehlgeschlagene Versuche, sudo auszuführen, protokollieren.
* Wenn ein E/A-Plugin konfiguriert ist, können auch die Ein- und Ausgaben des laufenden Befehls protokolliert werden.
 
== Installation ==
# apt-get install sudo
 
== Aufruf ==
sudo -h | -K | -k | -V
sudo -v [-ABknS] [-g group] [-h host] [-p prompt] [-u user]
sudo -l [-ABknS] [-g group] [-h host] [-p prompt] [-U user] [-u user] [command]
sudo [-ABbEHnPS] [-C num] [-D directory] [-g group] [-h host] [-p prompt] [-R directory] [-r role] [-t type] [-T timeout] [-u user] [VAR=value] [-i | -s] [command]
sudoedit [-ABknS] [-C num] [-D directory] [-g group] [-h host] [-p prompt] [-R directory] [-r role] [-t type] [-T timeout] [-u user] file ...
 
=== Parameter ===
=== Optionen ===
=== Umgebung ===
=== Rückgabewert ===
 
== Konfiguration ==
Nach der Installation muss jeder Benutzer, der SuperUser-Rechte erhalten soll, der Gruppe "sudo" hinzugefügt werden
# usermod -G sudo -a BENUTZERNAME
 
; Ausführen von sudo ohne Passwort
   # visudo


In der sudoers.d Datei in der letzten Zeile folgenden Befehl einfügen:
In der sudoers.d Datei in der letzten Zeile folgenden Befehl einfügen:
'USER' ALL=(ALL) NOPASSWD:ALL


User ALL=(ALL) NOPASSWD:ALL
* User ist der Name des Users, den das betreffen soll.


User ist der Name des User, den das betreffen soll.
; Einzelne Befehle auszuschließen
Es ist möglich, einzelne Befehle davon auszuschließen in der Klammer die Befehle listen die gewünscht sind, in diesem Fall sind das alle Befehle (ALL)
* in der Klammer die Befehle listen, die gewünscht sind, in diesem Fall sind das alle Befehle (ALL)


==Beispiel==
=== Dateien ===


== Anwendung ==
* Beispielsweise um Aufgaben auszuführen, die Administratoren vorbehalten sind:
** Programme installieren (sudo apt-get install ...)
** Systemkonfigurationen ändern (sudo nano /etc/fstab)
* Der Linux-Befehl sudo ermöglicht einem Benutzer, einen Befehl als Superuser oder als ein anderer Benutzer auszuführen.
* sudo erfordert die Angabe eines Passworts.
* Dies ist normalerweise das Benutzerpasswort, nicht das Root-Passwort
; Beispiel
  usermod -G sudo -a Otto  
  usermod -G sudo -a Otto  


Jetzt gehört der User Otto der Gruppe sudo an.
Jetzt gehört der User Otto der Gruppe sudo an.
  sudo apt update  
  sudo apt update  


Und kann mit sudo root Befehle ausführen, ohne sich als root anzumelden.
Und kann mit sudo root Befehle ausführen, ohne sich als root anzumelden.
less /etc/group
Mit diesem Befehl lassen sich Gruppen anzeigen und nachvollziehen, wer zu sudo gehört. Siehe [[/etc/groups]]
== Sicherheit ==
; "could not open display"
;/etc/sudoers.d
Defaults env_keep += "DISPLAY"
This will allow sudo to pass the DISPLAY environment variable to the program it runs, and those programs will then be able to connect to the correct DISPLAY.
xhost +
== Dokumentation ==
=== Man-Page ===
=== Info-Pages ===
=== Siehe auch ===
== Links ==
=== Projekt-Homepage ===
=== Weblinks ===
# <nowiki>https://wiki.ubuntuusers.de/sudo/</nowiki>


less /etc/group


Mit diesem befehl lassen sich Gruppen anzeigen und nachvollziehen, wer zu sudo gehört. Siehe [[/etc/groups]]


==Quellen==


https://wiki.ubuntuusers.de/sudo/
[[Kategorie:Linux/Benutzer]]
[[Kategorie:Linux/Befehl]]


[[Category:Linuxbefehle]]
{{DEFAULTSORT:sudo}}
[[Category:Linux]]
[[Category:Linux:LPIC:101]]

Aktuelle Version vom 12. November 2024, 19:39 Uhr

sudo führt Kommandos mit der Identität eines anderen Benutzers aus

Beschreibung

  • Der Befehl sudo kann Programmaufrufen vorangestellt werden
  • Er ermöglicht berechtigten Benutzern, das Programm im Namen und mit den Rechten eines anderen Benutzers auszuführen.
  • sudo, sudoedit — execute a command as another user

sudo ermöglicht es einem zugelassenen Benutzer, einen Befehl als Superuser oder als ein anderer Benutzer auszuführen, wie in der Sicherheitsrichtlinie angegeben.

  • Die echte (nicht effektive) Benutzer-ID des aufrufenden Benutzers wird verwendet, um den Benutzernamen zu bestimmen, mit dem die Sicherheitsrichtlinie abgefragt wird.

sudo unterstützt eine Plugin-Architektur für Sicherheitsrichtlinien, Auditing und Input/Output-Logging.

  • Dritte können ihre eigenen Plugins entwickeln und vertreiben, die nahtlos mit dem sudo-Frontend zusammenarbeiten.
  • Die Standard-Sicherheitsrichtlinie ist sudoers, die über die Datei /etc/sudoers oder über LDAP konfiguriert wird.
  • Weitere Informationen finden Sie im Abschnitt Plugins.

Die Sicherheitsrichtlinie bestimmt, ob und welche Rechte ein Benutzer hat, um sudo auszuführen.

  • Die Richtlinie kann verlangen, dass sich die Benutzer mit einem Passwort oder einem anderen Authentifizierungsmechanismus authentifizieren.
  • Wenn eine Authentifizierung erforderlich ist, wird sudo beendet, wenn das Passwort des Benutzers nicht innerhalb einer konfigurierbaren Zeitspanne eingegeben wird.
  • Dieses Zeitlimit ist richtlinienspezifisch; das Standardzeitlimit für die Kennworteingabeaufforderung für die Sicherheitsrichtlinie sudoers beträgt 0 Minuten.

Sicherheitsrichtlinien können das Zwischenspeichern von Anmeldeinformationen unterstützen, damit der Benutzer sudo für eine gewisse Zeit erneut ausführen kann, ohne dass eine Authentifizierung erforderlich ist.

Die sudoers-Richtlinie zwischenspeichert Anmeldeinformationen für jedes Terminal für 15 Minuten.

  • Weitere Informationen finden Sie unter den Optionen timestamp_type und timestamp_timeout in sudoers(5).
  • Wenn Sie sudo mit der Option -v ausführen, kann ein Benutzer die zwischengespeicherten Anmeldeinformationen aktualisieren, ohne einen Befehl auszuführen.

Auf Systemen, auf denen sudo die primäre Methode zur Erlangung von Superuser-Rechten ist, müssen unbedingt Syntaxfehler in den Konfigurationsdateien der Sicherheitsrichtlinien vermieden werden.


  • Für die Standard-Sicherheitsrichtlinie sudoers(5) sollten Änderungen an den Konfigurationsdateien mit dem Dienstprogramm visudo(8) vorgenommen werden.

Wenn es als sudoedit aufgerufen wird, ist die Option -e (siehe unten) impliziert.

Sicherheitsrichtlinien und Audit-Plugins können erfolgreiche und fehlgeschlagene Versuche, sudo auszuführen, protokollieren.

  • Wenn ein E/A-Plugin konfiguriert ist, können auch die Ein- und Ausgaben des laufenden Befehls protokolliert werden.

Installation

# apt-get install sudo

Aufruf

sudo -h | -K | -k | -V
sudo -v [-ABknS] [-g group] [-h host] [-p prompt] [-u user]
sudo -l [-ABknS] [-g group] [-h host] [-p prompt] [-U user] [-u user] [command]
sudo [-ABbEHnPS] [-C num] [-D directory] [-g group] [-h host] [-p prompt] [-R directory] [-r role] [-t type] [-T timeout] [-u user] [VAR=value] [-i | -s] [command]
sudoedit [-ABknS] [-C num] [-D directory] [-g group] [-h host] [-p prompt] [-R directory] [-r role] [-t type] [-T timeout] [-u user] file ...

Parameter

Optionen

Umgebung

Rückgabewert

Konfiguration

Nach der Installation muss jeder Benutzer, der SuperUser-Rechte erhalten soll, der Gruppe "sudo" hinzugefügt werden

# usermod -G sudo -a BENUTZERNAME
Ausführen von sudo ohne Passwort
 # visudo

In der sudoers.d Datei in der letzten Zeile folgenden Befehl einfügen:

'USER' ALL=(ALL) NOPASSWD:ALL
  • User ist der Name des Users, den das betreffen soll.
Einzelne Befehle auszuschließen
  • in der Klammer die Befehle listen, die gewünscht sind, in diesem Fall sind das alle Befehle (ALL)

Dateien

Anwendung

  • Beispielsweise um Aufgaben auszuführen, die Administratoren vorbehalten sind:
    • Programme installieren (sudo apt-get install ...)
    • Systemkonfigurationen ändern (sudo nano /etc/fstab)
  • Der Linux-Befehl sudo ermöglicht einem Benutzer, einen Befehl als Superuser oder als ein anderer Benutzer auszuführen.
  • sudo erfordert die Angabe eines Passworts.
  • Dies ist normalerweise das Benutzerpasswort, nicht das Root-Passwort
Beispiel
usermod -G sudo -a Otto 

Jetzt gehört der User Otto der Gruppe sudo an.

sudo apt update 

Und kann mit sudo root Befehle ausführen, ohne sich als root anzumelden.

less /etc/group

Mit diesem Befehl lassen sich Gruppen anzeigen und nachvollziehen, wer zu sudo gehört. Siehe /etc/groups

Sicherheit

"could not open display"
/etc/sudoers.d
Defaults env_keep += "DISPLAY"

This will allow sudo to pass the DISPLAY environment variable to the program it runs, and those programs will then be able to connect to the correct DISPLAY.

xhost +

Dokumentation

Man-Page

Info-Pages

Siehe auch

Links

Projekt-Homepage

Weblinks

  1. https://wiki.ubuntuusers.de/sudo/