Our Products:   CompleteFTP  edtFTPnet/Free  edtFTPnet/PRO  edtFTPj/Free  edtFTPj/PRO
0 votes
124 views
in Java FTP by (250 points)

Hello,

We suddenly started seeing the EOF error when the client side key exchange started.

                          Expected exception : The socket is EOF

What could be probable causes to look at?

We double checked the pub key in the known_hosts file for host identification to use which is correct.

Was able to logon with OpenSSH sftp we have installed and the pub key in the known hosts file.

Completely puzzled why this happens with only one of our many connections we set up.

Thanks!

Jan

The error log:

DEBUG [TransportProtocolCommon] 7 Feb 2025 10:31:01.347 : Starting key exchange

DEBUG [TransportProtocolCommon] 7 Feb 2025 10:31:01.347 : Determine Algorithm

DEBUG [TransportProtocolCommon] 7 Feb 2025 10:31:01.347 : Client Algorithms: [ecdh-sha2-nistp256, ecdh-sha2-nistp384, ecdh-sha2-nistp521, diffie-hellman-group1-sha1, diffie-hellman-group14-sha1, diffie-hellman-group14-sha256, diffie-hellman-group-exchange-sha1, diffie-hellman-group-exchange-sha256, ext-info-c]

DEBUG [TransportProtocolCommon] 7 Feb 2025 10:31:01.347 : Server Algorithms: [ecdh-nistp384-kyber-768r3-sha384-d00@openquantumsafe.org, x25519-kyber-512r3-sha256-d00@amazon.com, ecdh-nistp256-kyber-512r3-sha256-d00@openquantumsafe.org, ecdh-nistp521-kyber-1024r3-sha512-d00@openquantumsafe.org, ecdh-sha2-nistp256, ecdh-sha2-nistp384, ecdh-sha2-nistp521, curve25519-sha256, curve25519-sha256@libssh.org, diffie-hellman-group18-sha512, diffie-hellman-group16-sha512, diffie-hellman-group-exchange-sha256]

DEBUG [TransportProtocolCommon] 7 Feb 2025 10:31:01.347 : Returning ecdh-sha2-nistp256

DEBUG [TransportProtocolCommon] 7 Feb 2025 10:31:01.347 : Key exchange algorithm: ecdh-sha2-nistp256

INFO [ECDHSha2] 7 Feb 2025 10:31:01.347 : Starting client side key exchange.

ALL [TransportProtocolCommon] 7 Feb 2025 10:31:01.732 : Name=SSH_MSG_KEX_ECDH_INIT,MessageId=30,Q_C=ô»öÈvÉ°–ɽ&C¯ÏàL¨ü¨ ×$r% ¸ö”¬CA¨'Z$@!þ"«Ûkc-íܾ»¸ÌÚª§

ALL [TransportProtocolOutputStream] 7 Feb 2025 10:31:01.732 : Sent message. Seq no=1, msg=30

WARN [TransportProtocolCommon] 7 Feb 2025 10:31:01.732 : The Transport Protocol thread failed: The socket is EOF

DEBUG [TransportProtocolCommon] 7 Feb 2025 10:31:01.732 : stop() called

DEBUG [State] 7 Feb 2025 10:31:01.732 : Updated state to 5

INFO [TransportProtocolCommon] 7 Feb 2025 10:31:01.732 : The Transport Protocol has been stopped

DEBUG [com.enterprisedt.net.ftp.ssh.SSHFTPClient] 7 Feb 2025 10:31:01.732 : Expected exception : The socket is EOF

java.io.IOException: The socket is EOF

at com.enterprisedt.net.j2ssh.transport.a.a(TransportProtocolInputStream.java:161)

at com.enterprisedt.net.j2ssh.transport.a.c(TransportProtocolInputStream.java:199)

at com.enterprisedt.net.j2ssh.transport.TransportProtocolCommon.readMessage(TransportProtocolCommon.java:1415)

at com.enterprisedt.net.j2ssh.transport.kex.ECDHSha2.performClientExchange(ECDHSha2.java:134)

