OpenVPN客戶端啟動管理指令碼
##########################################################################
#
# discript: openvpn self-start script
# user: Romix
#
##########################################################################
CFG_FILE="/etc/openvpn/client.conf"
LOG_FILE="/tmp/openvpn.log"
check_run(){
PID=`ps -ef|grep 'openvpn --config'|grep -v grep|awk '{print $2}'`
return 0
else
return 1
fi
}
do_start(){
check_run
if [ $? = "1" ];then
echo -e "\033[31m The openvpn daemon is running...\033[0m"
else
openvpn --config $CFG_FILE --daemon
sleep 1
echo -e "\033[32m openvpn demon do start\033[0m"
fi
}
do_stop(){
for i in `ps -ef|grep 'openvpn --config'|grep -v grep|awk '{print $2}'`;do
kill -9 $i
done
echo -e "\033[31m openvpn demon do stop\033[0m"
}
guard_run(){
while true
do
sleep 30
check_run
if [ $? = "1" ]; then
echo -e "\033[32m openvpn is started.\033[0m"
else
echo -e "\033[32m openvpn is stop.\033[0m"
do_start
fi
done
}
case "$1" in
start)
echo -e "\033[32m Radar System vpn network start...\033[0m"
do_start
guard_run
exit 0
;;
restart|reload|force-reload)
echo -e "\033[32m Radar System vpn network restart...\033[0m"
do_stop
sleep 1
do_start
guard_run
exit 0
;;
stop)
echo -e "\033[31m Radar System vpn network stop...\033[0m"
do_stop
exit 0
;;
*)
echo -e "\033[31m Usage: $0 start|stop|restart\033[0m" >&2
exit 3
;;
esac