Sudo-Befehl unter Linux – Verwendung und Beispiele

Der Befehl sudo unter Linux ist ein leistungsstarkes Tool, das es autorisierten Benutzern ermöglicht, Befehle mit erhöhten Rechten auszuführen.

Es soll einen kontrollierten und sicheren Ansatz für Verwaltungsaufgaben bieten, die Notwendigkeit eines ständigen Root-Zugriffs reduzieren und die mit uneingeschränkten Superuser-Funktionen verbundenen Risiken mindern.

Sudo-Befehl unter Linux

Der Befehl sudo steht unter Linux für Superuser Do und ist ein leistungsstarkes Dienstprogramm, das es Benutzern ermöglicht, Befehle mit erhöhten Rechten auszuführen.

Standardmäßig verfügen Linux-Systeme über ein Root- oder Superuser-Konto, das uneingeschränkten Zugriff auf alle Systemressourcen besitzt.

Die Verwendung des Root-Kontos für regelmäßige Aufgaben kann riskant sein, da es uneingeschränkte Macht gewährt, die möglicherweise zu versehentlichen Systemänderungen oder Sicherheitsverletzungen führen kann.

  • Der Befehl sudo bietet einen sicheren und kontrollierteren Ansatz zur Ausführung privilegierter Befehle. Es ermöglicht autorisierten Benutzern, bestimmte Befehle vorübergehend mit erhöhten Rechten auszuführen.
  • Dies bedeutet, dass Benutzer Verwaltungsaufgaben ausführen können, ohne sich als Root-Benutzer anmelden zu müssen.
  • Wenn ein Befehl mit sudo ausgeführt wird, muss der Benutzer normalerweise sein eigenes Passwort und nicht das Root-Passwort angeben.
  • Dieser Authentifizierungsschritt fügt eine zusätzliche Sicherheitsebene hinzu und stellt sicher, dass nur autorisierte Benutzer auf Superuser-Funktionen zugreifen können.
  • Sudo bietet Flexibilität bei der Gewährung des Zugriffs auf bestimmte Befehle oder Befehlsgruppen für einzelne Benutzer oder Gruppen.

So verwenden Sie den Sudo-Befehl unter Linux

Um den Befehl sudo unter Linux zu verwenden, befolgen Sie die unten gezeigten Hinweise zur Verwendung des Befehls sudo.

  • Prinzip der geringsten Privilegien.
    • Der Befehl sudo arbeitet nach dem Prinzip der geringsten Rechte, was bedeutet, dass Benutzern nur die Rechte gewährt werden, die zum Ausführen bestimmter Aufgaben erforderlich sind.
  • Aufbau.
    • Die Konfiguration des sudo-Befehls wird über die sudoers-Datei verwaltet, die sich normalerweise unter /etc/sudoers befindet.
    • Mit dem Befehl visudo können Sie diese Datei sicher bearbeiten und Syntaxprüfungen durchführen, um Fehler zu vermeiden.
  • Benutzerauthentifizierung.
    • Bei der Verwendung von sudo müssen sich Benutzer normalerweise durch die Eingabe ihres eigenen Benutzerkennworts oder Root-Kennworts authentifizieren.
  • Benutzerspezifikation.
    • Der Befehl sudo unterstützt verschiedene Optionen zur Angabe des Zielbenutzers beim Ausführen von Befehlen. Die Option -u oder –user ermöglicht die Ausführung von Befehlen als bestimmter Benutzer und bietet so Flexibilität bei der Ausführung von Aufgaben.
  • Befehlsausführung.
    • Sudo-Benutzer können eine Vielzahl von Befehlen mit erhöhten Rechten ausführen. Mit dem Befehl sudo können diese Vorgänge sicher und kontrolliert ausgeführt werden.
  • Umgebungsvariablen.
    • Der Befehl sudo setzt die Umgebungsvariablen zurück und legt einen begrenzten Satz Variablen für den ausgeführten Befehl fest. Die Option -E oder –preserve-env behält die Benutzerumgebungsvariablen bei.

Die Verwendung des sudo-Befehls unter Linux ist relativ einfach. Sehen wir uns nun an, wie man Sudo-Befehle unter Linux verwendet.

Überprüfen Sie auch: So löschen Sie ein Verzeichnis unter Linux mithilfe der GUI und Befehlszeilen

So gewähren Sie Benutzern Sudo-Zugriff

