#!/bin/bash ### BEGIN INIT INFO # Provides: wificonn # Required-Start: wpa_supplicant dhclient # Required-Stop: wpa_supplicant dhclient # Default-Start: 0 1 2 3 4 5 6 # Default-Stop: # Short-Description: Start wificonn # Description: Start wificonn ### END INIT INFO # -> /etc/init.d/wifi # to be replaced by architecture similar to pi-purple # wificonn STARTER case "$1" in "start") # Ensure junk from previous instances is gone! sleep 10 killall revpfw3 ssh kill -0 $(cat /etc/serverpid) && sleep 60 && exit 20 echo -n "$$" > /etc/serverpid # Start a thread to make sure the internet connectivity is NEVER lost! ( OFF=0 while true; do # Wait 0.5 minutes sleep 300 if killall -0 revpfw3 > /dev/null 2>&1 ; then OFF=0 else if [[ $OFF = 1 ]] ; then reboot fi #OFF=1 fi done ) & echo -n " $!" >> /etc/serverpid ( OFF=0 while true; do # Wait 0.5 minutes sleep 300 if ping -c 1 tudbut.de > /dev/null 2>&1 ; then OFF=0 else if [[ $OFF = 1 ]] ; then reboot fi OFF=1 fi done ) & echo -n " $!" >> /etc/serverpid # no dont do that ## # Start wificonn service ## /bin/wificonn # start dhclient instead #(cd $(cat /etc/server_dir); while true; do java -jar $(cat /etc/server_jar); done) & # Wait 5 seconds sleep 5 # Start a thread to make sure the important portfws are running ( while true ; do echo Starting remote revpfw echo "echo STARTING; killall revpfw3 && echo KILLED; sleep 2" | ssh -o StrictHostKeyChecking=no root@tudbut.de #echo "cd server ; revpfw3 server 25565 _____ & echo STARTED MCS" | ssh -o StrictHostKeyChecking=no root@tudbut.de & echo "cd server ; revpfw3 server 23 _____ & echo STARTED SSH" | ssh -o StrictHostKeyChecking=no root@tudbut.de & echo "cd server ; revpfw3 server 81 _____ & echo STARTED WEB" | ssh -o StrictHostKeyChecking=no root@tudbut.de & echo "cd server ; revpfw3 server 6667 _____ & echo STARTED IRC" | ssh -o StrictHostKeyChecking=no root@tudbut.de & echo Wait 5 seconds for the portfw servers to start up sleep 5 echo Connect to portfw servers #revpfw3 client tudbut.de 25565 localhost 25565 _____ & #PID1="$!" PID1=1 revpfw3 client tudbut.de 23 localhost 22 _____ & PID2="$!" revpfw3 client tudbut.de 81 localhost 80 _____ & PID3="$!" revpfw3 client tudbut.de 6667 localhost 6667 _____ & PID4="$!" echo Wait 3 seconds for the connections to form sleep 3 echo Start the IRC bots ircbots echo Wait 0.5 seconds for the IRC bots to start up sleep 0.5 # Ensure all services are running while kill -0 $PID1 && kill -0 $PID2 && kill -0 $PID3 && kill -0 $PID4 ; do # Wait 1 second to not stress CPU too much sleep 1 done # Wait 1 second sleep 1 kill $PID2 $PID3 $PID4 # $PID1 done ) & echo -n " $!" >> /etc/serverpid # bash -c 'cd ~www/cooking && python3 -m http.server 6003' & # while true; do revpfw3 client 8b8t.xyz 6003 localhost 6003 _____ ; sleep 3 ; done & #sleep 30 #discordirc while true; do sleep 10; done ;; "stop") killall revpfw3 # Wait 2 seconds sleep 1 kill $(cat /etc/serverpid) sleep 5 killall -9 revpfw3 kill -9 $(cat /etc/serverpid) killall /etc/init.d/wifi ;; esac & disown