Skip to content

Commit

Permalink
Update digital ocean docs to use the 1-Click-App
Browse files Browse the repository at this point in the history
  • Loading branch information
jwsi committed May 13, 2020
1 parent 099cf99 commit 64a6669
Show file tree
Hide file tree
Showing 10 changed files with 43 additions and 93 deletions.
Binary file added source/_static/simple-setup/complete.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file removed source/_static/simple-setup/console-popup.png
Binary file not shown.
Binary file modified source/_static/simple-setup/inbound-rules.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added source/_static/simple-setup/marketplace-tab.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file removed source/_static/simple-setup/ppa-confirm.png
Binary file not shown.
Binary file added source/_static/simple-setup/prompt.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added source/_static/simple-setup/setup-wizard.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion source/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,10 @@ which can be downloaded for offline use.
.. toctree::
:maxdepth: 2

simple-setup
website/index
servers/index
clients/index
simple-setup
support

.. _maintained with the help of the community: https://github.com/ultrahorizon/UH-VPN-Docs
Expand Down
125 changes: 35 additions & 90 deletions source/simple-setup.rst
Original file line number Diff line number Diff line change
@@ -1,25 +1,21 @@
Simple Setup Guide
==================

This guide is a walkthrough tutorial on setting up UH VPN. It contains step by step instructions
on how to provision a private cloud server along with all the necessary steps on setting up UH VPN
client applications.
This guide is a walkthrough tutorial on setting up UH VPN on `Digital Ocean`_. It contains step by step
instructions on how to provision a private cloud server along with all the necessary steps on setting
up UH VPN client applications.

The guide uses the cloud provider `Digital Ocean`_ to create servers for UH VPN as it's simple and
ideal for beginners, but this can be substituted for any other cloud provider (AWS, Azure etc...)
or an on-premise server if you have one.
The guide makes use of the "`1 Click App`_" available on Digital Ocean to create servers for UH VPN
as this provisioning technique allows an entire UH VPN deployment to be set up in less than 5 minutes!

If you wish to explore UH VPN advanced options or modify the sample deployments consult the extensive
documentation on this site.

- `Step 1: Create a Digital Ocean Server`_
- `Step 1: Create a Digital Ocean Droplet`_
- `Step 2: Create a Server on the UH VPN Website`_
- `Step 3: Setting up the Droplet with UH VPN`_
- `Step 3: Configuring the Droplet`_
- `Step 4: Installing Client Apps`_


Step 1: Create a Digital Ocean Server
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Step 1: Create a Digital Ocean Droplet
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

First create an account or login at: `Digital Ocean`_. Then click the "Create Droplets" button as shown in
the screenshot below:
Expand All @@ -34,15 +30,21 @@ One is then presented with a droplet creation page as follows:
:width: 600
:alt: Droplet Creation Page

Press the "Marketplace" tab and search for "UH VPN". Once selected, a UH VPN image will
be chosen:

.. image:: /_static/simple-setup/marketplace-tab.png
:width: 600
:alt: Marketplace Tab

Ensure the settings are selected as shown below:

- **Distribution** : Ubuntu 18.04
- **Plan** : Standard
- **Price** : $5 per month
- **Region** : Choose location closest to you unless you have a specific requirement
- **VPC** : No VPC
- **Additional Options** : None
- **SSH Key** : Select one-time password unless you're familiar with SSH (if so upload your public key).
- **SSH Key** : Select your SSH key.
- **Number of Droplets** : 1
- **Hostname** : Any friendly name you'd like to give to your server. E.g. "UH-VPN".
- **Tags** : None
Expand Down Expand Up @@ -80,10 +82,6 @@ are defined to match the specification below:
:width: 600
:alt: Outbound Rules

.. note::
If you are connecting to your instance via SSH, then also add rules to allow SSH connections to the
Droplet.

Finally, ensure the firewall is associated to the droplet you created earlier. E.g. UH-VPN. Then
press "Create Firewall". The Droplet is now firewalled against adversaries and ready for UH VPN.

Expand Down Expand Up @@ -140,82 +138,30 @@ Press submit and the server will then be created.
Once created, press the |key_icon| icon to obtain a UH VPN API token for the server. Copy
and paste this to somewhere safe as it'll be used later.

Step 3: Setting up the Droplet with UH VPN
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

If you configured the droplet earlier using SSH keys then SSH into your droplet now, otherwise
head over to `Digital Ocean`_. Then click on the droplet you created earlier, click the "Access" Tab
and press the "Launch Console" button. A popup will display:

