Sudo: Unterschied zwischen den Versionen

Aus Foxwiki
Keine Bearbeitungszusammenfassung
K Textersetzung - „== Syntax ==“ durch „== Aufruf ==“
 
(41 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
{{DISPLAYTITLE:sudo}}
{{DISPLAYTITLE:sudo}}
'''sudo''' führt Kommandos mit der Identität eines anderen Benutzers aus


'''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.


==Einführung==
Wenn es als sudoedit aufgerufen wird, ist die Option -e (siehe unten) impliziert.
* 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.
= Anwendungen =
* 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.  
Sicherheitsrichtlinien und Audit-Plugins können erfolgreiche und fehlgeschlagene Versuche, sudo auszuführen, protokollieren.  
* sudo erfordert die Angabe eines Passworts.
* Wenn ein E/A-Plugin konfiguriert ist, können auch die Ein- und Ausgaben des laufenden Befehls protokolliert werden.
* Dies ist normalerweise das Benutzerpasswort, nicht das Root-Passwort


==Konfiguration==
== Installation ==
* 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:
  # apt-get install sudo
  # apt-get install sudo


* Nach der Installation muss nur noch der Benutzer, der SuperUser-Rechte erhalten soll, der Gruppe "sudo" hinzugefügt werden.
== Aufruf ==
* Das funktioniert mit dem Befehl
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
  # usermod -G sudo -a BENUTZERNAME


Ausführen von sudo ohne Passwort.
; Ausführen von sudo ohne Passwort
   # visudo
   # 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  


Zeile 43: Zeile 86:
  less /etc/group
  less /etc/group


Mit diesem befehl lassen sich Gruppen anzeigen und nachvollziehen, wer zu sudo gehört. Siehe [[/etc/groups]]
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>
 
 


= Links =
== Intern ==
# TODO


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


[[Kategorie:Linux:Benutzer]]
{{DEFAULTSORT:sudo}}
{{DEFAULTSORT:sudo}}

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/