Postfix 3.6.0 llega con términos inclusivos, mejoras y mas
Después de un año de desarrollo, se lanzó una nueva rama estable del servidor de correo Postfix 3.6.0 y al mismo tiempo, se anunció la compatibilidad con la rama Postfix 3.2 lanzada a principios de 2017.
Postfix es uno de los pocos proyectos que combinan alta seguridad, confiabilidad y rendimiento al mismo tiempo, lo que se logró gracias a una arquitectura bien pensada y una política bastante estricta de codificación y auditoría de parches.
Principales novedades Postfix 3.6.0
En esta nueva versión se ha realizado una purga de referencias a las palabras «white» y «black», percibidas por algunos miembros de la comunidad como discriminación racial. En lugar de «white list» y «black list», ahora deben usar los siguientes términos «allow list» y «deny list» (por ejemplo, los parámetros postscreen_allowlist_interfaces, postscreen_denylist_action y postscreen_dnsbl_allowlist_threshold
). Los cambios afectan la documentación, la configuración del proceso posterior a la pantalla (firewall integrado) y el reflejo de la información en los registros.
Para conservar los términos antiguos en los registros, se proporciona el parámetro «respectful_logging=no
«, que debe especificarse en main.cf y también se ha conservado la compatibilidad con la configuración anterior de la pantalla posterior por motivos de compatibilidad con versiones anteriores. El archivo de configuración «master.cf» tampoco ha cambiado por ahora.
Por otra parte, otro de los cambios que se destaca de esta nueva versión es el modo compatibility_level=3.6
, se realizó la transición predeterminada para usar la función hash SHA256 en lugar de MD5.
Al configurar una versión anterior, MD5 continúa aplicándose en el parámetro de nivel de compatibilidad, pero para las configuraciones relacionadas con el uso de hashes, en las que el algoritmo no está definido explícitamente, se mostrará una advertencia en el registro.
Se eliminó el soporte para la versión de exportación del protocolo de intercambio de claves Diffie-Hellman (ahora se ignora el valor del parámetro tlsproxy_tls_dh512_param_file
) simplificado de problemas relacionados con la especificación de un programa controlador incorrecto en master.cf.
Para detectar tales errores, cada servicio interno, incluido el postdrop, ahora anuncia el nombre del protocolo antes de comenzar el intercambio de datos, y cada proceso del cliente, incluido el sendmail, verifica que el nombre del protocolo anunciado coincide con la variante admitida.
También se destaca que se agregó un nuevo tipo de asignaciones «local_login_sender_maps
« para un control flexible sobre la asignación de la dirección del sobre del remitente (pasada en el comando «MAIL FROM» durante una sesión SMTP) a los procesos sendmail y postdrop. Por ejemplo, para permitir que los usuarios locales, con la excepción de root y postfix, especifiquen solo sus inicios de sesión en sendmail usando el enlace de UID a nombre.
Los valores predeterminados de DNS utilizan una nueva API que admite subprocesos múltiples (seguros para subprocesos) de forma predeterminada. Para compilar con la API anterior, debe especificar al compilar «make makefiles CCARGS="-DNO_RES_NCALLS...
«.
Se agregó el modo «enable_threaded_bounces=yes
» para sustituir las notificaciones por problemas con la entrega, entrega retrasada o confirmación de entrega con el mismo ID de discusión (el cliente de correo mostrará la notificación en el mismo hilo, junto con el resto de los mensajes de correspondencia).
De forma predeterminada, la base de datos del sistema /etc/services ya no se utiliza para determinar los números de puerto TCP para SMTP y LMTP. En su lugar, los números de puerto se configuran a través del parámetro known_tcp_ports (predeterminado lmtp=24, smtp=25, smtps=submissions=465, submit=587
). En caso de que falte algún servicio en known_tcp_ports, se seguirá utilizando /etc/services.
El nivel de compatibilidad («nivel_compatibilidad») se ha elevado al valor «3.6» (el parámetro se cambió dos veces en el pasado, excepto 3.6, los valores 0 (predeterminado), 1 y 2 son compatibles).
A partir de ahora, «nivel_compatibilidad» cambiará al número de versión en el que se realizaron los cambios que rompen la compatibilidad. Para verificar los niveles de compatibilidad, se han agregado operadores de comparación separados a main.cf y master.cf, como «<= nivel» y «<nivel» (los operadores de comparación estándar no son adecuados, ya que contarán 3.10 menos que 3.9).
Finalmente se menciona que debido a los cambios en los protocolos internos utilizados para la comunicación entre los componentes de Postfix, es necesario detener el servidor de correo con el comando «postfix stop» antes de actualizar.
El no hacerlo puede resultar en fallas con los procesos pickup, qmgr, verify, tlsproxy y postscreen, lo que puede retrasar el envío de correos electrónicos hasta que se reinicie Postfix.
Si quieres conocer más al respecto, puedes consultar el siguiente enlace.