at com.enterprisedt.net.j2ssh.transport.TransportProtocolClient.performKeyExchange(TransportProtocolClient.java:452)

at com.enterprisedt.net.j2ssh.transport.TransportProtocolCommon.beginKeyExchange(TransportProtocolCommon.java:733)

at com.enterprisedt.net.j2ssh.transport.TransportProtocolCommon.a(TransportProtocolCommon.java:1373)

at com.enterprisedt.net.j2ssh.transport.TransportProtocolCommon.startBinaryPacketProtocol(TransportProtocolCommon.java:1080)

at com.enterprisedt.net.j2ssh.transport.TransportProtocolCommon.run(TransportProtocolCommon.java:430)

at java.base/java.lang.Thread.run(Thread.java:829)

java.io.IOException: The socket is EOF

at com.enterprisedt.net.j2ssh.transport.a.a(TransportProtocolInputStream.java:161)

at com.enterprisedt.net.j2ssh.transport.a.c(TransportProtocolInputStream.java:199)

at com.enterprisedt.net.j2ssh.transport.TransportProtocolCommon.readMessage(TransportProtocolCommon.java:1415)

at com.enterprisedt.net.j2ssh.transport.kex.ECDHSha2.performClientExchange(ECDHSha2.java:134)

at com.enterprisedt.net.j2ssh.transport.TransportProtocolClient.performKeyExchange(TransportProtocolClient.java:452)

at com.enterprisedt.net.j2ssh.transport.TransportProtocolCommon.beginKeyExchange(TransportProtocolCommon.java:733)

at com.enterprisedt.net.j2ssh.transport.TransportProtocolCommon.a(TransportProtocolCommon.java:1373)

at com.enterprisedt.net.j2ssh.transport.TransportProtocolCommon.startBinaryPacketProtocol(TransportProtocolCommon.java:1080)

at com.enterprisedt.net.j2ssh.transport.TransportProtocolCommon.run(TransportProtocolCommon.java:430)

at java.base/java.lang.Thread.run(Thread.java:829)

1 Answer

0 votes
by (163k points)
It's not obvious what the issue is from your error log. In the first instance, it's always best to be running the latest version of edtFTPj/PRO. Have you upgraded to the latest?
by (250 points)
It is weird. We have hundreds of customer connections, and this one suddenly, from one day to the other fails on RSA Public key exchange after having successfully negotiated the encryption scheme.

That was also was my question was targeted at. What in this exchange can could cause this. What does a successful exchange depend on.

This is what we use:

<dependency>
            <groupId>com.enterprisedt</groupId>
            <artifactId>edtFTPj-PRO-license</artifactId>
            <version>7.7.0</version>
        </dependency>

Can I upgrade to the latest which is edtftpj-pro-8.2.1 I see on the site and try it out with this license or do we need to get a new license key for that?

Thanks!

Jan
by (163k points)
If your license agreement is current, you can upgrade. Or you can download the trial and test it out.
by (250 points)
One more question, I see we have a license jar and the etd ftp client jar. Can I just update the latter and keep the license jar as it is or do they always have to match.
by (9.2k points)
You do not need to do anything with the license jar when upgrading. However please make sure that you have a current support agreement in place first before proceeding.
If you have an up to date (current) support agreement with us then please follow these instructions at:  
https://enterprisedt.com/questions/index.php/12786/how-can-i-download-the-edtftpj-pro-production-version-jar
and download the production jar file from the link provided.

If you don't have support but wish to try it out first then please download the trial jar from our website (the trial is a different link so please make sure you check you support status first as the trial production jar will not work with an existing  production jar).
by (250 points)
Can't believe it! It worked! I replaced the code and subscription license jar with the trial version ones and it solved the problem. Jabbadabbadoo!!!! :)

Somebody must have beaten us to it reporting it and you guys solved it right?

Made my day!

Thanks!

Jan
by (163k points)
It's probably updated algorithms added to a later version. Just remember that the trial license expires, and you need to download the latest production jar file to go with your existing license. The trial jar file does not work with production licenses.

Categories

...