Cómo usar Sagator, una puerta de enlace antivirus / antispam, para proteger su servidor de correo


Leemos sobre las infecciones de virus (las nuevas surgen todo el tiempo) y de alguna manera nos afecta el correo no deseado a diario. Si bien hay muchas soluciones gratuitas y comerciales (disponibles como aplicaciones cliente) para ambas molestias, los administradores de sistemas deben tener una estrategia para enfrentar estas amenazas antes de que lleguen a los buzones de los usuarios.

Una de estas estrategias es configurar una puerta de enlace antivirus / antispam . Puede pensar en esta herramienta como una capa intermedia (o filtro) entre el mundo exterior y su red interna en lo que respecta al contenido del correo electrónico.

Además, si lo piensa, es mucho más fácil instalar y mantener una única pieza de software en una sola máquina (el servidor de correo) que hacer lo mismo en varias máquinas individualmente.

En este artículo, le presentaremos Sagator , una pasarela antivirus/antispam para servidores de correo Linux escrita en Python. Entre otras cosas, Sagator proporciona registro de bases de datos, estadísticas de uso e informes diarios para los usuarios. Dicho esto, vamos a empezar.

Instalación de Sagator y Postfix Mail Server

Para instalar Sagator en CentOS/RHEL 7 , descargue e instale los siguientes paquetes de RPM. La última versión beta (7) incluye soporte y correcciones para systemd , por eso preferimos instalarlo usando este método en lugar de descargar el paquete desde los repositorios.

# rpm -Uvh https://www.salstar.sk/pub/sagator/epel/testing/7/i386/sagator-core-1.3.2-0.beta7.el7.noarch.rpm
# rpm -Uvh https://www.salstar.sk/pub/sagator/epel/testing/7/i386/sagator-1.3.2-0.beta7.el7.noarch.rpm

Si está realizando esta instalación en un servidor nuevo, tenga en cuenta que es necesario instalar otros paquetes como dependencias, entre los que podemos mencionar Postfix, ClamAV y SpamAssassin.

Además, es posible que también desee instalar Rrdtool , una utilidad para crear y mostrar día / semana / mes / año gráficos del total / limpio / virus / correo no deseado .

Estos gráficos estarán disponibles en /var/www/html/sagator una vez que el servicio y sus dependencias sean completamente funcionales.

# yum install epel-release
# yum install postfix spamassassin clamav clamav-scanner clamav-scanner-systemd clamav-data clamav-update rrdtool

Esto no es una sorpresa, ya que necesitaremos un servidor de correo, y el software antivirus/antispam que Sagator puede conectar. Además, es posible que tengamos que instalar el paquete mailx, que proporciona las funcionalidades de MUA (Agente de usuario de correo, también conocido como Agente de correo electrónico).

En Debian y Ubuntu , deberá instalar Sagator desde un paquete .deb precompilado, que puede descargar desde aquí e instalar de la siguiente manera:

# wget https://www.salstar.sk/pub/sagator/debian/pool/jessie/testing/sagator-base_1.3.2-0.beta7_all.deb 
# wget https://www.salstar.sk/pub/sagator/debian/pool/jessie/testing/sagator_1.3.2-0.beta7_all.deb 
# dpkg -i sagator-base_1.3.2-0.beta7_all.deb
# dpkg -i sagator_1.3.2-0.beta7_all.deb 
# wget https://www.salstar.sk/pub/sagator/ubuntu/pool/trusty/testing/sagator-base_1.3.2-0.beta7_all.deb 
# wget https://www.salstar.sk/pub/sagator/ubuntu/pool/trusty/testing/sagator_1.3.2-0.beta7_all.deb 
# sudo dpkg -i sagator-base_1.3.2-0.beta7_all.deb
# sudo dpkg -i sagator_1.3.2-0.beta7_all.deb

Como fue el caso con CentOS , deberá instalar y configurar el servidor de correo, SpamAssassin y ClamAV :

# aptitude install postfix spamassassin clamav clamav-daemon -y

No olvides usar sudo en Ubuntu .

A continuación, independientemente de la distribución, deberá actualizar la definición del virus antes de iniciar ClamAV . Antes de hacerlo, edite /etc/clamd.d/scan.conf y /etc/freshclam.conf y elimine la siguiente línea:

Example

Además, en /etc/clamd.d/scan.conf , asegúrese de que la siguiente línea no tenga comentarios:

LocalSocket /var/run/clamd.scan/clamd.sock

Por último, hacer

# freshclam

Y comenzar/habilitar ClamAV, SpamAssassin, y Sagator:

# systemctl start [email protected]
# systemctl start spamassassin
# systemctl start sagator
# systemctl enable [email protected]
# systemctl enable spamassassin
# systemctl enable sagator

