Pensei ter protegido com êxito o meu servidor de email Postfix / Dovecot. Eu tenho um certificado assinado da LetsEncrypt, que é válido para o meu domínio.
O envio e o recebimento funcionam bem, mas desde que o Gmail começou a sinalizar emails inseguros, todos os emails enviados do meu servidor são sinalizados como não criptografados.
Os usuários do Gmail veem "Esta mensagem não foi criptografada", assim:
No Postfix main.cf
, entre outras configurações, tenho:
# SASL, for SMTP authentication
smtpd_sasl_type = dovecot
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
smtpd_sasl_path = private/auth
# TLS, for encryption
smtpd_tls_security_level = may
smtpd_tls_auth_only = no
smtpd_tls_CAfile = /etc/letsencrypt/live/mydomain.com/chain.pem
smtpd_tls_cert_file = /etc/letsencrypt/live/mydomain.com/fullchain.pem
smtpd_tls_key_file = /etc/letsencrypt/live/mydomain.com/privkey.pem
tls_random_source = dev:/dev/urandom
smtpd_client_new_tls_session_rate_limit = 10
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtpd_tls_exclude_ciphers =
EXP
EDH-RSA-DES-CBC-SHA
ADH-DES-CBC-SHA
DES-CBC-SHA
SEED-SHA
smtpd_tls_dh512_param_file = ${config_directory}/certs/dh_512.pem
smtpd_tls_dh1024_param_file = ${config_directory}/certs/dh_1024.pem
disable_vrfy_command = yes
smtpd_helo_required = yes
smtpd_delay_reject = yes
No Postfix master.cf
, entre outras configurações, tenho:
smtp inet n - - - - smtpd
-o smtpd_enforce_tls=yes
-o smtpd_use_tls=yes
-o smtpd_tls_security_level=encrypt
submission inet n - - - - smtpd
-o syslog_name=postfix/submission
-o smtpd_tls_security_level=encrypt
-o smtpd_sasl_auth_enable=yes
-o broken_sasl_auth_clients=yes
No Dovecot 10-ssl.conf
, entre outras configurações, tenho:
ssl = required
ssl_ca = </etc/letsencrypt/live/mydomain.com/chain.pem
ssl_cert = </etc/letsencrypt/live/mydomain.com/fullchain.pem
ssl_key = </etc/letsencrypt/live/mydomain.com/privkey.pem
O Gmail está sinalizando falsamente os certificados LetsEncrypt porque não confia neles ou o meu email está realmente sendo enviado sem criptografia?
main.cf
. Você não incluiu tudo que é relevante nos seus snippets.smtpd_banner
,myhostname
, etc.Respostas:
Eu resolvi isso adicionando essas duas linhas ao Postfix
main.cf
:(Eu só tinha
smtpd_tls_security_level
escrito por causa de um artigo enganoso que dizia que todos ossmtp_
valores eram depreciados a favor desmtpd_
.)fonte
Seu email é enviado sem criptografia. Se você quiser apenas tentar o seu melhor, adicione o seguinte ao seu main.cf
Para impor a criptografia TLS para o email enviado ao google, adicione-o ao seu main.cf
substitua / etc / postfix / rootcas / pelo local das suas CAs raiz confiáveis e no arquivo / etc / postfix / tls_policy add
isso aplicará que o email enviado para gmail.com., google.com e googlemail.com sejam enviados criptografados e autenticando o servidor SMTP
Se você não deseja se autenticar e apenas criptografar (isso é necessário para sites com certificados falsos), use
antes de reiniciar o postfix, execute
fonte
smtp_tls_security_level = may
. Era tudo o que era necessário e o restante das configurações específicas do Google não eram necessárias.Considere o relacionamento cliente / servidor com relação ao SMTP e as configurações fazem sentido:
2.1 Estrutura básica
O design SMTP pode ser representado como:
(Src: rfc5321.txt)
Portanto:
"smtp_tls_security_level" é para o cliente SMTP do Postfix. Consulte: http://www.postfix.org/postconf.5.html#smtp_tls_security_level
"smtp d _tls_security_level" é para o servidor SMTP do Postfix Consulte: http://www.postfix.org/postconf.5.html#smtpd_tls_security_level
Quando o postfix está transferindo emails para o gmail, a configuração smtp_tls_security_level é a configuração associada.
Quando o postfix está recebendo emails sobre smtp, a configuração smtp d _tls_security_level é relevante.
fonte