.. image:: /_static/simple-setup/console-popup.png
:width: 300
:alt: Console Popup

Login to the droplet using the username "root" and the password emailed to you by Digital Ocean.
If you didn't set up the droplet with SSH, you'll be asked to set a password when first logging
in.

The first step is to add Ultra Horizon's package archive to the system sources.

.. code-block:: bash
sudo add-apt-repository ppa:ultrahorizon/ppa
.. image:: /_static/simple-setup/ppa-confirm.png
:width: 500
:alt: PPA Confirm

A prompt will then display information about the repository, accept this, then download the package information
from this newly added archive:

.. code-block:: bash
sudo apt-get update
Step 3: Configuring the Droplet
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Once this is done, UH VPN Server software can now be downloaded through the apt package manager.
Login to the newly created droplet via SSH using the username "root". Once logged in, a UH VPN
setup script will appear:

.. code-block:: bash
.. image:: /_static/simple-setup/setup-wizard.png
:width: 400
:alt: Setup Wizard

sudo apt-get install uh-vpn-server
Simply paste the UH VPN API token obtained in step 2 into the prompt and press Enter:

Once installed check that the UH VPN Service is running:
.. image:: /_static/simple-setup/prompt.png
:width: 450
:alt: Prompt

.. code-block:: bash
Only one token is going to be added as we only wish to associate one server to this droplet, so
answer with "n":

sudo service uh-vpn-server status
.. image:: /_static/simple-setup/complete.png
:width: 450
:alt: Complete

The output should say **active (running)** as depicted below:

.. image:: /_static/servers/service_status.png
:width: 600
:alt: Expected status

Then to ensure UH VPN Server starts at boot, issue the following command:

.. code-block:: bash
sudo systemctl enable uh-vpn-server
Next it's time to add the UH VPN Server API token we obtained earlier. This will
enable the UH VPN Server software to set up the VPN server on our Droplet.

.. code-block:: bash
sudo nano /etc/uh-vpn-server/tokens
This will bring up an editor prompt like so:

.. image:: /_static/servers/token_store.png
:width: 600
:alt: Token store

In this example, the token (``0123456...``) has been appended to the file. Once this is done,
save the file and exit the editor (Ctrl-X in nano).

The server is now configured and it's safe to logout of the Droplet.

.. note::
For advanced configurations of the server software follow the `server documentation`_.
The droplet is now successfully configured and ready to accept UH VPN connections!

Step 4: Installing Client Apps
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Expand Down Expand Up @@ -256,14 +202,13 @@ the profile. Then you can **connect and enjoy a fast, secure and private VPN con
Instructions for client apps can be found on the `clients docs page`_.


.. _1 Click App: https://marketplace.digitalocean.com/apps/uh-vpn
.. _Digital Ocean: https://www.digitalocean.com/
.. _installation instructions: servers/installation.html
.. _website: https://uh-vpn.com
.. _create an account: https://uh-vpn.com/auth/signup
.. _Creating Groups: website/groups/creating.html
.. _server creation docs page: website/servers/creating.html
.. |key_icon| image:: /_static/icons/key.svg
:alt: Key Icon
.. _server documentation: servers/index.html
.. _device creation docs page: website/devices/creating.html
.. _clients docs page: clients/index.html
9 changes: 7 additions & 2 deletions source/website/servers/api-tokens.rst
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,11 @@ be presented with a modal as shown below:
:width: 400
:alt: Token Modal

One simply needs to copy the token (shown in pink) and follow the `adding servers`_ instructions
in order to link the server software with the UH VPN API.
One simply needs to copy the token (shown in pink) and either follow:

- `UH VPN Setup Script`_ available if using our `Digital Ocean Image`_
- `Adding servers`_ instructions in order to link the server software with the UH VPN API
if using a vanilla Ubuntu installation.

If a token has been compromised, the "Regenerate" button can be used to create a new token for the
server in question. **This will instantly revoke the old API token**
Expand All @@ -20,4 +23,6 @@ server in question. **This will instantly revoke the old API token**
:alt: Key Icon

.. _website: https://uh-vpn.com
.. _UH VPN Setup Script: ../../simple-setup.html#step-3-configuring-the-droplet
.. _Digital Ocean Image: https://marketplace.digitalocean.com/apps/uh-vpn
.. _adding servers: ../../servers/adding-servers.html

0 comments on commit 64a6669

Please sign in to comment.