Outline VPN – Making it safer to break the news

Ease of use and control

You’ve probably heard a lot (or have been marketed frequently) about VPN’s (Virtual Private Networks) over the past couple years. With options from PIA to NordVPN, how do you pick one, and why does it even matter?

VPN’s provide a level of encryption and privacy that help you stay safe when doing everyday things like paying bills or requesting a quote from a local contractor’s website. Simply put, a VPN encrypts and hides your true IP address and location to anyone who might be able to intercept the data, including your own ISP.

Outline VPN is a recent entry to the space, built by a Google sibling company Jigsaw and is different in that it’s all open source. Jigsaw also utilizes a third party security firm Radically Open Security to audit the project, ensuring your data is truly private. You can check out the project’s Git-Hub repositories here.

The best part about Outline is you control all ends of the deployment, from picking who and where the server is hosted with, to controlling all the access keys. On the original launch Outline had partnered with Digital Ocean for a one click deployment that would create and provision the droplet with all the software for you. Since then they have added the detailed instructions on how to deploy it on any cloud or physical server you might have in the Outline Manager desktop client application. Starting at $5/month with 1 TB of data transfer, there’s no reason not to protect yourself!

Steps to Deploying Outline VPN for yourself or your organization on DigitalOcean

  1. Sign up for DigitalOcean
  2. Visit getoutline.org and download Outline Manager
  3. Launch Outline Manager > Select ‘Get Started’ in the DigitalOcean box
  4. Sign in to your DigitalOcean account and authorize the application
  5. Select Server location (we recommend choosing the server closest to you for regular usage)
  6. Click ‘Set Up Server’
  7. Visit getoutline.org and download Outline Beta for the device you plan to use the keys on
  8. In Outline Manager click ‘Get Connected’
  9. Click ‘Connect This Device’ (choose ‘Connect A Different Device’ when you’re sharing keys or connecting your phones/tablets)
  10. Copy the key value
  11. Launch Outline Beta > Click the ‘+’ button to add a server (the key should automatically paste itself, if not, simply paste it)
  12. Click ‘Add Server’

And you’re done! Simply click ‘Connect’ from the Outline Beta application anytime you need to secure your connection. Keep in mind, this is not beneficial for things like gaming due to increased latency and reduced upstream and downstream speeds.

This slideshow requires JavaScript.

Steps to Deploying Outline VPN for yourself or your organization on Google Cloud

These instructions are intended for users with more advanced knowledge. These instructions assume you already have a Compute Engine or App Engine

  1. Sign in to your Google Cloud account
  2. Configure your firewall
    • Add a new firewall rule to your Compute Engine project
    • Type ‘outline’ in the ‘Name’ field
    • Type ‘outline’ in the ‘Target tags’ field
    • Type ‘0.0.0.0/0’ in the ‘Source IP ranges’ field
    • Select ‘Allow all’ under ‘Protocols and ports’
    • Click ‘Create’
  3. Assign firewall rule
    • Navigate to the VM instances screen
    • Click on the instance where you want to host Outline
    • Click ‘EDIT’ at the top of the VM Instance details screen
    • Type ‘outline’ in the ‘Network tags’ field
    • Click ‘SAVE’
  4. Log into your server via SSH and run
    bash -c "$(wget -qO- https://raw.githubusercontent.com/Jigsaw-Code/outline-server/master/src/server_manager/install_scripts/install_server.sh)"
  5. If you do not have Docker installed already you will be prompted with “> Verifying that Docker is installed ………. NOT INSTALLED > Would you like to install Docker? This will run ‘curl -sS https://get.docker.com/ | sh’. [Y/n]” select ‘Y’
  6. Visit getoutline.org and download Outline Manager
  7. Launch Outline Manager > Select ‘Get Started’ in the Google Cloud box
  8. In the 3rd step, paste the contents of the api url that is presented to you after Docker finishes setup
    {"apiUrl":"https://xxx.xxx.xxx.xxx:xxxxx/xxxxxxxxxxxxxxxxxxxxxxxxx","certSha256":"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"}

    If you plan to have a single access key to access your server make sure ports 64951 and are open for TCP and UDP on your router or cloud provider. If you plan on adding additional access keys, you’ll have to open ports 1024 through 65535 on your router or cloud provider since the Outline Server may allocate any of those ports to new access keys.

  9. Visit getoutline.org and download Outline Beta for the device you plan to use the keys on
  10. In Outline Manager click ‘Get Connected’
  11. Click ‘Connect This Device’ (choose ‘Connect A Different Device’ when you’re sharing keys or connecting your phones/tablets)
  12. Copy the key value
  13. Launch Outline Beta > Click the ‘+’ button to add a server (the key should automatically paste itself, if not, simply paste it)
  14. Click ‘Add Server’

And you’re done! Simply click ‘Connect’ from the Outline Beta application anytime you need to secure your connection. Keep in mind, this is not beneficial for things like gaming due to increased latency and reduced upstream and downstream speeds.

*Note I did notice that the default key was giving me an error, in addition to showing the incorrect IP in the Outline Beta client application. I added another key and it worked fine. I have reported the issue and will update if I receive a response.

YouTube videos for how to setup Outline VPN

Steps to uninstall Outline VPN from Google Cloud

These instructions are for CentOS Linux.

  1. SSH into your VM
  2. Use Command
    sudo yum remove docker docker-common docker-selinux docker-engine
  3. Finally, remove the /var/lib/docker and /etc/docker directories from your VM storage!

That’s it, you’re done!