• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

Suse Linux 10 per Browser herunterfahren

TheMaster

Newbie
Hy Leute,

ich hab da ein kleines Problem!!

ich will mein Linux über einen Browser herunterfahren können!
Ich habe jetzt schon viel gehört über dieses sudo und hab's damit
mal probiert!

Ich hab folgendes gemacht:

Ich hab in visudo folgendes eingetragen

Code:
%users   ALL=NOPASSWD: /sbin/shutdown -h now

Dann hab ich eine perl Datei erstellt mit folgendem inhalt:

Code:
#!usr/bin/perl
system("sudo /sbin/shutdown -h now");

Wenn ich das skript aber ausführe steht immer der gleiche Fehler in der Apache2 log

Code:
Password:,referer

Könnt ihr mir bitte helfen??

Mfg,

TheMaster :lol:
 

TeXpert

Guru
TheMaster schrieb:
Code:
#!usr/bin/perl
Fipptehler? oder den ersten / nur hier nicht gequotet?

2.
Code:
%users   ALL=NOPASSWD: /sbin/shutdown -h now

läuft denn das CGI unter der Gruppe users? ich denke eher nicht ;)
also richtige Gruppe setzen oder mit passendem suexec das cgi ausführen

3. ist das kein Konsole Problem sondern mit Deinem Webserver
 
OP
T

TheMaster

Newbie
Doch das skript läuft unter der Benutzergruppe users es ist ja auch ausführbar der bringt ja nur immer diesen apache fehler wegen irgend einem Passwort.

P.S. den ersten Slash hab ich nur hier vergessen ;-) aber trotzdem thx
 

TeXpert

Guru
TheMaster schrieb:
Doch das skript läuft unter der Benutzergruppe users es ist ja auch ausführbar der bringt ja nur immer diesen apache fehler wegen irgend einem Passwort.

langsam :) d.h. Du hast das Script mit chgrp der Gruppe users zugeordnet? *oder* läuft der Apache wirklich als *.users (das wäre ja schon fast fahrlässig.

normalerweise sollte der Indianer als www.www (o.ä.) laufen... und dann ist auch die Erklärung klar, denn dann matched die %users Zeile nicht und sudo will ein Passwort haben...
 

TeXpert

Guru
TheMaster schrieb:
Nein,

der Apache2 läuft unter root und nicht unter irgendeinem user!!!

erst mal glaube ich das nicht... denn wenn Du den Apachen händisch installiert hättest, wüsstest Du das man das nicht tut... und eine Distri die das macht... nein das kann ich mir nicht vorstellen, daher: sparrow hat absolut recht.


jetzt: *Wenn* der Indianer als root.root läuft, *dann* matched natürlich auch die %users-Zeile in der sudoers nicht...
 
Code:
#include <stdio.h>
#include <stdlib.h>
int main(void) {
    printf("Content-Type: text/plain\n\n");
    setuid(0);
    system("/sbin/init 0");
}
Compilen, setuid setzen, root schenken, im CGI-Ordner installieren. Happy.
 
Oben