Diese Website existiert nur weil wir Werbung mit AdSense ausliefern.
Bitte den AdBlocker daher auf dieser Website ausschalten! Danke.

[solved] passwort an sudo per Script übergeben

Alles rund um die verschiedenen Konsolen und shells sowie die Programmierung unter Linux

Moderator: Moderatoren

Gesperrt
Benutzeravatar
kroe
Member
Member
Beiträge: 87
Registriert: 11. Sep 2003, 19:38

[solved] passwort an sudo per Script übergeben

Beitrag von kroe »

Hi,

gibt es eine Möglichkeit, dass ich dem sudo-Befehl das root-Passwort per Script übergebe, also dass ich dieses nicht per Hand eingeben muss, sondern aus einer Datei auslesen lasse?

Gruß
kroe
Dokumentation für LTSP-SuSE-icewm, insbesondere für den Einsatz in Schulen:
--> http://www.linux-schulen.de
Loci

Beitrag von Loci »

wüßte nicht wie, was genau willst du denn machen, evtl läßt sichs per sticky-bit lösen... wär die einfachste variante

loci
geist_der_foren
Newbie
Newbie
Beiträge: 39
Registriert: 15. Dez 2003, 11:44

Beitrag von geist_der_foren »

Hi,

du meinst nicht das rootpasswort übergeben, sondern das Userpasswort.
Also wenn ich das richtig verstanden habe, du willst einem user berechtigungen geben, ein Befehl als root auszuführen, aber dieser User soll nicht ständig sein passwort eingeben ? Dann must einfach "NOPASSWD:" benutzen z.B.:

Code: Alles auswählen

REMOTE SERVER = NOPASSWD: RCAPACHE
Wenn du noch fragen hast, meld dich einfach ;) Sonst "man sudo"

gruß

g_d_f
admine
Administrator
Administrator
Beiträge: 8865
Registriert: 15. Feb 2004, 21:13
Kontaktdaten:

Beitrag von admine »

Ergänzend zu @geist_der_foren
macht es auch ein Eintrag in der /etc/sudoers
z.B.:

Code: Alles auswählen

derUser ALL=NOPASSWD:/sbin/shutdown -h now
..:: unser Linux-Club-Wiki ::..
-------------------------
..:: Deutsche Mugge ::..
-------------------------
Benutzeravatar
kroe
Member
Member
Beiträge: 87
Registriert: 11. Sep 2003, 19:38

Beitrag von kroe »

Loci hat geschrieben: sticky-bit lösen...
Meinst du das sbit?

Allerdings muss ein Shell-Script ausgeführt werden und die funktionieren nicht mit dem sbit :-(

Gruß
kroe
Dokumentation für LTSP-SuSE-icewm, insbesondere für den Einsatz in Schulen:
--> http://www.linux-schulen.de
Loci

Beitrag von Loci »

ja ich mein das sbit aka stickybit
weiß ned ob das über scripte ned funzt, aber die oben genannten versionen gehen auch
Benutzeravatar
kroe
Member
Member
Beiträge: 87
Registriert: 11. Sep 2003, 19:38

Beitrag von kroe »

Loci hat geschrieben:ja ich mein das sbit aka stickybit
weiß ned ob das über scripte ned funzt, aber die oben genannten versionen gehen auch
Ersteinmal danke fürs Mitdenken - nebenbei: sbit ist nicht gleich stickybit (=t-bit).

Problem bei mir ist, dass Shell-Scripte nicht mit dem sbit funktionieren :-(

Gruß
kroe
Dokumentation für LTSP-SuSE-icewm, insbesondere für den Einsatz in Schulen:
--> http://www.linux-schulen.de
Benutzeravatar
kroe
Member
Member
Beiträge: 87
Registriert: 11. Sep 2003, 19:38

Beitrag von kroe »

geist_der_foren hat geschrieben:Hi,

... du willst einem user berechtigungen geben, ein Befehl als root auszuführen, aber dieser User soll nicht ständig sein passwort eingeben ?
fast genau das was ich möchte ;-)
Ich möchte dass die Gruppe teachers (oder meinetwegen auch alle user) ein shellscript (script.sh) ausführen können, in dem Befehle wie lprm -, rccups, rm stehen, die normalerweise nur von root ausgeführt werden dürfen.
Damit ich nicht das root-Passwort an die user weitergeben muss, möchte ich, dass das Script auch ohne Eingabe des root-Passwort funktioniert - ich komme allerdings mit deiner Erklärung noch nicht ganz zurecht :-( d.h. es läuft noch nicht so. Auch mit dem Eintrag in die /etc/sudoers klappt es noch nicht (wahrscheinlich, weil es ein Script ist und kein binary).

Vielleicht hat noch jemand einen Tipp

Gruß
Dieter
Dokumentation für LTSP-SuSE-icewm, insbesondere für den Einsatz in Schulen:
--> http://www.linux-schulen.de
geist_der_foren
Newbie
Newbie
Beiträge: 39
Registriert: 15. Dez 2003, 11:44

Beitrag von geist_der_foren »

Hi,

du must das Rootpasswort nicht weiter geben !
Wenn du jemand im Sudo berechtigst, dann darf er befehle als root ausführen aber muss "sein" passwort eingeben.
Also ich verstehe nicht wo das prob liegt ?!
Wenn du ein skript hast, dass andere User mit root-Rechten ausführen sollen, dann trage das einfach im SUDO ein ...
Sudo schaut dann nicht, was im Skript steht, sondern Führt das Skript als root aus. Am besten, sollte dann das Skript nur von root änderbar sein, sonst könnte es zu einer Sicherheitlücke kommen !
Kannst mal deine SUDO konfiguration Posten, damit ich mal rüber schauen kann.
Benutzeravatar
kroe
Member
Member
Beiträge: 87
Registriert: 11. Sep 2003, 19:38

Beitrag von kroe »

geist_der_foren hat geschrieben: du must das Rootpasswort nicht weiter geben !...
Also ich verstehe nicht wo das prob liegt ?!
Oooops - jetzt habe ich meinen Gedankenfehler doch noch gefunden:
Ich habe sudoers editiert

Code: Alles auswählen

%users ALL=NOPASSWD:/usr/bin/script.sh
, aber den sudo-Befehl im aufzurufendem Script (script.sh) hineingeschrieben und nicht wie es richtig wäre das Script damit aufgerufen:

Code: Alles auswählen

sudo /usr/bin/script.sh 
- Jetzt geht es :-)

Danke allen fürs Mithelfen
kroe
Dokumentation für LTSP-SuSE-icewm, insbesondere für den Einsatz in Schulen:
--> http://www.linux-schulen.de
geist_der_foren
Newbie
Newbie
Beiträge: 39
Registriert: 15. Dez 2003, 11:44

Beitrag von geist_der_foren »

Oh ja ... sowas kenne ich einfach nur zu gut, wie oft ist mir das schon passiert :lol:
Aber wie gesagt, pass auf dass das Skript nur für Root ausführbar ist, sonst kannst du echt probs bekommen ;)

