Conexão VPN permanente com vpnc

2

Eu preciso saber como estabelecer conexão VPN com o Cisco VPN usando vpnc no Centos 5.6. Eu posso iniciar a conexão, mas após um período de tempo, o processo vpnc não existe na lista de processos quando executado

# pgrep vpnc

Eu não sei é porque a própria conexão cai ou o que? ... se sim, então como posso tornar a conexão permanente?

O arquivo de configuração se parece com isso

## generated by pcf2vpnc
IPSec ID xxxx
IPSec gateway xx.xx.xx.xx
IPSec secret xxxxx
Xauth username xxxxxx
Xauth password xxxxxx

Eu tentei a solução neste artigo aqui mas isso não resolveu o problema!

Alguém pode me ajudar com relação a isso?

Agradecemos antecipadamente

    
por user155675 23.01.2013 / 12:21

2 respostas

0

Não especificamente relacionado a vpnc , mas vou oferecer o que posso pensar ...

Normalmente, as conexões VPN do cliente ficam inativas porque há um período de inatividade no túnel. A maneira mais fácil de superar isso é manter um ping -t em um dispositivo conhecido na outra extremidade do túnel.

Caso contrário, se o processo vpnc estiver inativo, pode ser porque o ponto de extremidade VPN está sobrecarregado, o ponto final está enviando pacotes que o outro endpoint acredita ser inválido e, por isso, o reduziu ou vpnc é ostensivamente quebrado. Veja se anythin é mencionado em seus arquivos de log associados.

Deve-se notar que, pelo que entendi, vpnc é uma ferramenta cliente , não um serviço / daemon. Pode ser mais apropriado usar uma ferramenta mais orientada a serviços para o seu endpoint (ou até mesmo um gateway / firewall / roteador site-to-site barato). Não tenho certeza sobre quais soluções baseadas em software podem fazer isso.

A alternativa restante é rotear / codificar seus processos para que eles verifiquem a existência do endereço do servidor de destino e / ou vpnc process e iniciem vpnc se não forem encontrados, antes de cada unidade de trabalho.

Mas, na verdade, um dispositivo de hardware deve ser usado para conexões permanentes. Você pode pegar um dispositivo básico da Linksys / Netgear / D-Link / etc que pode falar os protocolos básicos de forma barata o suficiente.

    
por 23.01.2013 / 13:29
0

Eu fiz um script que cuida disso.

Linux vpnc - Como defina um número de tunX específico em vpnc

Talvez você queira experimentá-lo com as adaptações necessárias, como:

#!/bin/bash
# Run script as # nohup ./vpn-monitor.sh /dev/null 2>&1 &

vpn_clientA(){

vpnName="clientA"
endpoint="10.10.10.10" # endpoint1 inside tunnel
endpoint2="10.20.30.40" # endpoint2 inside tunnel

count=$( ping -c 3 $endpoint | grep icmp* | wc -l )
count2=$( ping -c 3 $endpoint2 | grep icmp* | wc -l )

if [ $count -eq 0 -a $count2 -eq 0 ] # Echo reply not received. 
    then
    # Ping failed
    echo "Ping FAILED $(date)" >> /var/log/vpnc/$vpnName.log

    # Sending email notification
    echo "Ping for $endpoint FAILED! More info /var/log/vpnc/$vpnName.log " | mail -s "VPN $vpnName failed " [email protected]

    # restart connection
    # pkill vpnc
    /usr/sbin/vpnc /etc/vpnc/vpn_clientA --local-port 0 >> /var/log/vpnc/$vpnName.log &

else
    echo "Ping replied $(date)" >> /var/log/vpnc/$vpnName.log
fi
}


while : # infinite cycle

do
# call function every 30 seconds
vpn_clientA
sleep 30

done
    
por 17.05.2016 / 13:54

Tags