Como alterar o comportamento de fallback do sendmail se o handshake TLS falhar?

3

Eu tenho um servidor CentOS 5.x executando o sendmail que não está conseguindo negociar o TLS com ALGUNS vários servidores de destinatários. Eu estou olhando para isso.

Entretanto, notei que o sendmail NÃO se incomodará em usar métodos de entrega padrão não criptografados se ocorrerem erros de handshake TLS. Isso é um comportamento normal?

Eu esperaria que essa lógica estivesse em vigor se (e somente se) eu explicitamente exigisse isso para domínios. Por exemplo, se eu adicionei as opções TLS_SRV em / etc / mail / access. Nesse caso, não sei. Em essência, o Sendmail está apenas executando "TLS oportunista".

Todas as informações que encontrei até agora sugerem que esse problema é um comportamento esperado e está codificado ...

De acordo com o link :

By default STARTTLS is used whenever possible. However, there are some broken MTAs that don't properly implement STARTTLS. To be able to send to (or receive from) those MTAs, the ruleset try_tls (srv_features) can be used that work together with the access map. Entries for the access map must be tagged with Try_TLS (Srv_Features) and refer to the hostname or IP address of the connecting system.

De acordo com o link :

If the access database is not used, the connection is allowed in all cases, both inbound and outbound, unless the value in ${verify} is SOFTWARE, in which instance the connection is not allowed.

Ambas as sugestões sugerem que o recurso try_tls é a única opção para ignorar o TLS quando o outro lado pretende apoiá-lo. Eu entendo que isso é uma opção, mas é complicado porque significa que eu preciso fazer exceções manualmente sempre que um domínio de saída tiver problemas.

Existe alguma outra maneira de ter o fallback do sendmail?

    
por Mike B 31.03.2011 / 23:37

2 respostas

1

De acordo com este tópico , o recurso de fallback tls_failures era < href="http://www.sendmail.org/~ca/email/patches/tls_failures.p1"> implementado neste patch . Aparentemente, isso usará texto simples automaticamente após um determinado número de falhas de handshake de TLS.

Note: this patch is integrated in 8.16 (at least available as snapshot)

A partir deste post, 8.16 ainda não foi lançado , então por enquanto você terá que usar /etc/mail/access ou /etc/mail/access_db como Seth sugeriu e certifique-se de reconstruir o .db usando makemap hash /etc/mail/access < /etc/mail/access

Quanto aos riscos de segurança do uso de tls_failures globalmente; considerando que isso é TLS oportunista para começar, eu acho que abster-se de usar esta nova opção só ajudaria em alguns realmente franja casos em que o servidor de email do destinatário é temporariamente reconfigurado e depois corrigido.

    
por 21.04.2016 / 16:23
2

Você pode desabilitar o TLS para determinados hosts. Por exemplo:

# Try_TLS:gmail.com                     NO

Também indico o link

Desabilitando o STARTTLS e definindo os recursos do servidor SMTP

Por padrão, o STARTTLS é usado sempre que possível. No entanto, existem alguns MTAs quebrados que não implementam adequadamente o STARTTLS. Para poder enviar (ou receber) esses MTAs, o conjunto de regras try_tls (srv_features) pode ser usado para trabalhar em conjunto com o mapa de acesso. Entradas para o mapa de acesso devem ser marcadas com Try_TLS (Srv_Features) e referem-se ao nome do host ou endereço IP do sistema de conexão. Um caso padrão pode ser especificado usando apenas a tag. Por exemplo, as seguintes entradas no mapa de acesso:

Try_TLS:broken.server   NO
Srv_Features:my.domain  v
Srv_Features:       V

desativará STARTTLS ao enviar para broken.server (ou qualquer host nesse domínio) e solicitará um certificado de cliente durante o handshake de TLS somente para hosts em my.domain. As entradas válidas no RHS para Srv_Features estão listadas no "Guia de Instalação e Operações do Sendmail".

    
por 24.05.2011 / 20:36