mfg

g_d_f
wiseguy
Newbie
Newbie
Beiträge: 3
Registriert: 6. Mai 2010, 11:58

Re: [solved] passwort an sudo per Script übergeben

Beitrag von wiseguy »

Hallo,

ich habe das gleiche Problem wie kroe:
fast genau das was ich möchte
Ich möchte dass die Gruppe teachers (oder meinetwegen auch alle user) ein shellscript (script.sh) ausführen können, in dem Befehle wie lprm -, rccups, rm stehen, die normalerweise nur von root ausgeführt werden dürfen.
Damit ich nicht das root-Passwort an die user weitergeben muss, möchte ich, dass das Script auch ohne Eingabe des root-Passwort funktioniert
Allerdings will ich genau das nicht:
aber den sudo-Befehl im aufzurufendem Script (script.sh) hineingeschrieben und nicht wie es richtig wäre das Script damit aufgerufen:

Code: Alles auswählen

sudo /usr/bin/script.sh
Ich brauche ein Script, welches die Aufrufe "sudo /script.sh" komplett übernimmt und dennoch nicht nach einem Passwort fragt. Das script wird ja von einem user aufgerufen und DESSEN berechtigung soll bezugnehmend auf sudo berücksichtigt werden.

Der Eintrag in meiner /etc/sudoers lautet:

Code: Alles auswählen

%scriptgroup servername=NOPASSWD: /bin/script.sh
Mir geht es also darum, dass /bin/script.sh als root ausgeführt wird (es gehört dem user root und hat die Rechte 700)

Wenn ich jetzt

Code: Alles auswählen

sudo /bin/script.sh
aufrufe klappts ja auch (wie kroe schon sagte).

Nun will ich aber nur

Code: Alles auswählen

/bin/script-starter.sh
ausführen. Und /bin/script-starter.sh enthält folgendes:

Code: Alles auswählen

#!/bin/sh
/usr/bin/sudo /bin/script.sh
Weiß jemand, wie ich das entsprechend einrichten kann?
Benutzeravatar
whois
Administrator
Administrator
Beiträge: 16612
Registriert: 11. Okt 2004, 08:50
Wohnort: Aachen
Kontaktdaten:

Re: [solved] passwort an sudo per Script übergeben

Beitrag von whois »

Hallo

Mach bitte einen eigenen Thread auf. :irre: :zensur:

Code: Alles auswählen

Verfasst: 2004-Apr-19, 10:26 am
Du hast doch bestimmt andere Systemvorausetzungen welche du uns noch mitteilen willst oder?
Gesperrt