isto é o que eu tenho agora, em algum momento eu vou fazer um script para tornar tudo isso automático na inicialização, mas enquanto isso espero que funcione para você.
Suponho que você esteja usando o OpenVPN, se não for, terá que obter a ideia e traduzi-la para o seu programa de VPN.
Primeiro você precisa ir para / etc / openvpn e criar um arquivo chamado VPNconfig com duas linhas (com seus valores reais)
VPN_User
VPN_Password
Agora, para todos os seus arquivos .ovpn em / etc / openvpn, você deve substituir
auth-user-pass
com
auth-user-pass VPNconfig.txt VPNconfig.txt
Isso fará com que você não precise escrever usuário e senha cada vez que fizer login (também é altamente inseguro, portanto, cuidado com a senha que você usa para sua VPN, certifique-se de que não é sua senha para todo o resto)
Agora vou criar um alias em /root/.bashrc
alias vpn='cd /etc/openvpn/ && openvpn /etc/openvpn/Your_VPN_Ovpn_File.ovpn'
Então, quando você inicia, basta abrir um terminal e executar
sudo su
vpn
Para garantir que seu IP não seja revelado quando a VPN for desconectada, você deve usar um script iptables, você sabe que ele segue as etapas especificadas aqui , especialmente verifique a resposta de windom na parte inferior do primeira página. Se você usar outra VPN que não a PIA, terá que modificar o script para buscar seus intervalos de IP.
Esse script gera os dois arquivos especificados no primeiro post iptables-vpn e iptables-novpn.
Você também gostaria de evitar vazamentos de DNS, para o acréscimo no início de cada .ovpn
up /etc/openvpn/update-resolv-conf
down /etc/openvpn/update-resolv-conf
--script-security 2
e verifique se funcionou aqui
Então, como gertvdijk disse que você precisa da conexão para acessar a VPN, então a ordem seria, conectar-se a VPN, então executar ./iptables-vpn e agora você estará seguro de desconexões VPN, o problema é que se desconexões você terá que configurá-lo manualmente executando ./iptables-novpn, redefinir a conexão VPN e, em seguida, ligue novamente o iptables-vpn.
Existe uma maneira mais rápida com um script python usando netifaces, mas ainda estou usando isso ... Espero que tenha ajudado!