10

I mean pure javascript client that uses HTML5 sockets and doesn't need to be installed, just open single js file in browser. Is it possible to write such client at all?

Ladadadada
  • 25,847
  • 7
  • 57
  • 90
Poma
  • 1,289
  • 6
  • 22
  • 35
  • @TomO'Connor Why? – Poma Dec 29 '11 at 12:38
  • 2
    This is why it scares the bejesus out of you: http://www.matasano.com/articles/javascript-cryptography/ Even if it is possible to write an SSH client in Javascript, it is not possible to write a **secure** SSH client in javascript. – Ladadadada Dec 29 '11 at 13:08
  • 2
    @Ladadadada From my reading of that article, a JS SSH client would be fine as long as it and the page it's on were delivered via SSL. – ceejayoz Dec 29 '11 at 15:06
  • 1
    Even if the code is delivered over SSL, you can't generate or store keys securely in javascript so doing the crypto for SSH would be pointless. Implementing telnet-over-ssl in javascript may be possible to do securely and may also be worthwhile if it solves Poma's problem. – Ladadadada Dec 29 '11 at 17:54
  • 1
    no: http://stackoverflow.com/questions/3897649/is-it-possible-to-connect-to-ssh-using-javascript – jan-glx Jan 18 '16 at 21:19

3 Answers3

4

Not in JavaScript that I know off, but you can run a python script on the server that will provide you with an ssh-shell in a browser.

GateOne

Bart De Vos
  • 17,761
  • 6
  • 62
  • 81
  • Same with shellinabox which is pre-packaged for debian/ubuntu. You then use any javascript enabled browser to connect to the server that runs the shellinabox daemon. – ndemou Apr 06 '17 at 14:59
2

Not pure HTML5, but there are other online (html/js/css based)

rrauenza
  • 533
  • 3
  • 15
Cold T
  • 2,391
  • 2
  • 16
  • 28
  • 3
    Firessh is a Firefox plugin, which means it has access to true random numbers from your OS. More secure than pure javascript can be but no good if you can't install plugins or aren't using Firefox. Webshell involves installing a Python script on your server to accept the AJAX requests. Very similar to GateOne in Bart's answer. Must use SSL for encryption. sshterm is a free ssl-to-ssh proxy. All your passwords go through someone else's server where they are decrypted from the SSL and then used for the SSH connection to your server. I would not recommend this option. – Ladadadada Dec 29 '11 at 18:08
0

Not javascript, but there's at least one java ssh applet.

Bart De Vos
  • 17,761
  • 6
  • 62
  • 81
symcbean
  • 19,931
  • 1
  • 29
  • 49