dosxvpn

package module
v0.0.0-...-0d2d3fe Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 7, 2017 License: Unlicense Imports: 29 Imported by: 0

README

One click personal VPN server on DigitalOcean with automated OSX setup and DNS adblocking. The deployed VPN server includes automated updates of both the OS and software, so you don't need to worry about managing a server.

Features

  • Personal IPSec VPN (strongSwan) deployed on DigitalOcean.
  • Adblocking DNS (Pi-hole) setup by default.
  • Web based deployment with automated OSX VPN setup.
  • No additional software required - uses native OSX VPN.
  • Automated OS and software updates.
  • Downloadable mobileconfig file for sharing access to this VPN with other computers and devices.

Usage

  1. Download the latest pre-built binary from the GitHub Releases page. This is a packaged OSX app.
  2. Open the app and run through the web based installation wizard to setup the VPN.
  3. Visit http://pi.hole/admin/ (password=dosxvpn) in your browser to modify DNS adblocking settings.

How it works

A web server is started on application launch and directs you to your web browser. It uses client OAuth authentication to request access to your DigitalOcean account (this permission is revoked after deployment). Once authenticated, a 512MB droplet is deployed running CoreOS that is configured to auto update on new releases. The OS is configured to launch a container (dosxvpn/strongswan) on boot running strongSwan.

FAQ

  1. Should I use dosxvpn? That's up to you. Use at your own risk.
  2. Are you going to support other VPS providers? Possibly.
  3. Will this make me completely anonymous? No, absolutely not. All of your traffic is going through a VPS which could be traced back to your account. You can also be tracked still with browser fingerprinting, etc. Your IP address may still leak due to WebRTC, Flash, etc.
  4. How much does this cost? This spins up a 512MB DigitalOcean droplet that costs $5 a month.
  5. How do I uninstall this thing? Go to System Preferences->Network, click on dosxvpn-* and click the '-' button in the bottom left to delete the VPN. Don't forget to also remove the droplet that is deployed in your DigitalOcean account.

Powered by

Building yourself

  1. Fetch the project with go get:
go get github.com/dan-v/dosxvpn
cd $GOPATH/src/github.com/dan-v/dosxvpn
  1. Run make to build (will need to install platypus cli). CLI and OSX app can then be found under build/osx/x86-64.
make

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetVPNDetails

func GetVPNDetails(c *Droplet, region string) (string, error)

func Handler

func Handler(oauthClientID, host string) http.Handler

func RemoveAllDroplets

func RemoveAllDroplets(token string) ([]string, error)

func SetupVPN

func SetupVPN(vpnDetails string) error

func WaitForSSH

func WaitForSSH(c *Droplet) error

WaitForSSH waits until port 22 on host is opened.

Types

type Droplet

type Droplet struct {
	DropletID   int
	IPv4Address string
	// contains filtered or unexported fields
}

func Deploy

func Deploy(accessToken string, opts ...Option) (*Droplet, error)

type Option

type Option func(*options)

func DropletName

func DropletName(name string) Option

func DropletRegion

func DropletRegion(region string) Option

Directories

Path Synopsis
cmd

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL