Estabelecendo uma conexão TLS confiável a partir do cliente Postfix

3

Gostaria de retransmitir emails de saída do meu MTA por meio de um servidor de terceiros (outbound.mailhop.org) para entrega final. Eu estou querendo saber como fazer a conexão segura entre as máquinas 'confiáveis'. Esta é a parte relevante da minha configuração atual do Postfix:

smtp_use_tls                    = yes
smtp_tls_CAfile                 = /etc/ssl/certs/ca-certificates.crt
smtp_tls_security_level         = may
smtp_tls_loglevel               = 1
smtp_sasl_auth_enable           = yes
smtp_sasl_security_options      = noanonymous
smtp_sasl_password_maps         = hash:/etc/postfix/relay
relayhost                       = [outbound.mailhop.org]      

Quando envio uma mensagem de teste, recebo dos registros de email,

Untrusted TLS connection established to outbound.mailhop.org[54.186.218.12]:25: TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)

Como posso tornar essa conexão 'confiável'?

tcdaly
fonte
Suponho que /etc/ssl/certs/ca-certificates.crtjá contenha o certificado CA remoto?
Marki
Ah e smtp_use_tls está obsoleto . Use smtp_tls_security_level. BTW eu definir smtp_tls_security_level=encrypt.
Marki
@ Marki Obrigado. /etc/ssl/certs/ca-certificates.crté exatamente o que foi fornecido com o sistema operacional. Preciso perguntar ao provedor de servidor de terceiros qual certificado CA está usando?
tcdaly
3
Você não precisa perguntar se não quer; você pode fazer uma conexão openssl à porta openssl s_client -showcerts -starttls smtp -connect outbound.mailhop.org:25e ver a cadeia de certificados. Nesse caso, você obtém o certificado raiz, que é o DigiCert.
precisa

Respostas:

1

Tudo bem, pelos comentários, deduzo que você deseja uma conexão "confiável", mesmo que não saiba o que "confiável" significa em primeiro lugar. Bem, para simplificar, significa que você afirma que sabe com quem está falando .

Você pode ver o certificado e sua cadeia. Você não precisa perguntar a eles, pois o certificado deles é uma informação pública. As práticas recomendadas recomendam que você pergunte se o certificado que você obtém ao se conectar é realmente o certificado deles, solicitando que eles verifiquem a impressão digital por telefone ou similar. Para mais detalhes, leia o assunto.

Se a CA raiz com a qual o certificado é assinado for proveniente de uma CA pública, colocar essa CA raiz no arquivo significaria que você confia a todos com um certificado assinado por essa CA raiz. Se não é isso que você deseja e realmente deseja confiar neles e em mais ninguém, então você pode usar a smtp_tls_trust_anchor_fileopção

Se você apenas falar com esse relé, poderá / deve usá- smtp_tls_security_level=encryptlo, pois ele não retornará a uma conexão de texto sem formatação e a conexão será criptografada ou a conexão falhará.

Conforme indicado nos comentários, você também deve evitar smtp_use_tlsusar o Postfix 2.3 e superior, pois esse comando foi descontinuado. Basta usar smtp_tls_security_levelcomo descrito acima.

Finalmente, http://www.postfix.org/postconf.5.html é seu amigo.

Marki
fonte