Sustituir Amavisd por Rspamd en ISPConfig 3.1 en Debian y Ubuntu

Este tutorial describe los pasos para sustituir el software de escaneo de spam amavis (amavisd-new) por Rspamd en un servidor ISPConfig 3.1. El tutorial está escrito para Debian y Ubuntu Linux.

Requisitos previos

  • Acceso root.
  • Debe estar instalado ISPConfig 3.1. La versión de ISPConfig será 3.1.15 o más reciente después de este procedimiento.
  • El servidor utiliza Debian 9 – 10 o Ubuntu 18.04 en un procesador x86_64 (Linux 64Bit). Las versiones anteriores de Debian y Ubuntu también podrían funcionar, pero no las he probado.

Todos los comandos que aparecen a continuación se ejecutan como usuario root. Inicia sesión como usuario root o utiliza‘su –‘ en Debian o‘sudo -s‘ en Ubuntu para convertirte en usuario root antes de continuar con esta guía.

Nota: Este procedimiento reconfigurará todos los buzones y alias para escribir la configuración Rspamd de cada cuenta (similar a una ejecución de ISPConfig Herramientas > resincronizar), esto puede llevar bastante tiempo y recursos en servidores de correo grandes.

Instalar Redis

La configuración de Rspamd para ISPConfig requiere Redis, así que lo instalaremos primero.

apt-get install redis-server lsb-release

Instala Unbound si BIND no está instalado

Si tu servidor no tiene instalado un servidor DNS local, entonces deberás instalar un resolver DNS local como unbound.

En primer lugar, comprueba si BIND está instalado utilizando este comando:

which named

si el comando devuelve la ruta al binario nombrado:

root@server1:/tmp# which named
/usr/sbin/named

entonces BIND está instalado y debes saltarte este paso. En caso de que no devuelva ninguna ruta a named, entonces instala unbound:

apt-get install unbound

Instalar y configurar Rspamd

El primer paso para instalar Rspamd es añadir el repositorio de paquetes Rspamd Debian/Ubuntu.

CODENAME=`lsb_release -c -s` 
wget -O- https://rspamd.com/apt-stable/gpg.key | apt-key add - 
echo "deb [arch=amd64] http://rspamd.com/apt-stable/ $CODENAME main" > /etc/apt/sources.list.d/rspamd.list 
echo "deb-src [arch=amd64] http://rspamd.com/apt-stable/ $CODENAME main" >> /etc/apt/sources.list.d/rspamd.list

Actualiza la lista de paquetes:

apt-get update

E Instala Rspamd con apt:

apt-get install rspamd

Activa Redis en la configuración de Rspamd.

echo 'servers = "127.0.0.1";' > /etc/rspamd/local.d/redis.conf

Aumenta el historial de Rspamd, activa la compresión y muestra el asunto en el historial. Este paso es opcional.

echo "nrows = 2500;" > /etc/rspamd/local.d/history_redis.conf 
echo "compress = true;" >> /etc/rspamd/local.d/history_redis.conf
echo "subject_privacy = false;" >> /etc/rspamd/local.d/history_redis.conf

Después reinicia Rspamd.

systemctl restart rspamd

Actualizar ISPConfig

Es necesario actualizar ISPConfig para habilitar la configuración de Rspamd. Cuando el actualizador de ISPConfig te pregunte si debe reconfigurar los servicios, elige«sí».

cd /tmp
wget http://www.ispconfig.org/downloads/ISPConfig-3-stable.tar.gz
tar xvfz ISPConfig-3-stable.tar.gz
cd ispconfig3_install/install
php -q update.php

Verás la línea«Configurando Rspamd» en la salida del script de actualización cuando se detecte y configure Rspamd.

Habilitar Rspamd en ISPConfig

El último paso requiere que entres en ISPConfig como usuario ‘admin’.

Entra en ISPConfig

En ISPConfig navega a Sistema > Configuración del Servidor > Correo.

Allí cambia el valor del campo Filtro de Contenido de Amavisd a Rspamd y pulsa el botón guardar en la parte inferior de la página. Ahora ISPConfig empezará a reconfigurar todos los buzones para Rspamd.

