Como configurar o TLS para funcionar com um servidor de correio do Postfix

1

Recebi a tarefa de implementar o TLS em um servidor de retransmissão de e-mail Postfix para um escritório internacional.

Estou ciente de que preciso modificar o '/etc/postfix/main.cf' para configurar o TLS. Temos outro servidor de retransmissão de email nos EUA que é configurado com TLS e tem a seguinte configuração de TLS:

# TLS parameters 'mail.company-name.com'
smtpd_tls_cert_file=/etc/ssl/certs/company-name.com.pem
smtpd_tls_key_file=/etc/ssl/private/company-name.com.key
smtpd_use_tls=yes
smtp_tls_loglevel=5
smtpd_tls_security_level=may
smtp_tls_note_starttls_offer=yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache

Eu posso implementar essa configuração no servidor Postfix do meu escritório internacional, então estou apenas me perguntando se tudo o que tenho a fazer é gerar um certificado para 'mail.company-name.in' semelhante ao certificado que é referenciado no as seguintes linhas:

smtpd_tls_cert_file=/etc/ssl/certs/company-name.com.pem
smtpd_tls_key_file=/etc/ssl/private/company-name.com.key

A nova configuração seria a seguinte:

# TLS parameters 'mail.company-name.in'
smtpd_tls_cert_file=/etc/ssl/certs/company-name.in.pem
smtpd_tls_key_file=/etc/ssl/private/company-name.in.key
smtpd_use_tls=yes
smtp_tls_loglevel=5
smtpd_tls_security_level=may
smtp_tls_note_starttls_offer=yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache

Estou sentindo falta de mais alguma coisa que você tenha notado? Qualquer conselho será apreciado.

Por favor, deixe-me saber se você tem alguma dúvida e eu ficarei feliz em esclarecer.

Obrigado pela sua ajuda!

    
por MotoDave452 11.08.2017 / 16:46

1 resposta

2

Assumo aqui que você ainda não possui um certificado assinado para seu domínio, caso contrário, sua pergunta seria inútil.

Se você deseja que um certificado seja assinado por uma CA, você precisa ir a uma autoridade de certificação e dar a ela sua CSR e obter um certificado. Qual CA você escolheu é irrelevante, contanto que os dispositivos do seu cliente confiem nela.

Para gerar o CSR, você pode usar o openssl:

openssl req -new -newkey rsa:4096 -nodes -out company-name.com.csr -keyout company-name.com.key

Você precisa responder algumas perguntas, mas, exceto pelo nome comum, elas são irrelevantes.

Veja também, por exemplo, Como você compra um certificado SSL? e muitas outras perguntas aqui.

EDITAR:

smtpd_tls_cert_file=/etc/ssl/certs/company-name.com.pem
smtpd_tls_key_file=/etc/ssl/private/company-name.com.key

Essas linhas definem qual certificado e arquivo de chaves usar para sessões TLS. Se você quiser que os clientes possam verificar a validade, será necessário fornecer à cadeia de certificados smtpd_tls_CAfile .

smtpd_use_tls=yes
smtp_tls_note_starttls_offer=yes

Isso permite criptografia oportunista. Ou seja Quando um cliente SMTP se conecta, entregando um e-mail ao seu servidor / ele envia um e-mail para outro servidor SMTP, ele informa que o STARTTLS está disponível.

smtp_tls_loglevel=5

Útil para depuração. Note que os documentos não recomendam nada superior a 2 e 5 não está definido de todo. 1 é razoável.

smtpd_tls_security_level=may

Permite a criptografia oportunista, mas não exige isso. Você pode querer defini-lo como encrypt para envio.

smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache

Necessário para tickets de sessão e recomendado.

Você quer dar uma olhada no Endurecimento de Criptografia aplicado do BetterCrypto.org, que contém um guia exemplo completo para o Postfix.

    
por 11.08.2017 / 17:30