Um Benutzern unter Linux Sudo-Zugriff zu gewähren, müssen Sie die sudoers-Datei konfigurieren, um Benutzerrechte zu definieren und anzugeben, welche Befehle sie mit erhöhten Berechtigungen ausführen können.

  1. Öffnen Sie ein Terminal.
  2. Bearbeiten Sie die Sudoers-Datei.
    • Verwenden Sie einen Texteditor wie Nano oder Vim, um die Sudoers-Datei zu öffnen. Es wird empfohlen, den Befehl visudo zu verwenden.
      • sudo visudo
  3. Suchen Sie den Abschnitt „Benutzerberechtigungsspezifikation“.
  4. Sudo-Zugriff gewähren.
    • Benutzername ALL=(ALL:ALL) ALL
    • Ersetzen Sie „Benutzername“ durch den tatsächlichen Benutzernamen des Benutzers.
    • Diese Zeile ermöglicht es dem Benutzer, den Befehl mit erhöhten Rechten auszuführen apt.
  5. Speichern und beenden Sie die Sudoers-Datei.
  6. Überprüfen Sie den Sudo-Zugriff.
    • Öffnen Sie zur Überprüfung ein neues Terminalfenster und führen Sie einen Befehl mit sudo aus.
    • sudo-Befehl
    • Ersetzen Sie „Befehl“ durch einen beliebigen Befehl, z. B. sudo apt update.

Sudo-Befehl: Syntax und Optionen

Der Befehl sudo unter Linux verfügt über verschiedene Optionen und Syntaxvarianten, um sein Verhalten anzupassen und zusätzliche Funktionen bereitzustellen.

Syntaxname  Beschreibungsudo-Befehl
Grundlegende SyntaxDie grundlegende Syntax für den Sudo-Befehl.sudo [Optionen] Befehl
Ersetzen Sie [Optionen] durch eine der verfügbaren Optionen und „Befehl“ durch den tatsächlichen Befehl.  
-u, –user=Benutzer  Mit dieser Option können Sie den Benutzer angeben. Es ermöglicht Ihnen, Befehle als anderer Benutzer als der Standard-Superuser (root) auszuführen. Die Syntax ist wie folgt.  sudo -u Benutzername Befehl
Ersetzen Sie „Benutzername“ und „Befehl“ durch die tatsächlichen Details.  
-i, –login  Verwenden Sie diese Option, um als Zielbenutzer eine Anmeldeshell zu starten.  sudo -i command
Ersetzen Sie „command“ durch den Befehl, den Sie ausführen möchten.  
-s, –shell  Mit dieser Option können Sie die durch die Umgebungsvariable SHELL angegebene Shell oder die für den Zielbenutzer definierte Shell ausführen.  sudo -s shell
Ersetzen Sie „Shell“ durch die gewünschte Shell, z. B. /bin/bash oder /usr/bin/zsh .  
-E, –preserve-env  sudo setzt die Umgebung zurück und behält nur wenige Variablen bei. Die Option -E behält die Benutzerumgebungsvariablen bei der Ausführung des Befehls bei. Dies kann nützlich sein, wenn Sie bestimmte Umgebungseinstellungen beibehalten müssen.sudo -E command
Ersetzen Sie „command“ durch den Befehl, den Sie ausführen möchten.  
-l, –Liste  Mit der Option -l können Sie die Befehle oder Berechtigungen auflisten, die der aktuelle Benutzer oder der angegebene Benutzer mit sudo ausführen kann. Es ist hilfreich, den Sudo-Zugriff zu überprüfen oder die verfügbaren Befehle zu überprüfen.sudo -1
Dies zeigt eine Liste der Befehle oder Berechtigungen an, die dem aktuellen Benutzer zugeordnet sind.

Dies sind nur einige Beispiele für die Optionen, die für den Befehl sudo verfügbar sind.

Lesen Sie auch: So öffnen Sie eine EPS-Datei in verschiedenen Programmen

Sudo-Befehl in Linux-Beispielen

Einige Beispiele veranschaulichen die Verwendung des sudo-Befehls unter Linux.

SyntaxnameBeschreibungsudo-Befehl
Pakete mit apt installieren  Dieser Befehl installiert das angegebene Paket mithilfe des apt-Paketmanagers mit erhöhten Rechten.sudo apt install Paketname
Ersetzen Sie „Paketname“ durch den Namen des Pakets, das Sie installieren möchten.  
Bearbeiten von Systemkonfigurationsdateien  Dieser Befehl öffnet die Datei nginx.conf zur Bearbeitung mit dem Nano-Texteditor mit Superuser-Rechten.sudo nano /etc/nginx/nginx.conf
Ersetzen Sie /etc/nginx/nginx.conf durch den Pfad zu einer beliebigen Systemkonfigurationsdatei, die Sie ändern müssen.
Systemdienste mit systemctl verwalten  Dieser Befehl startet den angegebenen Systemdienst mit dem Befehl systemctl mit erhöhten Rechten.sudo systemctl start service_name
Ersetzen Sie „service_name“ durch den Namen des Dienstes, den Sie starten möchten.
Benutzerkonten erstellen  Dieser Befehl erstellt ein neues Benutzerkonto mit dem angegebenen Benutzernamen mithilfe des Befehls useradd mit Superuser-Berechtigungen.sudo useradd Benutzername
Ersetzen Sie „Benutzername“ durch den gewünschten Benutzernamen für das neue Konto.  
Dateiberechtigungen ändern  Dieser Befehl ändert die Berechtigungen der angegebenen Datei auf Lesen und Schreiben für den Eigentümer und auf schreibgeschützt für die Gruppe und andere.sudo chmod 644 Dateiname
Ersetzen Sie „Dateiname“ durch den Namen der Datei, die Sie ändern möchten.  
Aktualisieren des Systems  Dieser Befehl aktualisiert die Paketlisten und aktualisiert alle auf dem System installierten Pakete mithilfe des apt-Paketmanagers mit Superuser-Rechten.  sudo apt update && sudo apt upgrade

