add commercial interface
This commit is contained in:
parent
ab35fdc40e
commit
46599c864c
|
@ -25,7 +25,7 @@ module.exports.authenticate = function (opts) {
|
|||
auth = jwtoken;
|
||||
if ('object' === typeof auth && /^.+@.+\..+$/.test(auth.subject)) {
|
||||
console.log('parsed');
|
||||
var id = crypto.randomBytes(16).toString('hex');
|
||||
var id = crypto.randomBytes(16).toString('base64').replace(/\+/,'-').replace(/\//g,'_').replace(/=/g,'');
|
||||
console.log("[DEBUG] gonna send email");
|
||||
return requestAsync({
|
||||
url: 'https://api.mailgun.net/v3/telebit.cloud/messages'
|
||||
|
@ -92,8 +92,11 @@ module.exports.authenticate = function (opts) {
|
|||
|
||||
return state.defaults.authenticate(opts.auth);
|
||||
};
|
||||
//var loaded = false;
|
||||
var path = require('path');
|
||||
var express = require('express');
|
||||
var app = express();
|
||||
app.use('/', express.static(path.join(__dirname, 'extensions/admin')));
|
||||
app.use('/login', function (req, res) {
|
||||
var tokenData;
|
||||
var magic = req.query.magic;
|
||||
|
@ -108,6 +111,7 @@ app.use('/login', function (req, res) {
|
|||
}
|
||||
});
|
||||
module.exports.webadmin = function (state, req, res) {
|
||||
//if (!loaded) { loaded = true; app.use('/', state.defaults.webadmin); }
|
||||
console.log('[DEBUG] extensions webadmin');
|
||||
app(req, res);
|
||||
};
|
||||
|
|
|
@ -0,0 +1,89 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>Telebit™</title>
|
||||
<meta charset="UTF-8">
|
||||
<style>
|
||||
/* http://www.karlgroves.com/2013/12/17/quick-tip-text-characters-as-visual-separators/ */
|
||||
pre {
|
||||
margin-left: 2em;
|
||||
background-color: #EFEFFF;
|
||||
padding: 1em;
|
||||
}
|
||||
footer li{
|
||||
list-style-type: none;
|
||||
display: inline;
|
||||
margin-right: .3 em;
|
||||
}
|
||||
footer li:not(:last-of-type):after{
|
||||
content: ' | ';
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<script>document.body.hidden = true;</script>
|
||||
|
||||
<center>
|
||||
<h1>Telebit</h1>
|
||||
<p>Access anything, anywhere, anytime.</p>
|
||||
</center>
|
||||
|
||||
<div style="width: 500px; margin: auto;">
|
||||
|
||||
<h2>1. Install Telebit</h2>
|
||||
<p>We have a simple command line installer for Mac and Linux:</p>
|
||||
<pre><code>curl -fsSL https://get.telebit.cloud/ | bash</code></pre>
|
||||
<p>Windows requires <a href="https://git.coolaj86.com/coolaj86/telebit.js" target="_blank">manual installation</a>, but it's not too hard.</p>
|
||||
|
||||
<h2>2. Claim your device via Email</h2>
|
||||
<p>You'll get an email that looks like this:</p>
|
||||
<pre><code>You've installed Telebit on 'Jon's Macbook Pro'.
|
||||
|
||||
Authenticate your account and claim your device:
|
||||
|
||||
https://www.telebit.cloud/login/?magic=xxxxxxxxxxxxxx
|
||||
</code></pre>
|
||||
|
||||
<h2>3. Enjoy Anytime, Anywhere Access</h2>
|
||||
<p>With a free account you'll get a random name and port number, such as "lucky-duck-42" and "22222".</p>
|
||||
<pre><code>HTTPS
|
||||
|
||||
https://lucky-duck-42.telebit.cloud
|
||||
|
||||
SSH
|
||||
|
||||
ssh ssh.telebit.cloud -p 22222
|
||||
|
||||
TCP
|
||||
|
||||
netcat tcp.telebit.cloud 22222</code></pre>
|
||||
|
||||
<pre><code>SSH over HTTPS (not blocked by firewalls)
|
||||
|
||||
# Add the following to ~/.ssh/config:
|
||||
Host lucky-duck-42.telebit.cloud
|
||||
ProxyCommand openssl s_client -quiet -connect %h:443
|
||||
|
||||
# Run ssh with (your domain, no port):
|
||||
ssh lucky-duck-42.telebit.cloud</code></pre>
|
||||
|
||||
<center>
|
||||
<p><footer>
|
||||
<h3>
|
||||
<li><a href="https://git.coolaj86.com/coolaj86/telebit.js" target="_blank">Read the Telebit docs</a></li>
|
||||
<li><a href="https://git.coolaj86.com/coolaj86/telebitd.js" target="_blank">Host your own Telebit Relay</a></li>
|
||||
</h3>
|
||||
|
||||
<li>©2018 AJ ONeal</li>
|
||||
<li><a href="https://git.coolaj86.com/coolaj86/telebit.js" target="_blank">git</a></li>
|
||||
<li><a href="/legal/" target="_blank">License</a></li>
|
||||
<li><a href="/legal/" target="_blank">Terms</a></li>
|
||||
<li><a href="/legal/" target="_blank">Privacy</a></li>
|
||||
</footer></p>
|
||||
</center>
|
||||
|
||||
</div>
|
||||
|
||||
<script src="js/app.js"></script>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,6 @@
|
|||
(function () {
|
||||
'use strict';
|
||||
|
||||
document.body.hidden = false;
|
||||
|
||||
}());
|
|
@ -0,0 +1,28 @@
|
|||
<head>
|
||||
<style>
|
||||
body {
|
||||
margin: 1em;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<h1>Terms of Service</h1>
|
||||
<p>To be used for good, not evil.</p>
|
||||
|
||||
<h1>Privacy</h1>
|
||||
<p>We'll keep your info to ourselves.</p>
|
||||
|
||||
<h1>License</h1>
|
||||
<p>There are Commercial and Open Source versions of Telebit<br>(kinda like how Google has Chrome and Chromium).
|
||||
</p>
|
||||
<p>
|
||||
The Open Source versions are available as
|
||||
<li><a href="https://git.coolaj86.com/coolaj86/telebit.js" target="_blank">Telebit Remote</a> (the "client" daemon)</li>
|
||||
<li><a href="https://git.coolaj86.com/coolaj86/telebit.js" target="_blank">Telebit Relay</a> (the service daemon)</li>
|
||||
</p>
|
||||
|
||||
<h1>Trademark</h1>
|
||||
<p>Telebit is a trademark of AJ ONeal
|
||||
</p>
|
||||
</body>
|
|
@ -0,0 +1,16 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>Telebit Relay</title>
|
||||
</head>
|
||||
<body>
|
||||
[TODO: Setup Interface]
|
||||
<br>
|
||||
<ul>
|
||||
<li>Admin Server Name</li>
|
||||
<li>Administrator Email</li>
|
||||
<li>SSL ToS Agree</li>
|
||||
<li>Community Member</li>
|
||||
</ul>
|
||||
</body>
|
||||
</html>
|
Loading…
Reference in New Issue