moving files around to get rid of unneeded directories
This commit is contained in:
parent
07d90cd2e3
commit
2b12825a0c
7 changed files with 49 additions and 3 deletions
|
@ -1,4 +1,9 @@
|
|||
# Change Log
|
||||
## [0.1.4] 2017-11-09
|
||||
### Changed
|
||||
- Moved socket and util out of folders into .js in root.
|
||||
|
||||
|
||||
## [0.1.3] 2017-09-28
|
||||
### Changed
|
||||
- Upgrade to debug@3.1 to eliminate ReDoS in %o formatter
|
||||
|
|
1
app.js
1
app.js
|
@ -47,6 +47,7 @@ app.get('/ssh/host/:host?', function (req, res, next) {
|
|||
term: (/^(([a-z]|[A-Z]|[0-9]|[!^(){}\-_~])+)?\w$/.test(req.query.sshterm) &&
|
||||
req.query.sshterm) || config.ssh.term,
|
||||
allowreplay: validator.isBoolean(req.headers.allowreplay + '') || false,
|
||||
sessionID: validator.isAlphanumeric(req.headers.sessionID + '') || false,
|
||||
serverlog: {
|
||||
client: config.serverlog.client || false,
|
||||
server: config.serverlog.server || false
|
||||
|
|
8
hostkeys.json
Normal file
8
hostkeys.json
Normal file
|
@ -0,0 +1,8 @@
|
|||
[
|
||||
{
|
||||
"localhost": "ff1d6fd1e63bf07ed1c801692f9e5a44e57cb9ce"
|
||||
},
|
||||
{
|
||||
"127.0.0.1": "ff1d6fd1e63bf07ed1c801692f9e5a44e57cb9ce"
|
||||
}
|
||||
]
|
2
index.js
2
index.js
|
@ -1,4 +1,4 @@
|
|||
// server.js
|
||||
// index.js
|
||||
/*
|
||||
* WebSSH2 - Web to SSH2 gateway
|
||||
* Bill Church - https://github.com/billchurch/WebSSH2 - May 2017
|
||||
|
|
15
server.js
Normal file
15
server.js
Normal file
|
@ -0,0 +1,15 @@
|
|||
const express = require('express')
|
||||
const app = express()
|
||||
const port = 3000
|
||||
|
||||
app.get('/', (request, response) => {
|
||||
response.send('Hello from Express!')
|
||||
})
|
||||
|
||||
app.listen(port, (err) => {
|
||||
if (err) {
|
||||
return console.log('something bad happened', err)
|
||||
}
|
||||
|
||||
console.log(`server is listening on ${port}`)
|
||||
})
|
|
@ -1,11 +1,14 @@
|
|||
// socket/index.js
|
||||
// socket.js
|
||||
|
||||
// private
|
||||
var debug = require('debug')
|
||||
var debugWebSSH2 = require('debug')('WebSSH2')
|
||||
var SSH = require('ssh2').Client
|
||||
var hostkeys = require('./hostkeys.json')
|
||||
var termCols, termRows
|
||||
|
||||
console.log(JSON.stringify(hostkeys))
|
||||
|
||||
// public
|
||||
module.exports = function socket (socket) {
|
||||
// if websocket connection arrives without an express session, kill it
|
||||
|
@ -101,6 +104,7 @@ module.exports = function socket (socket) {
|
|||
finish([socket.request.session.userpassword])
|
||||
})
|
||||
if (socket.request.session.username && socket.request.session.userpassword && socket.request.session.ssh) {
|
||||
console.log('hostkeys: ' + hostkeys[0].[0])
|
||||
conn.connect({
|
||||
host: socket.request.session.ssh.host,
|
||||
port: socket.request.session.ssh.port,
|
||||
|
@ -109,6 +113,15 @@ module.exports = function socket (socket) {
|
|||
tryKeyboard: true,
|
||||
algorithms: socket.request.session.ssh.algorithms,
|
||||
readyTimeout: socket.request.session.ssh.readyTimeout,
|
||||
hostHash: 'sha1',
|
||||
hostVerifier: function (hash) {
|
||||
if (hash === hostkeys['127.0.0.1']) {
|
||||
return (verified = true)
|
||||
} else {
|
||||
err = { message: 'SSH HOST KEY HASH MISMATCH: ' + hash }
|
||||
SSHerror('CONN CONNECT', err)
|
||||
}
|
||||
},
|
||||
debug: debug('ssh2')
|
||||
})
|
||||
} else {
|
||||
|
@ -137,6 +150,10 @@ module.exports = function socket (socket) {
|
|||
' from=' + socket.handshake.address.yellow.bold.underline)
|
||||
} else {
|
||||
console.log('WebSSH2 Logout: user=' + socket.request.session.username + ' from=' + socket.handshake.address + ' host=' + socket.request.session.ssh.host + ' port=' + socket.request.session.ssh.port + ' sessionID=' + socket.request.sessionID + '/' + socket.id + ' allowreplay=' + socket.request.session.ssh.allowreplay + ' term=' + socket.request.session.ssh.term)
|
||||
if (err) {
|
||||
theError = (err) ? ': ' + err.message : ''
|
||||
console.log('WebSSH2 error' + theError)
|
||||
}
|
||||
}
|
||||
socket.emit('ssherror', 'SSH ' + myFunc + theError)
|
||||
socket.request.session.destroy()
|
|
@ -1,4 +1,4 @@
|
|||
// util/index.js
|
||||
// util.js
|
||||
|
||||
// private
|
||||
require('colors') // allow for color property extensions in log messages
|
Loading…
Reference in a new issue