check_vpn.sh 724 B

123456789101112131415161718192021222324252627
  1. #!/bin/sh
  2. LOG_FILE=/var/log/vpn_check.log
  3. now=$(date)
  4. echo "${now} - Running Check" | tee -a ${LOG_FILE}
  5. curl -sI https://tbsgl.xyz/vpn_darmstadt | grep "HTTP/2 200" | grep -v grep > /dev/null
  6. # Check if VPN-On Flag is set
  7. if [ $? = 0 ]
  8. then
  9. ping -c 1 192.168.178.1 | grep "64 bytes from" | grep -v grep > /dev/null
  10. # Check if VPN is already connected
  11. if [ $? != 0 ]
  12. then
  13. # If not, then Restart VPN
  14. systemctl restart vpnc@fb > /dev/null
  15. echo "Ping not successful - Restarting VPN\n" | tee -a ${LOG_FILE}
  16. else
  17. echo "Ping reached router, doing nothing\n" | tee -a ${LOG_FILE}
  18. fi
  19. else
  20. systemctl stop vpnc@fb
  21. echo "VPN Flag seems to be disabled or no Internet, stopping service\n" | tee -a ${LOG_FILE}
  22. fi