Skip to main content

Local VM Ubuntu with Proton VPN gateway

IP forward

sudo sysctl -w net.ipv4.ip_forward=1
sudo nano /etc/sysctl.conf
net.ipv4.ip_forward=1

Iptables

sudo iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE
sudo apt install iptables-persistent
sudo service netfilter-persistent save
sudo ufw allow in on tun0 from any to any
sudo ufw allow out on tun0 from any to any

Ubuntu server

By default all ports are closed. Open it

sudo iptables -P INPUT ACCEPT
sudo iptables -P OUTPUT ACCEPT
sudo iptables -P FORWARD ACCEPT
sudo iptables-save > /etc/iptables/rules.v4
sudo ufw disable
sudo ufw default allow incoming
sudo ufw default allow outgoing
sudo ufw enable

OpenVPN

sudo apt install openvpn 
sudo apt install openresolv
sudo wget "https://raw.githubusercontent.com/ProtonVPN/scripts/master/update-resolv-conf.sh" -O "/etc/openvpn/update-resolv-conf"
sudo chmod +x "/etc/openvpn/update-resolv-conf"

OpenVPN config

sudo mv /path/to/your/file.ovpn /etc/openvpn/client.conf
sudo systemctl enable openvpn-client@client.service
sudo systemctl start openvpn-client@client.service
sudo systemctl status openvpn-client@client.service

Then, modify the .ovpn file (/etc/openvpn/client.conf) to include this line:

sudo nano /etc/openvpn/credentials.txt
auth-user-pass /etc/openvpn/credentials.txt

Test

 curl ip.me