Web SSH Client using ssh2, socket.io, xterm.js, and express. webssh webssh2
Find a file
billchurch 9ebd56ddb9 fixed error message status overwriting
Fixed issue where error message would be overwritten in status bar as
websocket connection is closed. Added additional logging elements in
some events.
2017-02-10 10:56:11 -05:00
public favicon.ico, because why not 2017-02-01 18:34:59 -05:00
.gitignore adding some more files to ignore… 2017-02-01 15:56:41 -05:00
config.json corrected some typos and issues 2017-02-01 16:55:34 -05:00
index.js fixed error message status overwriting 2017-02-10 10:56:11 -05:00
LICENSE Create LICENSE 2016-05-18 13:08:45 -04:00
package.json corrected some typos and issues 2017-02-01 16:55:34 -05:00
README.md corrected some typos and issues 2017-02-01 16:55:34 -05:00

WebSSH2

Web SSH Client using ssh2, socket.io, xterm.js, and express

Bare bones example of using SSH2 as a client on a host to proxy a Websocket / Socket.io connection to a SSH2 server.

screenshot 2016-05-18 13 29 53

Instructions

To install:

  1. Clone to a location somewhere and npm install

  2. If desired, edit config.json to change the listener to your liking. There are also some default options which may be definied for a few of the variables.

  3. Run npm start

  4. Fire up a browser, navigate to IP/port of your choice and specify a host (https isn't used here because it's assumed it will be off-loaded to some sort of proxy):

http://localhost:2222/ssh/host/127.0.0.1

You will be prompted for credentials to use on the SSH server via HTTP Basic authentcaiton. This is to permit usage with some SSO systems that can replay credentials over HTTP basic.

Options (GET request vars)

port= - port of SSH server (defaults to 22)

header= - optional header to display on page

headerBackground= - optional background color of header to display on page

Example:

http://localhost:2222/ssh/host/192.168.1.1?port=2244&header=My%20Header&color=red