Project

General

Profile

Actions

Feature #27770

closed

Ruby net-ssh doesn't support 'ed25519' ssh key type.

Added by Adam Ruzicka over 4 years ago. Updated almost 3 years ago.


Description

Cloned from https://bugzilla.redhat.com/show_bug.cgi?id=1747751

Description of problem:
I raised a bug 1747748 about remote execution job hangs when using unsupported ssh key type. This bugzilla is about adding support to 'ed25519' key by making the following gems as the dependencies for foreman remote execution plugin or for our net-ssh rpm.

------------------------------
/opt/theforeman/tfm/root/usr/share/gems/gems/net-ssh-4.0.1/lib/net/ssh/authentication/ed25519_loader.rb:19:in `raiseUnlessLoaded': unsupported key type `ssh-ed25519' (NotImplementedError)
net-ssh requires the following gems for ed25519 support: * rbnacl (>= 3.2, < 5.0) * rbnacl-libsodium, if your system doesn't have libsodium installed. * bcrypt_pbkdf (>= 1.0, < 2.0)
See https://github.com/net-ssh/net-ssh/issues/478 for more information
Gem::MissingSpecError : "Could not find 'rbnacl' (< 5.0, >= 3.2.0) among 202 total gem(s)
------------------------------

Due to several reasons net/ssh maintainers don't want to make these gems as the dependencies for net/ssh. See the following thread for more details.

https://github.com/net-ssh/net-ssh/issues/476

Full reproduced outputs:
su - s /bin/bash foreman-proxy
scl enable tfm "ruby /tmp/ssh_cmd.rb my-target.example.com root 'sudo sh -c uptime'"
<snip>
D, [2019-09-01T17:30:15.600578 #25120] DEBUG -
net.ssh.authentication.session[a6c020]: trying publickey
Traceback (most recent call last):
14: from /tmp/ssh_cmd.rb:28:in `<main>'
13: from /opt/theforeman/tfm/root/usr/share/gems/gems/net-ssh-4.0.1/lib/net/ssh.rb:237:in `start'
12: from /opt/theforeman/tfm/root/usr/share/gems/gems/net-ssh-4.0.1/lib/net/ssh/authentication/session.rb:66:in `authenticate'
11: from /opt/theforeman/tfm/root/usr/share/gems/gems/net-ssh-4.0.1/lib/net/ssh/authentication/session.rb:66:in `each'
10: from /opt/theforeman/tfm/root/usr/share/gems/gems/net-ssh-4.0.1/lib/net/ssh/authentication/session.rb:80:in `block in authenticate'
9: from /opt/theforeman/tfm/root/usr/share/gems/gems/net-ssh-4.0.1/lib/net/ssh/authentication/methods/publickey.rb:19:in `authenticate'
8: from /opt/theforeman/tfm/root/usr/share/gems/gems/net-ssh-4.0.1/lib/net/ssh/authentication/key_manager.rb:101:in `each_identity'
7: from /opt/theforeman/tfm/root/usr/share/gems/gems/net-ssh-4.0.1/lib/net/ssh/authentication/key_manager.rb:217:in `load_identities'
6: from /opt/theforeman/tfm/root/usr/share/gems/gems/net-ssh-4.0.1/lib/net/ssh/authentication/key_manager.rb:217:in `map'
5: from /opt/theforeman/tfm/root/usr/share/gems/gems/net-ssh-4.0.1/lib/net/ssh/authentication/key_manager.rb:221:in `block in load_identities'
4: from /opt/theforeman/tfm/root/usr/share/gems/gems/net-ssh-4.0.1/lib/net/ssh/key_factory.rb:84:in `load_public_key'
3: from /opt/theforeman/tfm/root/usr/share/gems/gems/net-ssh-4.0.1/lib/net/ssh/key_factory.rb:103:in `load_data_public_key'
2: from /opt/theforeman/tfm/root/usr/share/gems/gems/net-ssh-4.0.1/lib/net/ssh/buffer.rb:242:in `read_key'
1: from /opt/theforeman/tfm/root/usr/share/gems/gems/net-ssh-4.0.1/lib/net/ssh/buffer.rb:275:in `read_keyblob'
/opt/theforeman/tfm/root/usr/share/gems/gems/net-ssh-4.0.1/lib/net/ssh/authentication/ed25519_loader.rb:19:in `raiseUnlessLoaded': unsupported key type `ssh-ed25519' (NotImplementedError)
net-ssh requires the following gems for ed25519 support: * rbnacl (>= 3.2, < 5.0) * rbnacl-libsodium, if your system doesn't have libsodium installed. * bcrypt_pbkdf (>= 1.0, < 2.0)
See https://github.com/net-ssh/net-ssh/issues/478 for more information
Gem::MissingSpecError : "Could not find 'rbnacl' (< 5.0, >= 3.2.0) among 202 total gem(s)

Version-Release number of selected component (if applicable):
6.5

Actions #1

Updated by Zach Huntington-Meath over 4 years ago

  • Subject changed from Ruby net-ssh doesn't support 'ed25519' ssh key type. to Ruby net-ssh doesn't support 'ed25519' ssh key type.
  • Triaged changed from No to Yes
Actions #2

Updated by Adam Ruzicka about 3 years ago

  • Project changed from Packaging to Foreman Remote Execution
Actions #3

Updated by The Foreman Bot about 3 years ago

  • Fixed in Releases foreman_remote_execution 4.1.1 added
Actions #4

Updated by Adam Ruzicka about 3 years ago

  • Status changed from New to Closed
Actions #5

Updated by Adam Ruzicka about 3 years ago

  • Fixed in Releases foreman_remote_execution_core-1.4.3 added
  • Fixed in Releases deleted (foreman_remote_execution 4.1.1)
Actions #6

Updated by The Foreman Bot almost 3 years ago

  • Assignee set to Adam Ruzicka
  • Pull request https://github.com/theforeman/smart_proxy_remote_execution_ssh/pull/58 added
Actions #7

Updated by The Foreman Bot almost 3 years ago

  • Pull request https://github.com/theforeman/foreman_remote_execution/pull/621 added
Actions #8

Updated by Adam Ruzicka almost 3 years ago

  • Fixed in Releases foreman_remote_execution_core 1.4.5 added
  • Fixed in Releases deleted (foreman_remote_execution_core-1.4.3)
Actions #9

Updated by The Foreman Bot almost 3 years ago

  • Pull request https://github.com/theforeman/foreman_remote_execution/pull/630 added
Actions #10

Updated by The Foreman Bot almost 3 years ago

  • Pull request https://github.com/theforeman/foreman_remote_execution/pull/631 added
Actions

Also available in: Atom PDF