Es posible que desee revisar el registro de Sagator para asegurarse de que el servicio se inició correctamente:

# systemctl status -l sagator

o para más detalles,

# tail -f /var/spool/vscan/var/log/sagator/sagator.log

Los comandos anteriores se ilustran en la siguiente imagen:

Configurando Sagator en Linux

El archivo de configuración principal se encuentra en /etc/sagator.conf . Echemos un vistazo al conjunto mínimo de directivas que debemos establecer para que Sagator funcione correctamente:

Paso 1 : utilizaremos Sagator dentro de un chroot , así que asegúrate de que la siguiente línea no tenga comentarios:

CHROOT = '/var/spool/vscan'

Paso 2 : asegúrese de que la directiva LOGFILE coincida con el siguiente valor:

LOGFILE = CHROOT + '/var/log/sagator/sagator.log'

Paso 3 : elige un antivirus que se integrará con Sagator. Para hacerlo, asegúrese de que las líneas resaltadas en la imagen de abajo no tengan comentarios:

Si bien es libre de elegir entre una amplia variedad de soluciones antivirus, ClamAV brinda mayor rendimiento y estabilidad. Aunque usaremos ClamAV en esta guía, tenga en cuenta que el archivo de configuración incluye las instrucciones para conectar Sagator a otras soluciones antivirus/antispam.

Cuando hayas terminado, corre

# sagator --test

Para comprobar el archivo de configuración. ¡Ninguna salida es algo bueno! De lo contrario, resuelva cualquier error que se encuentre antes de continuar.

Integración de Sagator con Postfix

Para integrar Sagator con Postfix , asegúrese de que las siguientes líneas estén presentes en /etc/postfix/main.cf y /etc/postfix/master.cf :

main.cf

mynetworks = 127.0.0.0/8
content_filter = smtp:[127.0.0.1]:27

master.cf

#smtp inet n - n -- smtpd
127.0.0.1:26 inet n - n - 30 smtpd
-o content_filter=
-o myhostname=localhost
-o local_recipient_maps=  -o relay_recipient_maps=
-o mynetworks=127.0.0.0/8  -o mynetworks_style=host
-o smtpd_restriction_classes=  -o smtpd_client_restrictions=
-o smtpd_helo_restrictions=  -o smtpd_sender_restrictions=
-o smtpd_data_restrictions=
-o smtpd_recipient_restrictions=permit_mynetworks,reject
-o receive_override_options=no_unknown_recipient_checks,no_header_body_checks
-o smtpd_use_tls=no

Luego reinicie postfix y asegúrese de que esté habilitado para iniciarse automáticamente en el arranque:

# systemctl restart postfix
# systemctl enable postfix

Ahora podemos proceder con las pruebas.

Prueba de Sagator

Para probar Sagator , envíe un correo electrónico desde el usuario root al usuario gacanepa con el siguiente cuerpo. Esto es nada más y nada menos que el estándar GTUBE ( Prueba genérica para correo electrónico masivo no solicitado ) proporcionado por SpamAssassin , como se muestra en la imagen a continuación. :

XJS*C4JDBQADN1.NSBN3*2IDNEN*GTUBE-STANDARD-ANTI-UBE-TEST-EMAIL*C.34X

Ahora veamos qué sucede cuando se envía un virus como archivo adjunto. En el siguiente ejemplo, usaremos la prueba EICAR (consulte esta entrada de Wikipedia para obtener más detalles):

# wget http://www.eicar.org/download/eicar.com
# mail -a eicar.com gacanepa

A continuación, compruebe el registro:

# tail -f /var/spool/vscan/var/log/sagator/sagator.log

Los correos electrónicos rechazados se devuelven al remitente con el aviso correspondiente:

¿Qué tiene de bueno esto? Como puede ver, spam y virus nunca llegan al servidor de correo de destino ni a los buzones de correo de los usuarios, pero se eliminan o rechazan en el nivel de la puerta de enlace.

Como mencionamos anteriormente, los gráficos están disponibles en http:/& lt; server ip o hostname & gt;/sagator :

Resumen

En este artículo, hemos explicado cómo instalar y configurar Sagator, una puerta de enlace antivirus/antispam que se integra perfectamente con y protege su servidor de correo.

Para obtener más información y funcionalidad (¡hay mucho más en este increíble software que podemos cubrir adecuadamente en un solo artículo!), Puede consultar el sitio web del proyecto en http://www.salstar.sk/sagator.

Como siempre, no dude en enviarnos una línea utilizando el formulario de comentarios a continuación si tiene alguna pregunta o comentario.

Un agradecimiento especial a Jan ONDREJ (SAL) , el desarrollador de Sagator , por su excelente soporte mientras escribía este artículo.