Skip to content
This repository has been archived by the owner on Nov 17, 2020. It is now read-only.

Beginner’s Guide to Using beame insta ssl

Sophia Tupolev edited this page Oct 20, 2016 · 3 revisions

beame-insta-ssl makes it easy for any web developer to make use of encryption – and get secure communications!

In addition to our Readme, this is a step by step guide with screenshots that will take you through getting started! Please email h@beame.io if you have any questions.

beame-insta-ssl will get you your very own fully-qualified domain name under the beame subdomain that looks something like this: (https://ypxf72akb6onjvrq.ohkv8odznwh5jpwm.v1.p.beameio.net/insta-ssl) and your very own free SSL certificate (GlobalSign root CA). This will allow you to tunnel securely over HTTP. You can choose to terminate or not to terminate the Transport-Layer Security (TLS), which will be explained below.

Step 1: Sign up on our SSL-secured website and check your email.

Sign up form beame-insta-ssl

The SSL certificate on the signup form looks like this:

SSL Cert for beame-insta-ssl sign up

Step 2: You’ll get an email from us (from sophia@beame.io) that looks like this:

http://www.beame.wiki/wp-content/uploads/2016/10/58e50e7d-6158-42d3-8eed-5904cd94ea95.png

Step 3: The first thing to do is run npm install -g beame-insta-ssl

To do that successfully, please make sure you have the following installed:

Nodejs, npm (node package manager) (npm is installed alongside with node)

To see if you have it on Mac, run in Terminal: node –v To see if you have it on Windows, run in Powershell: node -v

If the tool is missing, install it by:

Node.js on Mac, in Terminal: brew install node Node.js on Windows: use the installer from https://nodejs.org/en/download/current/

Step 4: Then, you can just copy and paste the command in the email to run it.

Here’s a screenshot of what will come up when the system generates your personal fully-qualified domain name and SSL certificate

Certs created! beame-insta-ssl

5. How to decide if you should use a terminating or a non-terminating tunnel – we offer both.

First of all, it’s the same command for both tunnels.

If your destination (called DESTINATION_PROTO) is HTTP, the tunnel will terminate the encryption to go there and transform the request to HTTP. This way, you can run an existing HTTP server unmodified. If your destination is HTTPS, the tunnel will remain encrypted all the way through.

Terminating tunnel

Terminating tunnels are the standard (easiest) configuration. It means that Beame will terminate the TLS for you. Using a terminating tunnel, there is no need to install Beame certs into your existing server. beame-insta-ssl will obtain the certificate and tunnel traffic through HTTP to your own server.

Installing a terminating tunnel:

Use this command with the port of your choosing. In our example, we’re using 8008.

beame-insta-ssl tunnel 8008 http

**Non-terminating tunnel ** Non-terminating tunnels are more secure. That’s because we don’t terminate your encryption for you. Meaning, the encryption goes all the way through from the tunnel to the HTTPS website it's going to. This requires that you use beame-insta-ssl in non-terminating mode (simply by designating your DESTINATION_PROTO as HTTPS) Then, install the certificates obtained for you by beame-insta-ssl in your existing server.

In this case, the command will resemble:

beame-insta-ssl tunnel 192.168.0.200:8443 https –hostname web200.localdomain

beame-wiki-illustration