Hi,
ich weiß das es Sicherheitsmässige Gedanken bei dieser Frage gibt, aber diesen Aspekt bitte einfach außer Kraft lassen.
Also hier mein Problem:
Ich habe einen Homeserver mit einem AVM-Telefonscript darauflaufen, das mir kontinuierlich meine AVM Box Telefonliste ausliest.
Wird nun der Router abgeschaltet und wieder angeschaltet, muss das Shell Script neugestartet werden. Dafür habe ich die Möglichkeit, mit dem AVM Router auf den Server zu zugreifen und dort Aktionen auszuführen. Da ich es recht simpel halten möchte, habe ich mir ein PHP-skript geschrieben, das den Init-Prozess, der auch beim Homeserver-Reboot ausgeführt wird, neustartet. Das Skript sieht so aus:
Auf dem Router wird immer folgendes Skript ausgeführt:
Problem ist nun, ich erhalte auf dem Router immer das restart.php mit auch den Meldungen drin, dass der Prozess gestoppt und wieder gestartet wurde. Aber nur wenn ich das oben genannte Script selber per Konsole ausführe, dann läuft auch nachher auf dem Homeserver wieder der Prozess. Sonst, wenn es beim Rebooten des Systems automatisch gemacht wird, dann wird der Prozess nur abgeschaltet?
Vielleicht kann mir ja jemand bei meinem Gedankenfehler helfen. Achja es sind nur sehr wenig Befehle in der sh auf dem AVM Router möglich. Also umso simpler umso besser
Gruß kami
ich weiß das es Sicherheitsmässige Gedanken bei dieser Frage gibt, aber diesen Aspekt bitte einfach außer Kraft lassen.
Also hier mein Problem:
Ich habe einen Homeserver mit einem AVM-Telefonscript darauflaufen, das mir kontinuierlich meine AVM Box Telefonliste ausliest.
Wird nun der Router abgeschaltet und wieder angeschaltet, muss das Shell Script neugestartet werden. Dafür habe ich die Möglichkeit, mit dem AVM Router auf den Server zu zugreifen und dort Aktionen auszuführen. Da ich es recht simpel halten möchte, habe ich mir ein PHP-skript geschrieben, das den Init-Prozess, der auch beim Homeserver-Reboot ausgeführt wird, neustartet. Das Skript sieht so aus:
Code:
$iprange= str_split($_SERVER['REMOTE_ADDR'],11);
if ($iprange[0] == "192.168.2.1")
{
system("sudo /etc/init.d/local stop");
sleep(1);
system("sudo /etc/init.d/local start");
sleep (5);}
else{echo "wrong ip";}
Auf dem Router wird immer folgendes Skript ausgeführt:
Code:
#!/bin/sh
count=1
while ! ping -c 1 192.168.2.12 && [ "$count" -lt "3" ]; do
sleep 5
let count=count+1
echo $count;
done;
ping -c1 192.168.2.12 >/dev/null 2>&1
currentStatus=$?
echo $currentStatus
if [ "$currentStatus" != "1" ]
then
cd /var/tmp
wget http://test:[email protected]/restart.php;
fi
Problem ist nun, ich erhalte auf dem Router immer das restart.php mit auch den Meldungen drin, dass der Prozess gestoppt und wieder gestartet wurde. Aber nur wenn ich das oben genannte Script selber per Konsole ausführe, dann läuft auch nachher auf dem Homeserver wieder der Prozess. Sonst, wenn es beim Rebooten des Systems automatisch gemacht wird, dann wird der Prozess nur abgeschaltet?
Vielleicht kann mir ja jemand bei meinem Gedankenfehler helfen. Achja es sind nur sehr wenig Befehle in der sh auf dem AVM Router möglich. Also umso simpler umso besser
Gruß kami