Como rotear todo o tráfego através do OpenVPN usando o Network Manager?

1

Posso conectar-me com êxito ao meu servidor OpenVPN a partir da linha de comando usando openvpn --config client.conf . O arquivo client.conf contém a diretiva redirec-gateway para rotear todo o tráfego através do servidor VPN. Tudo isso funciona bem.

Agora, como posso obter o mesmo resultado com o Network Manager e o nm-applet?

Eu tentei simplesmente configurar a conexão. Inicializa corretamente, mas não direciona o tráfego pelo servidor. É como se eu tivesse marcado "Use esta conexão apenas para recursos em sua rede" quando não o fiz.

Parece que quando me conecto pela linha de comando, a rota da VPN é adicionada na parte superior

# ip route show
default via 192.168.10.5 dev tun0 
default via 192.168.1.1 dev eth0  proto static  metric 1024 

mas é adicionado como segundo ao conectar a partir do applet

# ip route show
default via 192.168.1.1 dev eth0 
default via 192.168.10.5 dev tun0  proto static  metric 1024 

Isso está no Ubuntu 15.04 Vivid e no OpenVPN 2.3.2.

    
por Damn Terminal 25.08.2015 / 00:28

2 respostas

2

Não sei como definir essa opção em NM , mas você pode adicionar o script em /etc/ppp/if-up.d/ para tornar a rota padrão para a interface ppp0 sempre que for para cima. Faça script chamado script com execute permissions 755

sudo nano /etc/ppp/if-up.d/script

# Check for specific interface if desired
[ "$IFACE" != "ppp0" ] || exit 0
# Do something
sudo route add default dev ppp0


chmod 755 /etc/ppp/if-up.d/script

Tente

Editar 1

Se você tiver a interface tun0 , coloque o script em /etc/network/if-up.d/ e mude o nome da interface

sudo nano /etc/network/if-up.d/script

# Check for specific interface if desired
[ "$IFACE" != "tun0" ] || exit 0
# Do something
sudo route add default dev tun0


chmod 755 /etc/network/if-up.d/script
    
por 2707974 25.08.2015 / 09:04
0

Eu tive o mesmo problema no Ubuntu 15.04 e esta solução funciona para mim:

  • Remova toda a interface de rede (exceto lo) de / etc / network / interfaces para que ela seja gerenciada pelo gerenciador de rede ou edite o /etc/NetworkManager/NetworkManager.conf, altere a linha managed = false para managed = true e reinicie o gerenciador de rede ( sudo service network-manager restart )
  • Obtenha o nome da iface usada como o gateway padrão. > route Destination Gateway Genmask Flags Metric Ref Use Iface default fritz.box 0.0.0.0 UG 0 0 0 enp60s0

  • Descubra o uid dessa interface e o uid da sua conexão vpn > nmcli c NAME UID TYPE DEVICE ..... Wired conne....3d7cfc99-dd28-45c1-87d8-5ec88b0b687c 802-3-ethernet enp60s0 VPN France 2c5131c6-3d8e-4768-a67e-cbcc4f35db1f vpn -- .....

  • Defina a métrica da interface padrão atual como, por exemplo, 2 e para o dispositivo vpn para 0 sudo nmcli connection modify uuid 3d7cfc99-dd28-45c1-87d8-5ec88b0b687c ipv4.route-metric 2 sudo nmcli connection modify uuid 2c5131c6-3d8e-4768-a67e-cbcc4f35db1f ipv4.route-metric 0

  • Inicie a conexão vpn através do gerenciador de rede

  • O Route agora mostrará algo assim ( VPN-Gateway é um espaço reservado para o endereço IP do gateway da VPN). Isso significa que todo o tráfego será roteado através do servidor VPN. %código%

    
por el nino 22.01.2016 / 20:58