Skip to content

ahmadshabeeb/VPN-Project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

VPN - project

Creating a secured communication channel between client and server. The client and server exchange certificates signed by a common CA, validate each others and agree on session parameters which are encrypted using public key encryption through the handshake.

Once the connection is set up, a connection can be made to the vpn-client and the vpn-server so data can be transformed securely.

vpn netwrok

Run the program

Run the forwardServer:

$ java ForwardServer --handshakeport=2206 --usercert=server.pem--cacert=ca.pem --key=server-private.der

Run the forwardClient:

$ java ForwardClient --handshakehost=<host>  --handshakeport=2206 --targethost=<host> --targetport=6789 --usercert=client.pem --cacert=ca.pem --key=client-private.der

Test the Program

Netcat can be used to test the program.

On Windows

  1. Download netcat

  2. Open command prompt and cd to netcat path, then

  3. Create a test server

$ nc.exe -vv -l -p XXXX
  1. Create a test client
$ nc.exe -vv <host> XXXX

On Mac and Linux

  1. Create a test server
$ nc -l XXXX
  1. Create a test client
$ nc <host> XXXX

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages