This is my first post to the forum, and since it involves a bit of a rant, I’d like to prefix it with ‘I heart mikrotik’. I’ve used rb3011 and rb4011 for a couple of years now, and deeply impressed with the feature/price ratio.
Ok, here’s the rant: modern ssh clients refuse to work with mikrotik, because its crypto is woefully old: the only available key types are ssh-DSA, which has been deprecated since 2015, and ssh-RSA, signed with SHA-1, which also has been deprecated for over a year now.
I understand that backwards-compatibility matters, and, if mikrotik were to simply port a modern openSSH, many clients would be forced to rekey. But if routerOS 7 is already introducing sweeping changes, this is surely a better time than a point release, which could catch users off-guard. Now is the time to get the latest openssh, with EC crypto and support for signed certificates. The alternative is to force the use of broken security, while the desktop OS vendors upgrade ssh client to a version that is no longer interoperable.
Those of us who rely on CLI management of our routers, particularly those with automated configuration management such as ansible, really need working ssh on the routers.
Best
Lev
No SSH guru, just pointing out that there is SSH strong! Is it any good is another question??
strong-crypto (yes | no; Default: no) Use stronger encryption, HMAC algorithms, use bigger DH primes and disallow weaker ones:
prefer 256 and 192 bit encryption instead of 128 bits;
disable null encryption;
prefer sha256 for hashing instead of sha1;
disable md5;
use 2048bit prime for Diffie Hellman exchange instead of 1024bit.
Yes, he wrote what the command was and yes he explained what it would do but he did not specify exactly where the command was located in the CLI structure. My post clarified that.
Now, with OpenSSH v8.8p1 I can’t use RSA pubkey auth as in this version it is disabled by default and I need to workaround in .ssh/config with
PubkeyAcceptedKeyTypes +ssh-rsa
to able to connect. Moreover still only RSA pubkey auth is supported in RC4, which is the first generation key type. The second generation DSA is deprecated, the third gen ECDSA is not widely spreaded and the fourth gen ED25519 is still not available in RouterOS.
So where ahead?
I opened a feature ticket about this (SUP-61929) that was not yet answered… Neither positive nor negative. Let’s hope they are working on support for ed25519 keys.
(I’m kind of optimistic, they always followed openssh deprecations in the past.)
What ssh client do you use? Why do you call it modern if it can’t use old ciphers? It could/should compalin but dropping support in such a tool is a shame. Why not to drop telnet support? Should they drop support for serial port as its so old?
Ssh clients mentioned did not drop support for old algorithms, they are discouraging their use in default config. It is fairly easy to allow them as was mentioned in previous posts.
OpenSSH and other SSH clients follows the new standards to provide more and more secure way to prevent unauthorized access to our devives. I think this is a common interest.
In ip ssh strong crypto option enable stronger ciphers but not enable stronger pubkey signature checking algos like SHA256/512-RSA and in OpenSSH 8.8 SHA1-RSA is deprecated and removed from default config.
As I said only first generation RSA pubkey auth method supported in ROS however we are at fourth generation ED25519. ROS can’t recognize ECDSA nor ED25519 pubkey.
We have some APC UPS which has really old MGMT cards without able to SW update. At a point we will can’t login into these devices with up-to-date SSH clients or web browsers. Unfortunately we need to operating ancient OSes to able to login into these devices or we need to disable the secure login methods, and using HTTP and telnet.
I wouldn’t like to if ROS would get this far.
You’re spreading mild version of FUD. Even modern SSH clients (up to the version I can see) can connect to ancient SSH servers if one adds some options to ssh client command, e.g.
But really … SSH server in ROS 6.48.4 supports slightly newer algorithms: KEX algorithm diffie-hellman-group-exchange-sha256 and host key algorithms rsa-sha2-256 (the ssh-rsa was deprecated in recent openssh versions). So unless your openssh installation doesn’t deprecate too many older algorithms (it’s system-wide configuration so maintainer of ssh client installation can change defaults) you should still be able to connect to recent ROS versions without too much fuss.
Just to be clear: I’m not saying that MT should not include a more modern implementation of SSH server in ROS … I’m just saying that things are not as bleak as they might seem.
Sure, this is not a big problem, but many of us noticed “I can’t login into my device which was worked yesterday”. And some of us starts thinking “Some bad guy cracked it, or not?”. In security, you have never be too careful.
Sure, but then … is anybody (except me? ) checking all the change-logs before blindly upgrading software? I mean … it’s ssh client upgrade which breaks things “that worked yesterday” and if one does one thing at a time, it would be pretty obvious, wouldn’t it? Except for the part “OMG, my router got hacked”.
It’s already there but you can’t see it because icon is only displayed by winbox gui if crypto library on your PC supports the 2025-era state-of-art cryptography.