question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

SSH failed (read ECONNRESET) with release 140-145; Worked in release 139. SSH protocol error? Thanks.

See original GitHub issue

I’m unable to connect using SSH access to RHEL (Redhat) from release 140-145. The same SSH connection worked in release 139.

SSH  Connecting to x.y.com.
 X  read ECONNRESET
 SSH   X  Remote rejected opening a shell channel: Error: Not connected

On the server side, it’s running OpenSSH_7.4p1. SSHD appears to be closing the connection because tabby didn’t pass identification string (see below).

Jul 8 12:43:28 x sshd[93603]: Did not receive identification string from 10.1.1.100 port 64842

Oddly, SSH in Release 140-145 works if I connect to Ubuntu/Debian, running OpenSSH 8.x (but failed if RHEL & OpenSSH 7.x). Unfortunately, I don’t own the RHEL, so can’t update SSHD on it.

Interestingly, Wireshark network capture on the client side, decodes those fragmented packet as “SSH” but malformed.

SSH Protocol
[Malformed Packet: SSH]
    [Expert Info (Error/Malformed): Malformed Packet (Exception occurred)]

Capture

When I failback to putty, the 1st packet gets decoded as SSHv2 (see below).

SSH Protocol
    Protocol: SSH-2.0-PuTTY_Release_0.71
    [Direction: client-to-server]

Thanks for your great work on Tabby! Love it as do many others! 👍🏼

Issue Analytics

  • State:closed
  • Created 2 years ago
  • Comments:5 (3 by maintainers)

github_iconTop GitHub Comments

2reactions
Eugenycommented, Jul 10, 2021

Build should be done soon: https://github.com/Eugeny/tabby/actions/runs/1018258488

<div> GitHub</div><div>Eugeny/tabby</div><div>A terminal for a more modern age (formerly Terminus) - Eugeny/tabby</div>
1reaction
Eugenycommented, Jul 10, 2021

Hi, thanks for the detailed report. It appears that Wireshark fails to parse the packet because node-ssh2 sends the ident string and CRLF in two separate TCP packets. I’ve patched them together and now Wireshark sees the SSH packet structure again: image

That said, it already worked before with a CentOS machine running openssh-7.4p1-21.el7.x86_64.

I’ll push this change anyway - let’s see if it helps

Read more comments on GitHub >

github_iconTop Results From Across the Web

SSH failed (read ECONNRESET) with release 140-145
I'm unable to connect using SSH access to RHEL (Redhat) from release 140-145. The same SSH connection worked in release 139.
Read more >
Error: read ECONNRESET when putting file to OpenSSH ...
No problem when putting the same file to Linux SSH server, nor when using Filezilla to upload the same file to the Windows...
Read more >
SSH CONNECTION ERROR ECONNRESET
issue type=error;]Failed to connect to remote machine. Verify the SSH service connection details. Error: Error: read ECONNRESET. 2021-05-21T07:31:00.2143262Z ...
Read more >
How do I debug error ECONNRESET in Node.js?
"ECONNRESET" means the other side of the TCP conversation abruptly closed its end of the connection. This is most probably due to one...
Read more >
How to Fix the SSH "Connection Refused" Error - Kinsta
Are you experiecing the "Connection refused" error when connecting via SSH? Learn what's causing the issue and follow these steps to get it ......
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found