We are trying to get to the bottom of a refusal by Limilabs IMAP client to connect to a dovecot IMAP server running on RHEL6.
The error we're getting is as follows:
Limilabs.Client.ServerException: Tried to read a line. No data received. Please make sure that antivirus and firewall software are disabled or configured correctly. ---> System.Exception: Tried to read a line. No data received.
We are able to successfully connect to this dovecot server using openssl from the machine running the Limilabs client, and we get this as expected:
- OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE IDLE AUTH=PLAIN AUTH=LOGIN] Dovecot ready.
If we run ssldump on the underlying connection to see the flow of the traffic, we see the following (handshake is successful, and has been removed):
The dovecot IMAP server gives the opening IMAP line to Limilabs:
1 11 0.1113 (0.0557) S>C application_data
Limilabs then responds with a response over two packets:
1 12 0.2587 (0.1474) C>S applicationdata
1 13 0.2587 (0.0000) C>S applicationdata
Dovecot IMAP server kicks in and responds to Limilabs:
1 14 0.2589 (0.0001) S>C application_data
Limilabs then responds with another response over two packets:
1 15 0.2608 (0.0019) C>S applicationdata
1 16 0.2608 (0.0000) C>S applicationdata
Dovecot IMAP server responds to the above by gracefully asking SSL to shut down the connection, which duly happens:
1 17 0.2610 (0.0002) S>C Alert
1 0.2610 (0.0000) S>C TCP FIN
1 0.2632 (0.0021) C>S TCP FIN
From the timestamps, this entire exchange is complete inside 263 milliseconds. This doesn’t match the claim in the error message that a timeout has occurred.
On the dovecot server, we see the following logged:
Apr 20 11:50:05 server dovecot: imap-login: Aborted login (no auth attempts): rip=x.x.x.x, lip=y.y.y.y, TLS
Apr 20 11:50:05 server dovecot: imap-login: Warning: SSL alert: where=0x4008, ret=256: warning close notify [x.x.x.x]
Has anyone seen a problem before where Limilabs won't try and log in to the IMAP server? Is there a solution to getting an accurate error message?