[Script] SCRIPT VERIFICA TUNEL VPN
Enviado: 11 Nov 2013 23:54
Ola amigos,
Este script faz uma verificação para saber se o TUNNEL VPN entre dois pontos está OK.
Isso devido ao fato de usar DYNDNS ou No-IP por nao ter um IPFIXO.
Obs1: coloquei para ser checado de minuto em minuto.
Obs2: este arquivo deve ser colocado nas duas maquinas.
Obs3: a sintaxe "ping 192.168.2.1" em lado da VPN e no outro lado voce muda ao IP alvo correspondente se nao , nao vai funcionar...
OBS4: criei um segundo script que resolve o problema de o primeiro script ficar mandando INFINITOS emails, caso o TUNNEL esteja caido, pois o PRIMEIRO te manda um alerta por EMAIL ate o problema ser corrigido.
OBS5:
VOCE DEVE VERIFICAR, em seu arquivo " /var/efw/vpn/config" a linha que contem a CONFIGURACAO VPN que deve ligada e desligada.
Ex meu arquivo:
EX: sed -i '2s/3,on/3,off/g' /var/efw/vpn/config
FAZ o seguinte:
na linha 2 veja: "sed -i '2s"
a expressao "3,on" vai virar "3,off"
SACOU?
No meu arquivos tem 4 linhas e devo fazer o comando para cada LINHA ja que quero dar um "OFF"/"ON" o velho LIGA E DESLIGADA.
Criar um Arquivo em: (o nome pode ser o que vc quiser)
ex:
touch /etc/cron.minutely/restarttunnel
chmod 775 /etc/cron.minutely/restarttunnel
"nano /etc/cron.minutely/restarttunnel" e cola o conteudo
CONTEUDO PRIMEIRO SCRIPT:
#
SEGUNDO SCRIPT
Obs1: este fica em:
/etc/anacron.cyclic/restarttunnel
entao:
touch /etc/anacron.cyclic/restarttunnel
chmod 775 /etc/anacron.cyclic/restarttunnel
"nano /etc/anacron.cyclic/restarttunnel " e cola o conteudo
Conteudo:
Bem quem quiser alterar/modificar/melhorar , fiquem a vontade.
Este script faz uma verificação para saber se o TUNNEL VPN entre dois pontos está OK.
Isso devido ao fato de usar DYNDNS ou No-IP por nao ter um IPFIXO.
Obs1: coloquei para ser checado de minuto em minuto.
Obs2: este arquivo deve ser colocado nas duas maquinas.
Obs3: a sintaxe "ping 192.168.2.1" em lado da VPN e no outro lado voce muda ao IP alvo correspondente se nao , nao vai funcionar...
OBS4: criei um segundo script que resolve o problema de o primeiro script ficar mandando INFINITOS emails, caso o TUNNEL esteja caido, pois o PRIMEIRO te manda um alerta por EMAIL ate o problema ser corrigido.
OBS5:
VOCE DEVE VERIFICAR, em seu arquivo " /var/efw/vpn/config" a linha que contem a CONFIGURACAO VPN que deve ligada e desligada.
Ex meu arquivo:
Código: Selecionar todos
/var/efw/vpn/config
1,off,VPN1,,net,psk,sasasa,,,10.10.0.0/16,,200.200.215.106,192.168.1.0/255.255.255.0,,on,off,off,1,8
2,on,VPN2,,net,psk,sasasa,,,10.10.0.0/16,,200.200.215.106,192.168.1.0/255.255.255.0,,on,off,off,1,8
3,on,VPN3,,net,psk,sasasa,,,10.10.0.0/16,,200.200.215.106,192.168.1.0/255.255.255.0,,on,off,off,1,8
FAZ o seguinte:
na linha 2 veja: "sed -i '2s"
a expressao "3,on" vai virar "3,off"
SACOU?
No meu arquivos tem 4 linhas e devo fazer o comando para cada LINHA ja que quero dar um "OFF"/"ON" o velho LIGA E DESLIGADA.
Criar um Arquivo em: (o nome pode ser o que vc quiser)
ex:
touch /etc/cron.minutely/restarttunnel
chmod 775 /etc/cron.minutely/restarttunnel
"nano /etc/cron.minutely/restarttunnel" e cola o conteudo
CONTEUDO PRIMEIRO SCRIPT:
Código: Selecionar todos
#!/bin/bash
#VERIFICA TUNNEL
if ! ping -c 7 192.168.2.1 ; then
echo
echo "TUNNEL EST? Parado !!!"
echo 'ALERTA - VPN DOWN:' `date` `who` http://cstoreimg.dyndns.org:10443/ ou https://cstore.homeip.net:10443/cgi-bin/vpnmain.cgi | mail -s "VPNIMG: VPN ESTA CAIDA" felipe.ques$
sed -i '2s/3,on/3,off/g' /var/efw/vpn/config;./restartipsec;/usr/local/bin/restartipsec --force;/usr/local/bin/restartipsec --force
sleep 5
sed -i '2s/3,off/3,on/g' /var/efw/vpn/config;./restartipsec;/usr/local/bin/restartipsec --force;/usr/local/bin/restartipsec --force
echo
else
echo
echo "TUNNEL ok !!!"
echo
fi
exit
#
SEGUNDO SCRIPT
Obs1: este fica em:
/etc/anacron.cyclic/restarttunnel
entao:
touch /etc/anacron.cyclic/restarttunnel
chmod 775 /etc/anacron.cyclic/restarttunnel
"nano /etc/anacron.cyclic/restarttunnel " e cola o conteudo
Conteudo:
Código: Selecionar todos
!/bin/bash
#----------------VERIFICA TUNNEL NOVAMENTE
if ! ping -c 7 192.168.2.1 ; then
echo
echo "TUNNEL ESTA Parado !!!"
sed -i '2s/3,on/3,off/g' /var/efw/vpn/config;./restartipsec;/usr/local/bin/restartipsec --force;/usr/local/bin/restartipsec --force
sleep 5
sed -i '2s/3,off/3,on/g' /var/efw/vpn/config;./restartipsec;/usr/local/bin/restartipsec --force;/usr/local/bin/restartipsec --force
#
#----------------FIM DA VERIFICACAO
#
#---------CORRECAO DE MULTIPLOS EMAILS CASO TUNNEL ESTEJA CAIDO.
#
chmod 644 /etc/cron.minutely/restarttunnel
else
chmod 775 /etc/cron.minutely/restarttunnel
echo
echo "TUNNEL ok !!!"
echo
fi
exit