Push-button DIY tunnel service. Run on your Raspberry Pi or VPS to create your own secure tunnel to access your devices from anywhere or simply to expose your localhost development to the outside world.
Go to file
tigerbot 68e5116ba0 v0.9.1 2017-09-11 16:02:20 -06:00
bin went back to not allowing half-open connections 2017-09-08 11:24:30 -06:00
snippets fs cleanup 2016-09-30 18:03:41 -04:00
.gitignore fs cleanup 2016-09-30 18:03:41 -04:00
.jshintrc add .jshintrc 2017-04-25 14:36:47 -06:00
LICENSE Initial commit 2016-09-15 17:10:22 -06:00
README.md Update README.md 2017-05-25 14:50:51 -06:00
handlers.js fixed problem with not closing websocket 2017-05-26 17:26:44 -06:00
package.json v0.9.1 2017-09-11 16:02:20 -06:00
wstunneld.js improved how throttling based on the websocket works 2017-09-11 15:45:17 -06:00

README.md

About Daplie: We're taking back the Internet!

Down with Google, Apple, and Facebook!

We're re-decentralizing the web and making it read-write again - one home cloud system at a time.

Tired of serving the Empire? Come join the Rebel Alliance:

jobs@daplie.com | Invest in Daplie on Wefunder | Pre-order Cloud, The World's First Home Server for Everyone

stunneld.js

A server that works in combination with stunnel.js to allow you to serve http and https from any computer, anywhere through a secure tunnel.

CLI

Installs as stunnel.js with the alias jstunnel (for those that regularly use stunnel but still like commandline completion).

Install

npm install -g stunneld

Advanced Usage

How to use stunnel.js with your own instance of stunneld.js:

stunneld.js --servernames tunnel.example.com --protocols wss --secret abc123

Options

--secret          the same secret used by stunnel client (used for authentication)
--serve           comma separated list of <proto>:<servername>:<port> to which
                  incoming http and https should be forwarded

Privileged Ports without sudo

# Linux
sudo setcap 'cap_net_bind_service=+ep' $(which node)

Alterntive Methods

NOT YET IMPLEMENTED

We created this for anyone to use on their own server or VPS, but those generally cost $5 - $20 / month and so it's probably cheaper to purchase data transfer (which we supply, obviously), which is only $1/month for most people.

Just use the client (stunnel.js) with Daplie's tunneling service (the default) and save yourself the monthly fee by only paying for the data you need.

* Daplie Tunnel (zero setup)
* Heroku (zero cost)
* Chunk Host (best deal per TB/month)

Security

The bottom line: As with everything in life, there is no such thing as anonymity or absolute security. Only use stunneld services that you trust. :D

Even though the traffic is encrypted end-to-end, you can't just trust any stunneld service willy-nilly.

A man-in-the-middle attack is possible using Let's Encrypt since an evil stunneld service would be able to complete the http-01 and tls-sni-01 challenges without a problem (since that's where your DNS is pointed when you use the service).

Also, the traffic could still be copied and stored for decryption is some era when quantum computers exist (probably never).