Ausführen

  • Themenstarter Themenstarter yellowpixel
  • Beginndatum Beginndatum
Y

yellowpixel

Wenn ich bei folgendem Script den Befehl shutdown -r eingeben. ...

PHP:
<form name="form1" method="get" action="">
  <input name="command" type="command" value="<?php echo "$command"; ?>">
  <input type="submit" name="submit" value="start">
</form>
<?php
if ($submit=="start") {
   $output = shell_exec($command);
   }else{}
   echo "<center><textarea name=textarea cols=80 rows=18>$output</textarea></center>";
?>
<br>
[<a href="?command=shutdown%20-s&submit=start">shutdown</a>] 
[<a href="?command=shutdown%20-r&submit=start">restart</a>]

...erscheint diese Fehlermeldung...

Der Vorgang wurde erfolgreich beendet.
Der Client besitzt ein erforderliches Recht nicht.

An was liegt das?
 
Erstmal heisst es shutdown -r now (glaub ich)
Dann ist das ganze ding extrem gefährlich!
Und ausserdem kann es sein, dass der Webserver (und also auch PHP) nicht als root läuft und somit nicht genügend Rechte hat, um den shutdown-Befehl auszuführen.

Ansonsten: Versuchs mal mit exec oder system
 
Das ist ne kleine Windows-Maschine die bei mir als Test Webserver läuft.
Also nix mit Linux.

Ich bin mir dessen Bewusst dass es ein gefährliches Script ist, aber da der Server bi mir Local läuft uns sunscht niemand Zugriff darauf hat, kann nichts passieren.
 
exec() und system() haben auch keinen Erfolg gebracht ? Und auf dem Server, auf läuft der Webserver wirklich unter dem Administrator Account ?
Lässt sich über den Task-Manager feststellen (zumindest unter WinXP), dort steht zum jeweiligen Prozess auch der "ausführende" User.
 
d.h. er will den Webserver auf einer Windoof-Maschine stoppen ?! :D

Also ich verwende folgendes um auf WIndoof-Rechnern den Apache zu kontrollieren:
system("c:\apache\Apache -n \"Apache\" -k start &")
system("c:\apache\apache -n \"Apache\" -k shutdown &")
system("c:\apache\apache -n \"Apache\" -k restart &")

Vieleicht hilft das ja ;)

[edit]Ups...naja, vieleicht hilfts ja trotzdem irgendwem anderes ;) *wiederinsbettgeh*[/edit]
 
Zurück