Openswan Dirty Workaround

Aus xinux.net
Zur Navigation springen Zur Suche springen

check

  • /usr/local/sbin/check_vpn vpn-rot 192.168.202.10 10.5.40.29
#!/bin/bash
VPN=$1
IP=$3
SRC=$2
ADDRESS="technik@xix.de"
LOG=/var/log/$VPN.log
ERR=0
echo $ERR
ping -c 1 -w 1 -I $SRC  $IP > /dev/null 2>&1 || ERR=$((ERR+1))
ping -c 1 -w 1 -I $SRC  $IP > /dev/null 2>&1 || ERR=$((ERR+1))
ping -c 1 -w 1 -I $SRC  $IP > /dev/null 2>&1 || ERR=$((ERR+1))
ping -c 1 -w 1 -I $SRC  $IP > /dev/null 2>&1 || ERR=$((ERR+1))
ping -c 1 -w 1 -I $SRC  $IP > /dev/null 2>&1 || ERR=$((ERR+1))
echo "ERR = $ERR" >> $LOG
if test "$ERR" -eq "5"
then
 MSG="$(date) ERR: $ERR $VPN restart"
 echo $MSG  >> $LOG
 echo $MSG | /usr/bin/mail -s "$MSG" $ADDRESS
 /usr/sbin/ipsec auto --delete $VPN >> $LOG
 sleep 3
 /usr/sbin/ipsec auto --add  $VPN >> $LOG
 sleep 1
 /usr/sbin/ipsec auto --up  $VPN >> $LOG
fi