> Shellvault uses a websocket to connect a client-side terminal emulator to an SSH process on Shellvault's servers. When you type a command, it goes through the websocket to the SSH client running on our servers, and the socket sends the response back to the terminal in your browser.
So this gives Shellvault complete shell access to your server.
It could be improved by terminating SSH at the browser, and just using the Shellvault server as a dumb proxy.
EDIT: And a really roundabout way to do this is to run the dropbear ssh client inside Fabrice Bellard's in-browser Linux VM: https://bellard.org/jslinux/ which actually already works today
So this gives Shellvault complete shell access to your server.
It could be improved by terminating SSH at the browser, and just using the Shellvault server as a dumb proxy.
Step 1: javascript ssh client - https://github.com/mscdex/ssh2
Step 2: websocket tcp proxy - https://github.com/novnc/websockify
Step 3: javascript terminal emulator - https://github.com/rohanchandra/javascript-terminal
Step 4: ???
Step 5: Profit
EDIT: And a really roundabout way to do this is to run the dropbear ssh client inside Fabrice Bellard's in-browser Linux VM: https://bellard.org/jslinux/ which actually already works today