Versão do servidor de e-mail Postfix 3.6.0

Após um ano de desenvolvimento, um novo branch estável do servidor de e-mail Postfix foi lançado - 3.6.0. Ao mesmo tempo, anunciou o fim do suporte ao branch Postfix 3.2, lançado no início de 2017. Postfix é um dos raros projetos que combina alta segurança, confiabilidade e desempenho ao mesmo tempo, o que foi alcançado graças a uma arquitetura bem pensada e a uma política bastante rígida de design de código e auditoria de patches. O código do projeto é distribuído sob EPL 2.0 (Licença Pública Eclipse) e IPL 1.0 (Licença Pública IBM).

De acordo com uma pesquisa automatizada de abril com cerca de 600 mil servidores de correio, o Postfix é usado em 33.66% (há um ano 34.29%) dos servidores de correio, a participação do Exim é de 59.14% (57.77%), Sendmail - 3.6% (3.83 %), MailEnable - 2.02% (2.12%), MDaemon - 0.60% (0.77%), Microsoft Exchange - 0.32% (0.47%).

Principais inovações:

  • Devido a mudanças nos protocolos internos usados ​​para interação entre os componentes do Postfix, é necessário parar o servidor de e-mail com o comando “postfix stop” antes da atualização. Caso contrário, podem ocorrer falhas na interação com os processos de pickup, qmgr, verify, tlsproxy e postscreen, o que pode resultar em atraso no envio de e-mails até que o Postfix seja reiniciado.
  • As menções às palavras “branco” e “negro”, percebidas por alguns membros da comunidade como discriminação racial, foram eliminadas. Em vez de "lista branca" e "lista negra", agora devem ser usados ​​"lista de permissão" e "lista de negação" (por exemplo, os parâmetros postscreen_allowlist_interfaces, postscreen_denylist_action e postscreen_dnsbl_allowlist_threshold). As alterações afetam a documentação, as configurações do processo postscreen (firewall integrado) e o reflexo das informações nos logs. postfix/postscreen[pid]: ALLOWLIST VETO [endereço]:porta postfix/postscreen[pid]: ALLOWLISTED [endereço]:porta postfix/postscreen[pid]: DENYLISTED [endereço]:porta

    Para preservar os termos anteriores nos logs, é fornecido o parâmetro “respectful_logging = no”, que deve ser especificado em main.cf antes de “compatibility_level = 3.6”. O suporte para nomes antigos de configurações de pós-tela foi mantido para compatibilidade com versões anteriores. Além disso, o arquivo de configuração “master.cf” permaneceu inalterado por enquanto.

  • No modo “compatibility_level = 3.6”, a opção padrão foi feita para usar a função hash SHA256 em vez de MD5. Se você definir uma versão anterior no parâmetro Compatibility_Level, o MD5 continuará a ser usado, mas para configurações relacionadas ao uso de hashes nas quais o algoritmo não está definido explicitamente, um aviso será exibido no log. O suporte para a versão de exportação do protocolo de troca de chaves Diffie-Hellman foi descontinuado (o valor do parâmetro tlsproxy_tls_dh512_param_file agora é ignorado).
  • Diagnóstico simplificado de problemas associados à especificação de um programa manipulador incorreto em master.cf. Para detectar tais erros, cada serviço de back-end, incluindo o postdrop, agora anuncia o nome do protocolo antes de iniciar a comunicação, e cada processo do cliente, incluindo o sendmail, verifica se o nome do protocolo anunciado corresponde à variante suportada.
  • Adicionado um novo tipo de mapeamento "local_login_sender_maps" para controle flexível sobre a atribuição do endereço do envelope do remetente (fornecido no comando "MAIL FROM" durante uma sessão SMTP) aos processos sendmail e postdrop. Por exemplo, para permitir que usuários locais, com exceção de root e postfix, especifiquem apenas seus logins no sendmail, usando a ligação UID ao nome, você pode usar as seguintes configurações: /etc/postfix/main.cf: local_login_sender_maps = inline :{ { root = *} , { postfix = * } }, pcre:/etc/postfix/login_senders /etc/postfix/login_senders: # É permitido especificar logins e o formulário login@domain. /(.+)/ $1 $1…@exemplo.com
  • Adicionada e habilitada por padrão a configuração “smtpd_relay_before_recipient_restrictions=yes”, na qual o servidor SMTP verificará smtpd_relay_restrictions antes de smtpd_recipient_restrictions, e não vice-versa, como antes.
  • Adicionado parâmetro "smtpd_sasl_mechanism_list", cujo padrão é "!external, static:rest" para evitar erros confusos no caso em que o backend SASL afirma suportar o modo "EXTERNAL", que não é suportado no Postfix.
  • Ao resolver nomes no DNS, uma nova API que suporta multithreading (threadsafe) é habilitada por padrão. Para construir com a API antiga, você deve especificar “make makefiles CCARGS=”-DNO_RES_NCALLS…” ao construir.
  • Adicionado modo "enable_threaded_bounces = yes" para substituir notificações sobre problemas de entrega, entrega atrasada ou confirmação de entrega pelo mesmo ID de discussão (a notificação será mostrada pelo cliente de e-mail no mesmo tópico, junto com outras mensagens de correspondência).
  • Por padrão, o banco de dados do sistema /etc/services não é mais usado para determinar números de portas TCP para SMTP e LMTP. Em vez disso, os números de porta são configurados através do parâmetroknown_tcp_ports (padrão lmtp=24, smtp=25, smtps=submissions=465, submit=587). Se algum serviço estiver faltando emknown_tcp_ports, /etc/services continua a ser usado.
  • O nível de compatibilidade (“compatibility_level”) foi aumentado para “3.6” (o parâmetro foi alterado duas vezes no passado, exceto para 3.6 os valores suportados são 0 (padrão), 1 e 2). A partir de agora, “compatibility_level” mudará para o número da versão em que foram feitas alterações que violam a compatibilidade. Para verificar os níveis de compatibilidade, operadores de comparação separados foram adicionados a main.cf e master.cf, como “<=level” e “<level” (operadores de comparação padrão não são adequados, pois considerarão 3.10 menor que 3.9).

Fonte: opennet.ru

Adicionar um comentário