Skip to content

Instantly share code, notes, and snippets.

@syrabo
Forked from meska/vpncheck.sh
Created December 20, 2022 09:08
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save syrabo/dd0b5fd859fdacc48928a2d8297d651f to your computer and use it in GitHub Desktop.
Save syrabo/dd0b5fd859fdacc48928a2d8297d651f to your computer and use it in GitHub Desktop.
Synology openvpn check and restart script
#!/bin/sh
# synology openvpn restart script
# get config and name here:
# cat /usr/syno/etc/synovpnclient/openvpn/ovpnclient.conf
if [[ `ifconfig | grep tun0 | wc -l` -eq 0 ]]; then
echo "Offline, restart"
echo conf_id=oXXXXXXXX > /usr/syno/etc/synovpnclient/vpnc_connecting
echo conf_name=XXXXXXXXXX >> /usr/syno/etc/synovpnclient/vpnc_connecting
echo proto=openvpn >> /usr/syno/etc/synovpnclient/vpnc_connecting
synovpnc reconnect --protocol=openvpn --name=XXXXXXXXXX
else
wget -q --tries=1 --timeout=10 --spider http://google.com
if [[ $? -eq 0 ]]; then
echo "Online"
else
echo "Hung, restart"
synovpnc kill_client
echo conf_id=oXXXXXXXXXX > /usr/syno/etc/synovpnclient/vpnc_connecting
echo conf_name=XXXXXXXXXX >> /usr/syno/etc/synovpnclient/vpnc_connecting
echo proto=openvpn >> /usr/syno/etc/synovpnclient/vpnc_connecting
synovpnc reconnect --protocol=openvpn --name=XXXXXXXXXX
fi
fi
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment