rastapasta / mapscii

🗺 MapSCII is a Braille & ASCII world map renderer for your console - enter => telnet mapscii.me <= on Mac (brew install telnet) and Linux, connect with PuTTY on Windows
MIT License
7.75k stars 251 forks source link

use ssh instead of telnet #120

Open Darin755 opened 2 years ago

Darin755 commented 2 years ago

The problem

Telnet is insecure and is easier to compromise. It does not use encryption and has not way of verifying identity

The solution

The best solution would to use ssh. ssh is much more secure and would make it harder for anyone to compromise the connection. It also has the benefit of verifying that the identity of the sever has not changed which would protect against someone hijacking the URL.

Temporary workarounds

You should be able to run telnet over ssh so that it is harder to compromise

derhuerst commented 2 years ago

I think Mosh should be recommended since its lower latency significantly improves the UX of interactive CLI applications.

Darin755 commented 2 years ago

I've never heard of it but it looks like it could be a option. The only downside is that it is not installed by default in most cases

derhuerst commented 2 years ago

It initializes sessions using SSH, so for regular remote shell operation is is purely opt-in. I think connecting Mosh to mapscii isn't as straightforward though, as AFAIK you wouldn't want a full shell running "in between"?

rastapasta commented 2 years ago

I agree with the "unsecureness" in terms of not encrypted text traffic - though in this specific (arty) use case, it was about demonstrating what the telnet protocol has to offer "nowadays" vs. no real security impact :)

Besides that, there was a ssh based test implementation back in the prototype days but the upstream lib implementing the server lacked some core features like supporting raw parsing to support mouse interaction. The current telnet sever is based on node-telnet - definitely worth reevaluating the current state of ssh2 libraries to offer a ssh access as well.

owiecc commented 1 year ago

Telnet is not shipping with macOS for five years now. SSH would be greatly appreciated.

Jakuje commented 4 months ago

With libssh, this could be done quite easily, I think.