From b6f9b5570e303e1195d33594a3f2e5a392660ce6 Mon Sep 17 00:00:00 2001 From: Michel Blockelet Date: Wed, 17 Jun 2009 16:59:35 +0200 Subject: [PATCH] [check-vpn-from-ovh] Cinquantieme version ... ... d'un script qui ne marche bien sur que quand on le teste a la main ... (Mais bon, ca devrait marcher cette fois, on y croit !) darcs-hash:20090617145935-ddb99-519f8906f3ce63552f49970183494ddad4eb252a.gz --- secours/check-vpn-from-ovh | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/secours/check-vpn-from-ovh b/secours/check-vpn-from-ovh index 6e849cfc..98d004fc 100644 --- a/secours/check-vpn-from-ovh +++ b/secours/check-vpn-from-ovh @@ -3,7 +3,13 @@ vpn_is_running () { local pid_file pid_file=/var/run/openvpn.$1.pid - [[ ! -f $pid_file || ! -d /proc/$(< $pid_file) ]] && return 1 || return 0 + if [ -f $pid_file ] && [ -d /proc/$(< $pid_file) ] + then if fping komaz.adm.crans.org &> /dev/null + then return 0 + else return 1 + fi + else return 1 + fi } vpn_start () { @@ -12,7 +18,8 @@ vpn_start () { if ! [ -f /tmp/vpn_mail_sent ] || [ $((`date +%s` - `stat -c %X /tmp/vpn_mail_sent`)) -gt 300 ] then touch /tmp/vpn_mail_sent - if /etc/init.d/openvpn start $1 + # On utilise restart pour être sûr de ne pas avec de VPN qui traîne + if /etc/init.d/openvpn restart $1 then echo "Lancement du vpn $(hostname)<->$1 reussi "'!' exit 0 @@ -21,7 +28,7 @@ vpn_start () { exit 1 fi else - /etc/init.d/openvpn start $1 &> /dev/null + /etc/init.d/openvpn restart $1 &> /dev/null fi } @@ -33,6 +40,7 @@ fi if fping -q komaz.crans.org; then # Si on peut atteindre komaz, on repasse par komaz if vpn_is_running freebox + then if ! [ -f /tmp/vpn_mail_sent ] || [ $((`date +%s` - `stat -c %X /tmp/vpn_mail_sent`)) -gt 300 ] then /etc/init.d/openvpn stop freebox