LinuxParty
NUESTRO SITIO necesita la publicidad para costear hosting y el dominio. Por favor considera deshabilitar tu AdBlock en nuestro sitio. También puedes hacernos una donación entrando en linuxparty.es, en la columna de la derecha.
Este tutorial muestra cómo implementar SPF (Sender Policy Framework
) en una instalación de Postfix 2.x. Sender Policy Framework
es un estándar abierto que especifica un método técnico para evitar la falsificación de direcciones de remitentes (consulte http://www.openspf.org/Introduction). Hay muchas extensiones y parches SPF disponibles para Postfix, pero la mayoría requiere que volver a compilar Postfix. Por lo tanto, instalaremos el paquete postfix-policyd-spf-perl de openspf.org, que es un paquete Perl y se puede implementar en instalaciones Postfix existentes (no se requiere compilación de Postfix).
Esto, ha funcinado perfectamente en CentOS 8, RHEL 8 y Debian
Empezaremos por buscar los paquetes a instalar con yum search spf
[root@server ~]# yum search spf Última comprobación de caducidad de metadatos hecha hace 1:51:55, el vie 08 ene 2021 18:12:17 CET. ================= Coincidencia en Nombre , Resumen: spf ================= libspf2.x86_64 : An implementation of the SPF specification libspf2-apidocs.noarch : API documentation for the libspf2 library libspf2-devel.x86_64 : Development tools needed to build programs that use libspf2 libspf2-progs.x86_64 : Programs for making SPF queries using libspf2 perl-Mail-SPF_XS.x86_64 : An XS implementation of Mail::SPF pypolicyd-spf.noarch : SPF Policy Server for Postfix (Python implementation) python3-pyspf.noarch : Python module and programs for SPF (Sender Policy Framework) ================= Coincidencia en Nombre: spf ================= perl-Mail-SPF.noarch : Object-oriented implementation of Sender Policy Framework [root@server ~]#
Vamos a instalar los paquetes: mos por buscar los paquetes a instalar con yum search spf (en CentOS,RHEL, en Debian apt-cache search spf)
Si usas CentOS, RedHat, etc... usas p.ej.: yum install python3-pyspf
Si usas Debian, Ubuntu, etc... usas p.ej.: apt-get install python3-pyspf
pypolicyd-spf python3-pyspf perl-Mail-SPF
Editaremos, si conviene el fichero:
/etc/python-policyd-spf/policyd-spf.conf
Podemos usar el editor "vi" o "vim"
vim /etc/python-policyd-spf/policyd-spf.conf
Podemos incluir las WhiteList para incluir las IP, o Domain_Whitelist, para incluir sólo algunos dominios, o todo junto... por ejemplo
### WhiteList = 81.88.48.32/27,81.88.50.224/27,195.110.124.132 Domain_Whitelist = linuxpary.es,extrehost.com ####
Debe existir el fichero: /usr/bin/policyd-spf, que en este caso debe ser un enlace a: /usr/libexec/postfix/policyd-spf
[root@arash ~]# ll /usr/bin/policyd-spf lrwxrwxrwx [...] /usr/bin/policyd-spf -> /usr/libexec/postfix/policyd-spf Para lo que crearemos en enlace de la siguiente manera: Primero, debemos asegurarnos que existe: /usr/libexec/postfix/policyd-spf, así: ll /usr/libexec/postfix/policyd-spf Una vez comprobado que existe, creamos el enlace:
ln -sf /usr/libexec/postfix/policyd-spf /usr/bin/policyd-spf
Volveremos al punto anterior, para comprobar que existe: /usr/bin/policyd-spf, y es un enlace creado al punto anterior.
[root@arash ~]# ll /usr/bin/policyd-spf
lrwxrwxrwx [...] /usr/bin/policyd-spf -> /usr/libexec/postfix/policyd-spf
Ahora, editaremos el fichero /etc/postfix/master.cf e incluiremos al final del fichero:
policyd-spf unix - n n - 0 spawn user=nobody argv=/usr/bin/policyd-spf
Y en el fichero /etc/postfix/main.cf incluiremos... en la linea: smtpd_recipient_restrictions, al final: check_policy_service unix:private/policyd-spf
Quedando de la siguiente manera:
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination, check_policy_service unix:private/policyd-spf
En el fichero /etc/postfix/main.cf y busque la directiva smtpd_recipient_restrictions . Debería contener accept_unauth_destination en esa directiva, y justo después de accept_unauth_destination agrega check_policy_service unix:private/policyd-spf. Pero la verdad, es que yo tengo reject_unauth_destination, y funciona igualmente bien.
Después reiniciamos postfix
service postfix restart
Comprobamos que las cosas funcionan...
tail -f /var/log/maillog
Con esto, habríamos terminado de instalar y configurarlo todo.
Si te ha gustado, puntúa el artículo y compártelo en tus redes sociales.

-
Linux
- 10 configuraciones útiles de Sudoers para configurar 'sudo' en Linux
- 'Codon' compila Python a código de máquina nativo que es incluso más rápido que C
- Cómo instalar y usar el editor de texto 'NeoVim' [basado en Vim]
- Cómo verificar el tipo de virtualización en Linux
- Pruebas de estrés CPU y memoria (VM) en un Linux/Unix con Stress-ng
- Cambiar la hora en Linux con Chrony
- Como instalar, implementar y configurar SPF en Linux para Postfix, CentOS, RHEL, AlmaLinux y Rocky Linux
- 4 formas de ver o monitorear archivos de registro en tiempo real
- Cómo mostrar aleatoriamente arte ASCII en la terminal de Linux
- Crece la cuota de usuarios Linux en Steam gracias a Steam Deck
- Comprobar la salud del disco duro en Linux
- Compartir archivos en la red LAN, sin nada, todo con un simple script en Python
- Colores en la consola Linux y Shell Script
- Cómo cambiar el color de tu terminal Linux
- Woof: Compartir archivos/ficheros fácilmente en su LAN o red local, sin Samba, entre Linux, Mac, Windows, Android e iPhone