This is an implementation of the VPN Lab designed by the SEEDLabs. This VPN is implemented using TUN/TAP and it supports tunnel encryption (tls/ssl), server and client authentication (openssl), and multiple client connections (socket). The full lab instructions can be found here.
- make
- openssl
- TUN/TAP
- Linux VM (Tested on SEEDLabs Ubuntu16.4)
> make
To run the server:
> sudo ./vpnserver [server_cert] [server_key]
To run the client:
> sudo ./vpnclient [hostname] [port]
Note: You also need to configure the TUN interfaces on both sides and set up routings. See the lab description for instructions.