Postfix obrigatório smtp / smtpd vs diferença e configuração “não obrigatórias”

2

Três perguntas:

  1. Corrija-me se estiver errado:% smtpd_tls_mandatory_ciphers = > configurações para a criptografia TLS obrigatória de entrada
    smtpd_tls_ciphers = > configurações para a criptografia TLS oportunista de entrada
    smtp_tls_mandatory_ciphers = > configurações para criptografia TLS obrigatória de saída
    smtp_tls_ciphers = > configurações para criptografia TLS oportunista de saída
  2. Se eu definir smtpd_tls_security_level e smtp_tls_security_level a may , apenas as configurações oportunistas são relevantes, o que significa que não importa o que eu defino nas obrigatórias?
  3. Se eu quiser criar um servidor de e-mail seguro, mas ainda público, a configuração a seguir (em relação à criptografia usada) estaria correta? Não tenho muita certeza sobre quantos servidores atualmente suportam TLS ou quais níveis de segurança em geral, mas eu ainda quero poder me comunicar com a maioria deles.

    smtpd_tls_mandatory_ciphers = high
    smtp_tls_mandatory_ciphers = high
    smtpd_tls_ciphers = high
    smtp_tls_ciphers = high
    smtp_tls_security_level = may
    smtpd_tls_security_level = may
    
    smtp_tls_protocols = !SSLv2, !SSLv3
    smtp_tls_mandatory_protocols = !SSLv2, !SSLv3
    smtpd_tls_protocols = !SSLv2, !SSLv3
    smtpd_tls_mandatory_protocols = !SSLv2, !SSLv3
    
    smtp_tls_exclude_ciphers = aNULL, DES, RC4, MD5
    smtpd_tls_exclude_ciphers = aNULL, DES, RC4, MD5
    #hope this is enough since it is also added to the mandatory exclusions
    smtp_tls_exclude_ciphers = aNULL, DES, RC4, MD5
    smtpd_tls_exclude_ciphers = aNULL, DES, RC4, MD5
    

Antecedentes: É para uma empresa orientada para a segurança, com altos padrões de segurança MAS também não quero que nenhum email seja perdido com essa configuração. p>

PS: Li a explicação dos parâmetros de configuração e é também de onde vem a maior parte do meu conhecimento.

    
por Akimiya 20.05.2015 / 03:02

1 resposta

4
  1. Sobre smtp[d]_tls_[mandatory_]ciphers

Sim.

  1. Se eu definir as opções smtpd_tls_security_level e smtp_tls_security_level , somente as configurações oportunistas serão relevantes, o que significa que não importa o que eu defino nas obrigatórias?

Sim.

  1. Se eu quiser criar um servidor de e-mail seguro, mas ainda público, a seguinte configuração (em relação à criptografia usada) ficará bem?

Você está desativando o SSL e restringindo as cifras, mas o tráfego não criptografado ainda é permitido. Eu considero a criptografia ruim melhor do que nenhuma criptografia, para comunicação com outros servidores de e-mail.

Para citar o artigo Endurecimento Aplicado de Cripto (ACH) por Bettercrypto :

Postfix has five internal lists of ciphers, and the possibility to switch between those with smtpd_tls_ciphers. However, we leave this at its default value for server to server connections, as many mail servers only support outdated protocols and ciphers. We consider bad encryption still better than plain text transmission. For connections to MUAs, TLS is mandatory and the ciphersuite is modified.

Para as conexões com clientes de e-mail, é muito útil restringir as cifras e protocolos, bem como preferir os bons.

MX and SMTP client configuration: As discussed in section 2.3.1, because of opportunistic encryp- tion we do not restrict the list of ciphers or protocols for communication with other mail servers to avoid transmission in plain text.

A configuração recomendada é a seguinte:

# TLS parameters
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
# use 0 for Postfix >= 2.9, and 1 for earlier versions
smtpd_tls_loglevel = 0
# enable opportunistic TLS support in the SMTP server and client
smtpd_tls_security_level = may
smtp_tls_security_level = may
smtp_tls_loglevel = 1
# if you have authentication enabled, only offer it after STARTTLS
smtpd_tls_auth_only = yes
tls_ssl_options = NO_COMPRESSION

smtpd_tls_mandatory_protocols = !SSLv2, !SSLv3
smtpd_tls_mandatory_ciphers=high
tls_high_cipherlist=EDH+CAMELLIA:EDH+aRSA:EECDH+aRSA+AESGCM:EECDH+aRSA+SHA384:EECDH+aRSA+SHA256:EECDH:+CAMELLIA256:+AES256:+CAMELLIA128:+AES128:+SSLv3:!aNULL:!eNULL:!LOW:!3DES:!MD5:!EXP:!PSK:!DSS:!RC4:!SEED:!ECDSA:CAMELLIA256-SHA:AES256-SHA:CAMELLIA128-SHA:AES128-SHA
smtpd_tls_eecdh_grade=ultra

E isso para master.cf :

submission inet n       -       -       -       -       smtpd
  -o smtpd_tls_security_level=encrypt
  -o tls_preempt_cipherlist=yes

Com o ciphersuite fornecido, o servidor prefere as melhores cifras disponíveis, também o Perfect Secret se possível e também suporta todos os clientes relevantes sem permitir cifras ruins. Para mais detalhes, por favor, consulte o documento vinculado, que fornece informações muito detalhadas sobre as recomendações, incluindo a teoria. As explicações para a seção postfix citada acima são contribuições minhas (e revisadas por muitos outros).

    
por 20.05.2015 / 18:54