Willkommen Gast. Bitte einloggen oder registrieren. Haben Sie Ihre Aktivierungs E-Mail übersehen?
13.07.2020, 19:25:39

.
Einloggen mit Benutzername, Passwort und Sitzungslänge

Mitglieder
Statistiken
  • Beiträge insgesamt: 670636
  • Themen insgesamt: 54343
  • Heute online: 432
  • Am meisten online: 2287
  • (22.01.2020, 19:20:24)
Benutzer Online

Autor Thema:  Einzelne Befehle oder Scripte mit sudo ohne Passworteingabe ausführen  (Gelesen 197 mal)

0 Mitglieder und 1 Gast betrachten dieses Thema.

Guten Tag,

ich möchte einige konkrete Befehle und Scripte - die sudo benötigen - ohne die Eingabe des Passworts ausführen können. Mit 'sudo visudo' habe ich schon für z. B. den Shutdown-Befehl entsprechendes eingefügt, das sind aber konkrete Programme. Angenommen ich habe ein Script in /home/mendelsohn liegen, in dem Scrpt steht dann

sudo -u test_user programm
Damit soll ein Programm als User 'test_user' gestartet werden. Muss ich dann das Script in /etc/sudoers eintragen oder den Befehl der im Script steht?

Wenn ich das Script eintrage und reboote muss ich bei 'sudo script' dennoch das Passwort eintragen. In der /etc/sudoers steht

mendelsohn ALL=(ALL) NOPASSWD: /bin/bash -c /home/mendelsohn/script
Wie würde ich den Befehl

sudo -u test_user
eintragen? Ich möchte nur diesen konkreten Befehl und nicht alle User-Wechsel ohne Passworteingabe ausführen können.

Grüße,
Mendelsohn

Es geht scheinbar nicht, wenn das Script im Home-Ordner bleibt.

Wenn ich es nach /usr/local/bin verschieben und dann den Pfad eintrage geht das. Ich muss dann auch nicht den Aufruf innerhalb des Scriptes irgendwo eintragen.

Mit 'sudo visudo' habe ich schon für z. B. den Shutdown-Befehl entsprechendes eingefügt
Warum? Du schreibst zwar nichts zu deiner verwendeten Mintversion und deinem Desktop, aber bei LM 19.3 (Cinnamon oder Mate) z.B. ist das "sudo" davor überflüssig, es funktioniert auch ohne. Unter älteren Versionen müsste das hier noch funktionieren (ebenfalls ohne sudo):
dbus-send --system --print-reply --dest=org.freedesktop.ConsoleKit /org/freedesktop/ConsoleKit/Manager org.freedesktop.ConsoleKit.Manager.StopDas könntest du also schon mal wieder aus der sudoers streichen.

Für dein anderes Problem solltest du dir einmal das Programm "xc" ansehen, das ist eine einfache Alternative zu "sudo".

Du kannst explizit festlegen, welche Befehle ein Benutzer mit welchen Rechten ausführen darf. In der Konfigurationsdatei /etc/xc.conf ordnet jede Zeile einen Befehl samt Rechten eindeutig einem Benutzer zu.

Das Programm musst du selbst kompilieren (Dreisatz). Dazu musst du (unter LM 19.3) vorher noch die Pakete
apt install gcc-5-multilib libncurses5-dev libpam0g-devnachziehen (gilt für xc-1.5.1.1).