Führen Sie einen Befehl als Root-Benutzer aus

Um einen Befehl als Root-Benutzer unter Linux mit dem Befehl sudo auszuführen, können Sie dem Befehl einfach sudo voranstellen.

Beispiel:-

sudo-Befehl

Ersetzen Sie „Befehl“ durch den tatsächlichen Befehl, den Sie ausführen möchten.

Wenn Sie den Befehl mit sudo ausführen, geben Sie Ihr eigenes Passwort ein. Ihr Benutzerkonto ist mit sudo-Zugriff konfiguriert.

Führen Sie einen Befehl als anderer Benutzer aus

Um einen Befehl als anderer Benutzer unter Linux mit dem Befehl sudo auszuführen, können Sie die Option -u oder –user verwenden.

Beispiel: –

sudo -u Benutzername-Befehl

Ersetzen Sie „Benutzername“ durch den Benutzernamen des Benutzers.

Führen Sie ein Programm im Hintergrund aus

Um unter Linux ein Programm im Hintergrund auszuführen, können Sie das &-Symbol am Ende des Befehls verwenden.

Beispiel:-

Befehl &

Wenn Sie ein Programm im Hintergrund ausführen, wird seine Ausgabe möglicherweise weiterhin im Terminal angezeigt.

Um zu verhindern, dass das Programm Ausgaben anzeigt, können Sie mit dem folgenden Befehl sowohl die Standardausgabe als auch die Standardfehlerausgabe nach /dev/null umleiten.

meinProgramm >/dev/null 2>&1 &

Grundlegende Fehlerbehebung bei Sudo-Befehlen

Wenn Sie unter Linux mit dem Befehl sudo arbeiten, können einige gängige Fehlerbehebungsszenarien auftreten. Einige grundlegende Schritte zur Fehlerbehebung, um die Probleme zu beheben.

  • Ungültiger Sudoers-Eintrag
    • Wenn Sie eine Fehlermeldung erhalten, die auf einen ungültigen Sudoers-Eintrag hinweist, liegt ein Syntaxfehler in der Sudoers-Datei vor.
    • Um dies zu beheben, öffnen Sie die sudoers-Datei mit dem Befehl visudo und überprüfen und korrigieren Sie sorgfältig alle Syntaxfehler.
  • Falsche Sudo-Konfiguration
    • Wenn sudo nicht wie erwartet funktioniert, kann dies an falschen Konfigurationseinstellungen liegen. Verwenden Sie den Befehl visudo, um die sudoers-Datei zu öffnen und die Konfigurationseinträge zu überprüfen.
  • Sudo-Zugriff verweigert
    • Wenn Sie beim Ausführen eines Befehls mit sudo die Fehlermeldung „Zugriff verweigert“ oder „Berechtigung verweigert“ erhalten, kann dies an unzureichenden Sudo-Berechtigungen liegen.
  • Umgebungsvariablen
    • Sie können die Option -E oder –preserve-env mit sudo verwenden, um die Umgebungsvariablen des aufrufenden Benutzers beizubehalten.
  • Unzureichender Speicherplatz
    • Manchmal erfordert ein mit sudo ausgeführter Befehl Speicherplatz für temporäre Dateien oder andere Vorgänge.

Best Practices für den Sudo-Befehl

Bei der Verwendung des sudo-Befehls unter Linux ist es wichtig, Best Practices für eine sichere und effektive Systemverwaltung zu befolgen. Einige empfohlene Best Practices für den Sudo-Befehl.

  • Gewähren Sie die geringste Berechtigung: Befolgen Sie das Prinzip der geringsten Berechtigung, indem Sie sudo-Zugriff nur vertrauenswürdigen Benutzern gewähren und deren Berechtigungen auf bestimmte Befehle beschränken.
  • Verwenden Sie Visudo zum Bearbeiten der sudoers-Datei: Verwenden Sie immer den Befehl visudo, um die sudoers-Datei zu bearbeiten. Der visudo-Befehl prüft vor dem Speichern der Datei auf Syntaxfehler und verhindert so versehentliche Fehlkonfigurationen.
  • Validieren Sie sudoers-Dateiänderungen: Nachdem Sie Änderungen vorgenommen haben, validieren Sie die Änderungen mit dem Befehl sudo -l.
  • Schützen Sie Ihr Passwort: Sichern Sie Ihr Sudo-Passwort und geben Sie es nicht an andere weiter.
  • Aktivieren Sie die Zwei-Faktor-Authentifizierung (2FA)
  • Überprüfen Sie regelmäßig die Sudoers-Datei
  • Seien Sie vorsichtig mit Befehlsargumenten
  • Überwachen Sie die Sudo-Aktivität

Schreibe einen Kommentar