- Start an AWS EC2 Instance from the Ubuntu 16.04 Amazon image. t3a.micro will do. Open ports 22 and 2443. Assign an elastic IP so it can't change.
- Download the private key for the EC2 instance whilst creating it
- SSH into the server
- Update to the latest
sudo apt-get update
thensudo apt-get upgrade -y
- Install PiVPN
curl -L https://install.pivpn.io | bash
. Make sure to selectTCP
and notUDP
when given the option. Set the port as1194
. The rest can be left as defaults. If the screen does a strange flashy thing try ssh from Cygwin instead. - Install obfsproxy
sudo apt-get install obfsproxy
- Put the attached systemd file at
/lib/systemd/system/obfsproxy.service
- Start the service
sudo systemctl enable obfsproxy
thensudo systemctl start obfsproxy
- Add users with
pivpn add
. Then follow the steps it gives you. - Use
scp
to download the.ovpn
files and put them on relevant devices. You'll need to modify1443
to2443
as the port number in these client config files. - Load the file into the OpenVPN App on a phone. Change the proxy setting to use obfs3.
- Should be able to connect!
To connect from a laptop you'll need to run an obfsproxy client. The obfsproxy docker container. You'll also need to add the lines to the client config file to point it via obfsproxy:
route <SERVER_IP> 255.255.255.255 net_gateway
connect-retry-max 1
socks-proxy 192.168.99.100 4911
and change the port to 2443
. And change the socks-proxy
destination as appropriate. 192.168.99.100
is the ip address of the docker machine on Windows with the container listening on port 4911.