Después de un año de desarrollo, se lanzó una nueva rama estable del servidor de correo Postfix: 3.12.0. Al mismo tiempo, se anunció el cese del soporte para la rama Postfix 3.7, lanzada a principios de 2022. El código del proyecto está escrito en C y se distribuye bajo las licencias EPL 2.0 (licencia pública de Eclipse) e IPL 1.0 (licencia pública de IBM).
Postfix es uno de los pocos proyectos que combina alta seguridad, fiabilidad y rendimiento, gracias a su arquitectura multiproceso que aísla los manejadores individuales, así como a una estricta política de code review y auditoría de parches. Para protegerse contra errores de manejo de memoria, el proyecto utiliza versiones seguras de funciones para la asignación y liberación de memoria, y un conjunto de funciones abstractas de enlace para trabajar con buffers (verifica el desbordamiento de buffers y el acceso a memoria liberada), operaciones de archivos, formateo de salida, entrada/salida con búfer y manipulación de cadenas (incluyendo capacidades para trabajar con cadenas de tamaño variable y redimensionar automáticamente las cadenas).
De acuerdo con la encuesta final automatizada a cerca de 500 mil servidores de correo, servidores (después de julio de 2025 se interrumpirá la publicación de informes), Postfix se utiliza en el 37.88% (hace un año 36.81%) de los servidores de correo, la cuota de Exim es del 55.59% (hace un año 56.61%), Sendmail — 3.55% (3.60%), MailEnable — 1.81% (1.82%), MDaemon — 0.40% (0.40%), Microsoft Exchange — 0.20% (0.19%), OpenSMTPD — 0.12% (0.09%).
Novedades principales:
- Se ha trabajado para simplificar la migración de las tablas hash: y btree: a lmdb: o cdb: debido a la finalización del suministro en algunas distribuciones de Linux de las bibliotecas BerkeleyDB. Para mantener la compatibilidad con la herramienta Mailman, que ejecuta el comando postmap hash:/path/to/file al agregar o eliminar listas de correo, se ha añadido a Postfix el soporte para redirigir automáticamente tales comandos a opciones compatibles con los tipos de bases de datos soportados.
- Por defecto, se permite la conexión a servidores SMTP utilizando cifrado TLS. En la configuración del cliente SMTP, el parámetro smtp_tls_security_level se establece en 'may', si Postfix se compila con soporte para TLS. El valor 'may' activa el uso de TLS para servidores que soportan cifrado, pero permite retroceder a la transmisión de datos sin cifrado si el servidor no soporta TLS.
- En ESMTP se ha implementado el soporte para la extensión 'REQUIRETLS' (RFC 8689), que permite al remitente solicitar el cifrado TLS garantizado en todo el camino de entrega del mensaje. En este modo, cualquier servidor SMTP y LMTP involucrado en el reenvío del correo debe admitir REQUIRETLS y la autenticación estricta a través de DANE o STS, y al transmitir el mensaje a través de otros servidores, también debe utilizar REQUIRETLS.
- Se ha asegurado el registro en los logs de nivel de seguridad TLS, es decir, si se ha solicitado el nivel REQUIRETLS para la transmisión del mensaje, la información sobre el uso de REQUIRETLS ahora se guardará en el registro.
- Se ha añadido el parámetro smtp_tls_enforce_sts_mx_patterns, que incluye el modo de compatibilidad entre el cliente SMTP Postfix y los complementos MTA-STS (MTA Strict Transport Security), que requieren la activación del soporte para TLSRPT para el reenvío de atributos STS. Al establecer este parámetro, que está activo por defecto, el cliente SMTP Postfix solo se conectará al servidor MX si su nombre coincide con el patrón especificado en las políticas STS. De lo contrario, se utilizará el comportamiento anterior: la posibilidad de conexión a los servidores MX basada en los registros MX en DNS cuando el certificado del servidor cumpla con las políticas STS. El mecanismo MTA-STS permite notificar al cliente que ha establecido una conexión a través de un canal no seguro sobre la posibilidad y los parámetros para establecer una conexión TLS segura. El soporte para el parámetro también se ha añadido a las utilidades postfix-tlspol y postfix-mta-sts-resolver.
- Se ha añadido soporte para algoritmos de cifrado resistentes a ataques con computadoras cuánticas, al compilar con OpenSSL 3.5 y versiones posteriores.
- Se han clasificado como obsoletos 16 parámetros de configuración, cuyo uso generará una advertencia en el registro sobre su eliminación en una de las versiones futuras. Entre los parámetros obsoletos se incluyen, por ejemplo, 'virtual_maps', 'fallback_relay', 'postscreen_whitelist_interfaces' y 'smtpd_client_connection_limit_exceptions'.
- Se ha añadido soporte para la salida de datos en formato JSON para los comandos: 'postconf -j|-jM|-jF|-jP', 'postalias -jq|-js', 'postmap -jq|-js' y 'postmulti -jl'.
- Se ha mejorado el manejo de errores en los filtros Milter que ocurren al procesar mensajes recibidos a través de conexiones SMTP establecidas hace mucho tiempo. El valor del parámetro #milter_default_action ha sido cambiado de 'tempfail' a 'shutdown', que implica cerrar la conexión con el cliente.
Fuente: opennet.ru
