nirui / sshwifty

Web SSH & Telnet (WebSSH & WebTelnet client) 🔮
https://sshwifty-demo.nirui.org
GNU Affero General Public License v3.0
2.44k stars 367 forks source link

Feature Request: Support Preset from URL #57

Closed SebastianGode closed 3 years ago

SebastianGode commented 3 years ago

It would be great if we could do something like: "https://sshwifty.mysite.com/?host=ssh.mysite2.com&user=test&authentication=private-key" Once entered it shoudl open sshwifty and have that preset in the presets tab

nirui commented 3 years ago

Do you mean the Launch Link feature? For example: https://sshwifty.herokuapp.com/#+Telnet:horizons.jpl.nasa.gov:6775%7Cutf-8

Presets are basically Connection Wizard Helpers defined by the operator to allow users to connect to remotes without manually inputting every connection parameters themselves. I mean, it cannot be modified by user.

SebastianGode commented 3 years ago

Hey @nirui The launch link feature is very nice! Is there a doc to that somewhere? Because e.g. #+ssh:myip.org:22%7Cutf-8 does not work and throw the error "Unknown connector ssh". So basically I want to generate a URL which has the IP and username already entered and the user just needs to paste their Private-Key.

nirui commented 3 years ago

To use it you have to connect to the remote once manually, then go to the "Known Remote" tab, hover your mouse point on the connection record, you'll see a button show up reads "Copy Link", you click it then paste, that's it. So.... yeah you don't suppose to manually type it and not all fields are defined in the Launch Link.

However, the good news is, the link does the exact thing you've asked above: Once user clicked it, Sshwifty will automatically tries to connect to the specified remote, and if needed (such as for a SSH connection) prompt user to enter password/private key.

SebastianGode commented 3 years ago

Thanks again! Now I've got one more thing, can you make it possible to paste the private key instead of only allowing a local file? So pasting something like

-----BEGIN OPENSSH PRIVATE KEY-----
b3BlbnNzaC....
-----END OPENSSH PRIVATE KEY-----

Do not worry, this key also is useless.

nirui commented 3 years ago

Fun fact is, that's how it used to work in the old version (see screenshot in https://unix.stackexchange.com/questions/537928/how-to-decrypt-id-rsa-private-key). However, it was really hard to use, manual copy&pasting introduced many missteps at the user end, a lots of people confused and complained, and that why I made the change.

With that been said... sorry, I don't think it will be a good idea to change it back.