Cuando vuelvas aSistema > Config Servidor > Correopodrás ver algunos campos nuevos donde puedes leer y establecer la contraseña de Rspamd.

Contraseña rspamd

Hacer que el Panel de Rspamd sea accesible desde el exterior

El panel de control de Rspamd está en el puerto 11334 en localhost, por lo que no se puede acceder a él desde el exterior. En este capítulo, crearemos un sitio web en ISPConfig y añadiremos una configuración proxy. La configuración difiere entre el servidor web Apache y Nginx, utiliza el capítulo que coincida con tu software de servidor web instalado.

Apache

Activa el Módulo Proxy y reinicia apache.

a2enmod proxy
systemctl restart apache2

A continuación, inicia sesión en ISPconfig y crea un sitio web que se utilizará para acceder a la GUI de Rspamd. Eres libre de elegir el nombre de dominio, yo utilizaré aquí rspamd.ejemplo.com. No tienes que habilitar ningún lenguaje de programación u otras opciones en ese sitio, simplemente deja todo en los valores predeterminados. Sin embargo, es muy recomendable activar SSL y Let’s encrypt.

Añadir sitio web para Rspamd GUI

Ve a la pestaña Opciones del sitio web e introduce la siguiente configuración en el campo Directivas de Apache. Para Apache 2.2, utiliza:

 <Location /rspamd>
 Order allow,deny
 Allow from all
 </Location>
 RewriteEngine On
 RewriteRule ^/rspamd$ /rspamd/ [R,L]
 RewriteRule ^/rspamd/(.*) http://127.0.0.1:11334/$1 [P]

Para Apache 2.4, utiliza esto en su lugar:

<Location /rspamd>
 Require all granted
 </Location>
 RewriteEngine On
 RewriteRule ^/rspamd$ /rspamd/ [R,L]
 RewriteRule ^/rspamd/(.*) http://127.0.0.1:11334/$1 [P]

Ahora puedes acceder a la GUI de Rspamd con un navegador web https://rspamd.example.com/rspamdSe te pedirá una contraseña, utiliza la contraseña que generaste durante la instalación de Rspamd.

Nginx

Entra en ISPconfig y crea un sitio web que se utilizará para acceder a la GUI de Rspamd. Eres libre de elegir el nombre de dominio, yo utilizarérspamd.ejemplo.com aquí. No tienes que habilitar ningún lenguaje de programación u otras opciones en ese sitio, simplemente deja todo en los valores predeterminados. Sin embargo, es muy recomendable activar SSL y Let’s encrypt.

Añadir sitio web en servidor web Nginx

Ve a la pestaña Opciones del sitio web e introduce la siguiente configuración en NginxDirectivas de Nginx.

location / {
 root /usr/share/rspamd/www/;
 try_files $uri @proxy;
}

location @proxy {
proxy_pass http://127.0.0.1:11334;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
}

Ahora puedes acceder a la GUI de Rspamd con un navegador webhttps://rspamd.example.com/.Se te pedirá una contraseña, utiliza la contraseña que has establecido para Rspamd en ISPConfig.

GUI Rspamd

Ahora puedes acceder a la GUI de Rspamd con un navegador y obtener estadísticas detalladas sobre la tasa y el rendimiento del filtro de spam.

ISPConfig ha sido reconfigurado para utilizar Rspamd en lugar de Amavis para buscar correos spam. Rspamd también se utiliza para Dkim Signing.

Desactivar Amavis

Por último, detenemos y desactivamos el servicio amavisd:

systemctl stop amavisd-new
systemctl disable amavisd-new

Conclusión

Rspamd es un moderno software de escaneo de spam de alto rendimiento para servidores Linux que ofrece resultados de filtrado muy precisos. ISPConfig soporta Rspamd como unidad de escaneo de spam desde la versión 3.1.15. Este tutorial muestra como sustituir amavisd.new por Rspamd en un servidor ISPConfig 3.1.

Scroll al inicio