Skip to content
/ diy-vpn Public

A personal VPN you can set up and run yourself.

Notifications You must be signed in to change notification settings

zbo14/diy-vpn

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 

Repository files navigation

diy-vpn

Running your own VPN involves a fair amount of work, some of which can be automated. This project automates some of the work with bash scripts and provides pre-made config files, hopefully making the process a little easier.

There are two branches, one for bootstrapping your own OpenVPN infrastructure and another for running a WireGuard VPN.

The POC is a personal-use VPN. A server runs somewhere with a public IP address, probably on some cloud-hosting platform. The server can add/remove clients (e.g. your laptop or your phone) that are/aren't allowed to authenticate. Each client is assigned a tunnel IP address and is authenticated with a public key/certificate.

Suppose you're browsing the web on your laptop and you want to use the VPN. Your laptop would automagically encrypt its traffic such that the server is the only party that could feasibly decrypt it, and then send the encrypted packets to the server. The server would decrypt the packets and forward them to whatever site you're visiting (e.g. "foobar.com"). The server receives packets back from "foobar.com", encrypts them such that your laptop is the only party that could feasibly decrypt them, and sends them to your laptop.

About

A personal VPN you can set up and run yourself.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published