gluon-remote-node

Node Version of gluon remote
git clone git://archive.git.mtrnord.blog/MTRNord/gluon-remote-node.git
Log | Files | Refs | README | LICENSE

commit ca1dc7eb5e03cb401576aa73b72599c6adbd1033
parent 2e11f255eae5ce39333528436131e088b0113fb9
Author: MTRNord <mtrnord1@gmail.com>
Date:   Thu, 16 Jun 2016 19:06:13 +0200

Add some security, an express engine and the first command

Diffstat:
Abackend/commands.js | 24++++++++++++++++++++++++
Mpackage.json | 6++++++
Apages/index.ejs | 0
Mserver.js | 10++++++++--
4 files changed, 38 insertions(+), 2 deletions(-)

diff --git a/backend/commands.js b/backend/commands.js @@ -0,0 +1,24 @@ +var sshclient = require('sshclient'); + +export.modules[ + changeName: function (ip, newname) { + var opts = { + + host: 'myhost', + port: 22, + username: 'ubuntu', + privateKey: fs.readFileSync('./somekey.pem'), + + debug: true, // optional + console: console // optional, allows logger overriding + }; + + sshclient.session(opts, _x(cb, true, function(err, ses) { + _x(null, false, function(cb) { + ses.exec("uci set system.@system[0].hostname='" + newname + "'", cb); + ses.exec("uci commit system", cb); + ses.exec("/etc/init.d/system reload", cb); + }) + }); + } +] diff --git a/package.json b/package.json @@ -26,8 +26,14 @@ }, "homepage": "https://github.com/MTRNord/gluon_web_remote_node#readme", "dependencies": { + "ejs": "^2.4.2", "express": "^4.13.4", + "helmet": "^2.1.1", "ssh-keygen": "^0.2.1", "sshclient": "0.0.4" + }, + "devDependencies": { + "chai": "^3.5.0", + "mocha": "^2.5.3" } } diff --git a/pages/index.ejs b/pages/index.ejs diff --git a/server.js b/server.js @@ -1,7 +1,13 @@ var express = require('express'); var app = express(); -app.get('/', function (req, res) { - res.send('Hello World!'); +app.set('view engine', 'ejs'); +var helmet = require('helmet') + +app.use(helmet()) + +// index page +app.get('/', function(req, res) { + res.render('pages/index'); }); app.use('/static', express.static('static'));