You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Hi there. I'm trying to get a libgit2 client (via the git2 crate) connecting to russh for integration testing purposes and I'm getting a rather unhelpful error from libgit2 - failed to start SSH session: Unable to exchange encryption keys.
I did a pcap of the negotiation and it looks like the client simply hangs up after russh tries to initiate a key exchange. I'm not well versed in the exchange details so this very well could be a problem with libgit2, but we don't have issues connecting to other servers - just russh.
Negotation packets (client hangs up directly after this):
let listener = TcpListener::bind(("127.0.0.1",0)).await.unwrap();let addr = listener.local_addr().unwrap();let port = addr.port();let config = Arc::new(russh::server::Config{inactivity_timeout:Some(std::time::Duration::from_secs(10)),auth_rejection_time: std::time::Duration::from_secs(3),auth_rejection_time_initial:Some(std::time::Duration::from_secs(3)),keys:vec![
russh_keys::key::KeyPair::generate_ed25519().unwrap(),],
..Default::default()});let socket_future = russh::server::run_on_socket(config,&listener,self);
Perhaps I'm missing something on the config side but I'm honestly not sure how to debug further given that neither side (libgit2 nor russh) have any additional callbacks I can specify to show more involved output. Is this an issue with unsupported key exchange algorithms?
For what it's worth, git (mainstream CLI) works fine.
The text was updated successfully, but these errors were encountered:
Hi there. I'm trying to get a libgit2 client (via the
git2
crate) connecting to russh for integration testing purposes and I'm getting a rather unhelpful error from libgit2 -failed to start SSH session: Unable to exchange encryption keys
.I did a pcap of the negotiation and it looks like the client simply hangs up after russh tries to initiate a key exchange. I'm not well versed in the exchange details so this very well could be a problem with libgit2, but we don't have issues connecting to other servers - just russh.
Negotation packets (client hangs up directly after this):
I've attached the PCAPng file directly given that wireshark truncates column data for some reason:
key-exchange-libssh2-russh.pcapng.zip
The initialization code is just this:
Perhaps I'm missing something on the config side but I'm honestly not sure how to debug further given that neither side (libgit2 nor russh) have any additional callbacks I can specify to show more involved output. Is this an issue with unsupported key exchange algorithms?
For what it's worth,
git
(mainstream CLI) works fine.The text was updated successfully, but these errors were encountered: