Comment #4 on issue 6562 by
jsteele...@gmail.com: Certificate error when no
The report from the original submitter and most of the subsequent comments
(except #3) lack any detail to be able to guess what the problem is. You
encountered a certificate error? What does the error say? Presuming the
error appeared in the notification bar: What happens when you click on the
error notification? (It should take you to the server settings.) What
happens when you tap "Next" on the server settings dialog?
Screenshots can sometimes be helpful. Regarding the screenshot in comment
#3:
(The following is a re-post of comment #4 from issue 6238. The user there
was also running dovecot.)
A handshake failure alert indicates that the server was unable to find an
acceptable set of security parameters given the options offered by K-9 Mail.
If you have access to OpenSSL (must be version 1.0.1 or higher, as used in
Android, and which supports TLS 1.2), then you could use it to test the
server's response using the same parameters as K-9 Mail. The (long) command
would be:
$ openssl s_client -no_ssl2 -cipher
ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES256-SHA:DHE-DSS-AES256-SHA:ECDH-RSA-AES256-SHA:ECDH-ECDSA-AES256-SHA:AES256-SHA:ECDHE-RSA-DES-CBC3-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDH-RSA-DES-CBC3-SHA:ECDH-ECDSA-DES-CBC3-SHA:DES-CBC3-SHA:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA:ECDH-RSA-AES128-SHA:ECDH-ECDSA-AES128-SHA:AES128-SHA:ECDHE-RSA-RC4-SHA:ECDHE-ECDSA-RC4-SHA:ECDH-RSA-RC4-SHA:ECDH-ECDSA-RC4-SHA:EDH-RSA-DES-CBC3-SHA:EDH-DSS-DES-CBC3-SHA:RC4-SHA:RC4-MD5
-connect <host>:<port>
If the server is using STARTTLS rather that SSL/TLS, then add " -starttls
imap" or " -starttls pop3" to the command.
A successful connection should print out the SSL-Session parameters used
and an initial server response.
If an error occurs (presumably the same error that K-9 Mail encountered),
then try again, but force TLS 1.0 only by adding " -no_tls1_1 -no_tls1_2"
to the command.
If that succeeds, then your problem is likely the same as in issue 6537
and issue 6519: the server is buggy and is not properly handling the TLS
negotiation.
However, if that command fails, try eliminating the cipher list:
$ openssl s_client -no_ssl2 -connect <host>:<port>
If that succeeds, then make note of what cipher was selected in the
SSL_Session parameters. It's likely the cipher is an insecure one which is
not made available in K-9 Mail.
Alternatively, you could identify the server and port/protocol used and
allow others to perform the tests for you. Any other details about the
server version or the SSL library version used could be helpful as well.
The fact that the alert message refers to sslv3 even when the server only
uses TLS is a red herring. That particular alert message was first
implemented in SSLv3 but is still applicable to TLS -- the OpenSSL library
chooses to call it an sslv3 alert in all instances.