[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[msmtp-users] TLS failure



Recently msmtp has been failing to connect to my STARTTLS-enabled SMTP
server (perhaps since upgrading to Ubuntu 14.10). gnutls-cli has no
trouble connecting [1]. msmtp for some reason fails with "operation
timed out" during TLS handshaking [2].  Judging by the output from
Wireshark it seems that the client receives a handshake packet from the
server, ACKs it and then ACK/RSTs the connection. Unfortunately the
debug output offered by msmtp has no clues as to why this is
happened. Any ideas?

Cheers,

- Ben


[1] gnutls
    $ gnutls-cli --starttls mail.smart-cactus.org -p 587 
    Processed 168 CA certificate(s).
    Resolving 'mail.smart-cactus.org'...
    Connecting to '54.187.36.80:587'...

    - Simple Client Mode:

    220 mail.smart-cactus.org ESMTP Postfix (Ubuntu)
    EHLO localhost.localdomain
    250-mail.smart-cactus.org
    250-PIPELINING
    250-SIZE 104857600
    250-ETRN
    250-STARTTLS
    250-ENHANCEDSTATUSCODES
    250-8BITMIME
    250 DSN
    STARTTLS
    220 2.0.0 Ready to start TLS
    *** Starting TLS handshake
    - Certificate type: X.509
    - Got a certificate list of 2 certificates.
    - Certificate[0] info:
     - subject `C=US,CN=mail.smart-cactus.org,EMAIL=bgamari@...20...', issuer `C=IL,O=StartCom Ltd.,OU=Secure Digital Certificate Signing,CN=StartCom Class 1 Primary Intermediate Server CA', RSA key 4096 bits, signed using RSA-SHA256, activated `2014-05-28 07:59:13 UTC', expires `2015-05-29 08:35:42 UTC', SHA-1 fingerprint `0e82e89bd10a1e3fc9913fc1118ca16bf31a6dec'
            Public Key ID:
                    f109f6c5d837dbaa907e72889f555e4aeccabd53
            Public key's random art:
                    +--[ RSA 4096]----+
                    |                 |
                    |           +     |
                    |        + . + o  |
                    |       . = o o + |
                    |        S +   = o|
                    |           . = +E|
                    |         .o.. =. |
                    |        ..o=o+.  |
                    |         .+++ oo |
                    +-----------------+

    - Certificate[1] info:
     - subject `C=IL,O=StartCom Ltd.,OU=Secure Digital Certificate Signing,CN=StartCom Class 1 Primary Intermediate Server CA', issuer `C=IL,O=StartCom Ltd.,OU=Secure Digital Certificate Signing,CN=StartCom Certification Authority', RSA key 2048 bits, signed using RSA-SHA1, activated `2007-10-24 20:54:17 UTC', expires `2017-10-24 20:54:17 UTC', SHA-1 fingerprint `f691fc87efb3135354225a10e127e911d1c7f8cf'
    - Status: The certificate is trusted. 
    - Successfully sent 0 certificate(s) to server.
    - Description: (TLS1.2)-(ECDHE-RSA-SECP256R1)-(AES-128-GCM)
    - Session ID: 6F:D9:F4:31:78:5F:05:F0:C9:F3:60:92:9F:9B:95:73:CE:57:E2:9C:94:6A:91:29:6F:01:D0:E8:CA:7D:C2:38
    - Ephemeral EC Diffie-Hellman parameters
     - Using curve: SECP256R1
     - Curve size: 256 bits
    - Version: TLS1.2
    - Key Exchange: ECDHE-RSA
    - Server Signature: RSA-SHA256
    - Cipher: AES-128-GCM
    - MAC: AEAD
    - Compression: NULL


[2] msmtp
    msmtp -a smart-cactus ben@...377... -v --tls-certcheck=off
    ignoring system configuration file /usr/local/etc/msmtprc: No such file or directory
    loaded user configuration file /home/ben/.msmtprc
    using account smart-cactus from /home/ben/.msmtprc
    host                  = mail.smart-cactus.org
    port                  = 587
    proxy host            = (not set)
    proxy port            = 0
    timeout               = off
    protocol              = smtp
    domain                = localhost.localdomain
    auth                  = choose
    user                  = ben@...377...
    password              = *
    passwordeval          = (not set)
    ntlmdomain            = (not set)
    tls                   = on
    tls_starttls          = on
    tls_trust_file        = (not set)
    tls_crl_file          = (not set)
    tls_fingerprint       = (not set)
    tls_key_file          = (not set)
    tls_cert_file         = (not set)
    tls_certcheck         = off
    tls_min_dh_prime_bits = (not set)
    tls_priorities        = (not set)
    auto_from             = off
    maildomain            = (not set)
    from                  = ben@...377...
    dsn_notify            = (not set)
    dsn_return            = (not set)
    keepbcc               = off
    logfile               = /home/ben/.msmtp.log
    syslog                = (not set)
    aliases               = (not set)
    reading recipients from the command line
    <-- 220 mail.smart-cactus.org ESMTP Postfix (Ubuntu)
    --> EHLO localhost.localdomain
    <-- 250-mail.smart-cactus.org
    <-- 250-PIPELINING
    <-- 250-SIZE 104857600
    <-- 250-ETRN
    <-- 250-STARTTLS
    <-- 250-ENHANCEDSTATUSCODES
    <-- 250-8BITMIME
    <-- 250 DSN
    --> STARTTLS
    <-- 220 2.0.0 Ready to start TLS
    msmtp: TLS handshake failed: the operation timed out
    msmtp: could not send mail (account smart-cactus from /home/ben/.msmtprc)

Attachment: pgpgP4bCBRqbl.pgp
Description: PGP signature