Estou usando a conexão aberta para criar uma conexão VPN dividida. Funciona muito bem ... a primeira vez. Se o processo openconnect for interrompido, as tentativas subsequentes parecerão bem-sucedidas, mas não poderão acessar nada por trás da VPN. A reinicialização temporária permite que o openconnect funcione novamente, mas eu gostaria de poder ativar e desativar a VPN sem ter que reinicializar todas as vezes.
Acho que o problema está relacionado ao fechamento / limpeza impróprios da conexão VPN, mas isso está fora do meu alcance e não tenho ideia do que estou fazendo. O que está acontecendo e como corrigi-lo ou configurar um sistema que me permita iniciar e interromper minha conexão VPN várias vezes sem reinicializar. route produz a mesma saída quando a VPN está funcionando e quando não está.
Aqui está o script que eu uso para conectar:
sudo openvpn --mktun --dev tun1 && \
sudo ifconfig tun1 up && \
sudo /usr/sbin/openconnect -s $VPNSCRIPT $VPNURL --user=$VPNUSER --authgroup=$VPNGRP --interface=tun1
sudo ifconfig tun1 down
openvpn --rmtun --dev tun1
em que $VPNSCRIPT
é um wrapper em torno do script vpnc padrão para configurar o ambiente para a VPN dividida:
#!/bin/sh # Add one IP to the list of split tunnel add_ip () { export CISCO_SPLIT_INC_${CISCO_SPLIT_INC}_ADDR=$1 export CISCO_SPLIT_INC_${CISCO_SPLIT_INC}_MASK=255.255.255.255 export CISCO_SPLIT_INC_${CISCO_SPLIT_INC}_MASKLEN=32 export CISCO_SPLIT_INC=$(($CISCO_SPLIT_INC + 1)) } # Initialize empty split tunnel list export CISCO_SPLIT_INC=0 # Delete DNS info provided by VPN server to use internet DNS # Comment following line to use DNS beyond VPN tunnel unset INTERNAL_IP4_DNS # List of IPs beyond VPN tunnel add_ip --REDACTED-- # Execute default script . /usr/share/vpnc-scripts/vpnc-script # End of script
Isso tudo está acontecendo em um Ubuntu 14.04 VPS
resultados de route -n
Nenhuma tentativa de conexão:
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 0.0.0.0 0.0.0.0 U 0 0 0 venet0
Conectado e trabalhando
Destination Gateway Genmask Flags Metric Ref Use Iface
<HostA> 0.0.0.0 255.255.255.255 UH 0 0 0 tun1
<VPN> 0.0.0.0 255.255.255.255 UH 0 0 0 venet0
<HostB> 0.0.0.0 255.255.255.255 UH 0 0 0 tun1
<VPN DHCP> 0.0.0.0 255.255.254.0 U 0 0 0 tun1
0.0.0.0 0.0.0.0 0.0.0.0 U 0 0 0 venet0
Supostamente conectado, mas não funcionando
Destination Gateway Genmask Flags Metric Ref Use Iface
<HostA> 0.0.0.0 255.255.255.255 UH 0 0 0 tun1
<VPN> 0.0.0.0 255.255.255.255 UH 0 0 0 venet0
<HostB> 0.0.0.0 255.255.255.255 UH 0 0 0 tun1
<VPN DHCP> 0.0.0.0 255.255.254.0 U 0 0 0 tun1
0.0.0.0 0.0.0.0 0.0.0.0 U 0 0 0 venet0
em que Host*
é uma entrada na configuração da VPN dividida.
Tags vpn openvpn openconnect