-
Notifications
You must be signed in to change notification settings - Fork 53
SSH Scan Failed for ed25519-only servers #220
Comments
Hi, is there a question we can answer about this text? |
@floatingatoll if you asking me, then sorry, I didn't understand the question |
@532910 Hi, you've pasted an error message and help text from the Observatory
website. Is there an issue you're trying to report? Is there something we
can help you with? Do you have a question about this error message that we can help answer?
|
The error I've pasted is the issue I'm trying to report. |
Aaa, it wants to say that ssh access to my host is firewalled --- it's lie, my ssh is widely opened! |
It works for the public SSH site at 'github.com': https://observatory.mozilla.org/analyze/github.com#ssh Without knowing the hostname you're attempting to scan, it's hard to say what's wrong. Is your SSH host configured in IPv6-only mode, or to use a port other than 22? |
I've tried 3 different hosts all with ssh on 22 port and without firewall. All of them gives the same error. |
outerface.net boo.outerface.net zip.outerface.net g.outerface.net |
https://www.isitblockedinrussia.com says sshscan.rubidus.com and 45.55.176.164 are not blocked in russia. |
|
I no longer actively work on this project, but as an effort to help you solve the problem. I did a quick test using the ssh_scan binary that the SSH Observatory uses as it's engine... $ ./bin/ssh_scan -t outerface.net and I was able to get a successful scan result. My suspicion here is that the server infra is experiencing a disk usage issue, I'll pop on the server quick and see if I can address this. |
The web server appears to be serving static content here: |
I was able to run the example client's that utilize the production API endpoint here to run a scan for ssh.mozilla.com: $ python client.py |
Using the ruby client, I tried outerface.net: $ ruby client.rb outerface.net But it never returns a successful response. |
Additionally, the stats endpoint appears to be returning content: |
I was able to conduct a scan using the ssh_scan binary on the ssh_scan_api server for outerface.net... ssh_scan -t outerface.net[ Note that the host in question is resolving a v6 address and the testing of ssh_scan_api against IPv6 enabled assets doesn't have good test coverage. I could take a peek at the API code and see if there's something obviously wrong here. |
zip.outerface.net has no ipv6 but has the same issue |
Thanks for that, I just figured out what the issue is...
This error is inserted with this code within the SSH Scan engine: https://github.com/mozilla/ssh_scan/blob/master/lib/ssh_scan/scan_engine.rb#L95-L120 |
I get that error for outerface and zip.outerface hosts. I'm wondering what host-key algorithms you are using now, as this could be a gap in Ruby Net:SSH's support. |
Here's some insight into the error from raw Net::SSH using presumably net-ssh 5.2.0, I see they have a 6 release they are working on, I could try to see if that has better support for your host-key algos. repro.rb require 'net/ssh' net_ssh_session = Net::SSH::Transport::Session.new( $ gem list | grep net-ssh |
Here's the issue, which is more clearly articulated in the 6.x version of Ruby Net:SSH... Server host_key preferences: ssh-ed25519 $ ruby repro.rb |
More backstory here: |
Yep, only ed25519 is enabled on the all hosts above. |
I'm looking at workarounds to equip the docker images that net-ssh/net-ssh#476 suggests as a fix |
This PR mozilla/ssh_scan#519 should address the ed25519 gap in native net-ssh and adds the necessary requirements in ssh_scan, which is a core dependency for ssh_scan_api. |
I just landed mozilla/ssh_scan#519 in ssh_scan v0.0.43 release, which can be found here: https://github.com/mozilla/ssh_scan/releases/tag/0.0.43 This will still need to get deployed to ssh_scan_api, of which I'll send a PR for that, but the deployment may lag. |
Here's the PR for the ssh_scan_api engine bump: mozilla/ssh_scan_api#171 This still needs to be manually deployed to prod, but it's moving. |
Thank you, Jonathan (: |
The text was updated successfully, but these errors were encountered: