Bloqueia a internet se a conexão vpn cair

6

Tentando configurar o gufw para que se minha conexão vpn cair, meu computador não poderá mais acessar a internet.

Meu plano era bloquear toda a saída, mas permitir apenas uma conexão com o IP do meu servidor vpn, mas acho que quando o firewall é implementado, não consigo carregar sites, mesmo se a VPN estiver conectada.

Acima estão as configurações que estou tentando atualmente (IP parcialmente oculto é meu servidor vpn), o que estou fazendo errado?

    
por jl354 13.05.2016 / 20:38

2 respostas

1

Tente algo assim

Você deseja alterar as regras ufw com base no interface status.

Um bom lugar para esse tipo de ação está em /etc/network/if-down.d/ e /etc/network/if-up.d/

Você pode nesta pasta colocar algum script e fazer uma ação. Por exemplo, coloque esse script em /etc/network/if-down.d/ para alterar as regras ufw sempre que tun0 for desativado.

Faça script chamado script com permissões de execução 755

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

Script é

# Check interface
[ "$IFACE" != "tun0" ] || exit 0
# Do something
sudo ufw default deny outgoing
sudo ufw allow out to xxx.xxx.xxx.xxx

Altere a permissão do script

chmod 755 /etc/network/if-down.d/script

Em script xxx.xxx.xxx.xxx representa o ip do seu vpn server

Quando o vpn se reconectar, você precisará alterar novamente as regras ufw . Faça mais um script, também conhecido como script2

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

Script é algo parecido com isto

# Check interface
[ "$IFACE" != "tun0" ] || exit 0
# Do something
sudo ufw default allow outgoing
#also you can add more ufw rules ...
sudo ufw ....

Altere a permissão do script

chmod 755 /etc/network/if-up.d/script2

O primeiro script irá, se tun0 descer, fazer com que a polícia de saída padrão negue, mas permitirá o acesso a vpn server. O segundo script mudará a polícia de saída padrão para allow

    
por 2707974 14.05.2016 / 12:08
0

Você pode fazer isso apenas usando a GUI do ufw:

  • Configure o ufw para negar globalmente o tráfego de saída (assim como você fez)
  • Adicione as duas regras a seguir, já que eth0 é sua interface pública, tun0 é a interface criada pela VPN e xxx.xxx.68.138 é o seu IP da VPN:
    1. Permitir a conexão ao IP da VPN por meio da interface pública: adicione uma regra com Policy=Allow , Direction=Out , Interface=eth0 e To=xxx.xxx.68.138
    2. Permitir tudo por meio da interface de VPN: adicione uma regra com Policy=Allow , Direction=Out , Interface=tun0 e To=0.0.0.0/0

Isso é tudo!

Você quase fez isso, esqueceu de permitir o tráfego de saída através da VPN, porque a negação global do tráfego de saída se aplica a todas as interfaces, incluindo aquela criada pela VPN.

A propósito, eu sugiro que você negue globalmente o tráfego de entrada, isso evitará que uma pessoa malvada ou um bot rodando em sua rede invadam seu computador explorando um bug ou uma configuração incorreta de um serviço de rede em execução (por padrão, O Ubuntu executa alguns serviços de rede em todas as interfaces, não apenas no local.

    
por Stanimal 25.02.2018 / 16:53