Cómo agregar antivirus y protección de spam al servidor de correo postfix con clamav y spamassassin - Parte 3

Cómo agregar antivirus y protección de spam al servidor de correo postfix con clamav y spamassassin - Parte 3

En los dos artículos anteriores de este Sufijo Serie que aprendió a configurar y administrar la base de datos del servidor de correo electrónico a través de PhPMyAdmin y cómo configurar Postfix y Dovecot para manejar el correo entrante y saliente. Además, explicamos cómo configurar un cliente de correo, como Thunderbird, para las cuentas virtuales que creamos anteriormente.

  1. Configurar el servidor de correo postfix y Dovecot con Mariadb - Parte 1
  2. Cómo configurar Postfix y Dovecot con usuarios de dominio virtual - Parte 2
  3. Instale y configure el cliente RoundCube Webmail con usuarios virtuales en Postfix - Parte 4
  4. Use Sagator, una puerta de enlace antivirus/antispam para proteger su servidor de correo - Parte 5

Dado que ninguna configuración del servidor de correo electrónico puede completarse sin tomar precauciones contra virus y spam, vamos a cubrir ese tema en el artículo actual.

Integrar clamav y spamassassin para proteger el postfix

Tenga en cuenta que incluso cuando *nix-like Los sistemas operativos generalmente se consideran libres de virus, es probable que los clientes que usan otros sistemas operativos también se conecten a su servidor de correo electrónico.

Por esa razón, debe proporcionarles la confianza de que ha tomado las medidas necesarias para protegerlas en la medida posible de tales amenazas.

Configuración de spamassassin para postfix

En el proceso de recibir correo electrónico, Spamassassin se interpondrá entre el mundo exterior y los servicios de correo electrónico que se ejecutan en su servidor en su propio servidor. Si encuentra, de acuerdo con sus reglas de definición y configuración, que un mensaje entrante es spam, reescribirá la línea de asunto para identificarlo claramente como tal. Veamos como.

El archivo de configuración principal es /etc/mail/spamassassin/local.CF, Y debemos asegurarnos de que las siguientes opciones estén disponibles (agrégelas si no están presentes o descomenudan si es necesario):

local.CF
informar_safe 0 required_score 8.0 rewrite_header sujeto [spam] 
  1. Cuando report_safe se establece en 0 (Valor recomendado), el spam entrante solo se modifica modificando los encabezados de correo electrónico según Rewrite_header. Si está configurado en 1, El mensaje se eliminará.
  2. Para establecer la agresividad del filtro de spam, requerido_score debe ser seguido por un número entero o decimal. Cuanto menor es el número, más sensible se vuelve el filtro. Configuración requerido_score a un valor en algún lugar entre 8.0 y 10.0 se recomienda para un sistema grande que sirva a muchos (~ 100s) cuentas de correo electrónico.

Una vez que haya guardado esos cambios, habilite e inicie el servicio de filtro de spam, y luego actualice las reglas de spam:

# SystemCTL Habilitar SpamassAnsin # SystemCTL Start Spamassassin # SA-UPDATE 

Para obtener más opciones de configuración, es posible que desee consultar la documentación ejecutando perldoc mail :: spamassassin :: conf en la línea de comando.

Integrando Postfix y Spamassassin

Para integrar eficientemente Postfix y SpamassAssin, necesitaremos crear un usuario y un grupo dedicado para ejecutar el Daemon del filtro de spam:

# userAdd spamd -s/bin/false -d/var/log/spamassassin 

A continuación, agregue la siguiente línea en la parte inferior de /etc/postfix/maestro.CF:

maestro.CF
spamassassin unix - n n - - pipe flags = r user = spamd argv =/usr/bin/spamc -e/usr/sbin/sendmail -oi -f $ remitente $ destinatario 

E indique (en la parte superior) que Spamassassin servirá como Filtro de contenido:

-o content_filter = spamassassin 
Integre Postfix con Spamassassin

Finalmente, reinicie Postfix para aplicar cambios:

# SystemCTL reiniciar Postfix 

Para verificar que Spamassassin está funcionando correctamente y detectando spam entrante, una prueba conocida como Gtube (Prueba genérica para correo electrónico a granel no solicitado) está provisto.

Para realizar esta prueba, envíe un correo electrónico desde un dominio fuera de su red (como Yahoo!, Hotmail, o gmail) a una cuenta que reside en su servidor de correo electrónico. Establezca la línea de asunto en lo que desee e incluya el siguiente texto en el cuerpo del mensaje:

XJS*C4JDBQADN1.Nsbn3*2idnen*gtube-standard-anti-tup-test-eMail*c.34x 

Por ejemplo, enviar el texto anterior en un cuerpo de mensaje desde mi cuenta de Gmail produce el siguiente resultado:

Verificar spamassassin detectando correos de spam

Y muestra el aviso correspondiente en los registros:

# JournalCtl | spam grep spam 
Monitorear los registros de correo de Spamassassin

Como puede ver en la imagen de arriba, este mensaje de correo electrónico obtuvo una puntuación de spam de 1002.3. Además, puede probar spamassassin Justo desde la línea de comando:

# spamassassin -d < /usr/share/doc/spamassassin-3.4.0/sample-spam.txt 

El comando anterior producirá una salida realmente detallada que debería incluir lo siguiente:

Prueba de spamassassin spam desde la línea de comandos

Si estas pruebas no tienen éxito, es posible que desee consultar la Guía de integraciones de Spamassassin.

Iniciar clamav y actualizar definiciones de virus

Para comenzar, necesitaremos editar /etc/clamd.D/escaneo.confusión. Descopment la siguiente línea:

Localsocket/var/run/clamd.escanear.calcetín 

y comenta o elimina la línea:

Ejemplo 

Luego habilite e inicie el demonio del escáner clamav:

# SystemCTL Habilitar [correo electrónico protegido] # SystemCTL Inicio [correo electrónico protegido] 

Y no olvides establecer el antivirus_can_scan_system Selinux booleano a 1:

# setsebool -p antivirus_can_scan_system 1 

En este punto, vale la pena verificar el estado del servicio:

Iniciar y actualizar las definiciones de virus de clamav

Como puede ver en la imagen de arriba, nuestras firmas de virus son más antiguas que 7 días. Para actualizarlos usaremos una herramienta llamada FreshClam que se instaló como parte del timbre paquete.

La forma más fácil de actualizar las definiciones del virus es a través de un trabajo cron que se ejecuta tan a menudo como se desee (una vez al día, por ejemplo, en 1 am El tiempo del servidor como se indica en el siguiente ejemplo se considera suficiente):

00 01 * * * root/usr/share/clamav/freshclam-sleep 

También puede actualizar las definiciones de virus manualmente, pero antes de que también tenga que eliminar o comentar la siguiente línea en /etc/Freshclam.confusión.

Ejemplo 

Ahora deberías poder ejecutar:

# FreshClam 

que actualizará las definiciones de virus según lo desee:

Base de datos de Virus de actualización de FreshClam

Prueba de clamav para virus en correos electrónicos

Para verificar Clamav está funcionando correctamente, descargemos un virus de prueba (que podemos obtener de http: // www.eicar.org/descargar/eicar.com) al MailDir de [correo electrónico protegido] (que se encuentra en /Home/Vmail/LinuxNewz.com/tecmint/maildir) para simular un archivo infectado recibido como archivo adjunto de correo:

# CD/Home/Vmail/Linuxnewz.com/tecmint/maildir # wget http: // www.eicar.org/descargar/eicar.comunicarse 

Y luego escanear el /Home/Vmail/LinuxNewz.comunicarse directorio recursivamente:

# clamscan -Infected - -Remove - -Recursive/Home/Vmail/LinuxNewz.comunicarse 
Escaneo de clamav para el virus de correo electrónico

Ahora, siéntase libre de configurar este escaneo para ejecutar a través de un cronjob. Crea un archivo llamado /etc/cron.Daily/DailyClamscan, Inserte las siguientes líneas:

#!/bin/bash scan_dir = "/home/vmail/linuxnewz.com "log_file ="/var/log/clamav/diaryclamscan.Log "Touch $ log_file/usr/bin/clamscan --infected ---remove - -recursivo $ scan_dir >> $ log_file 

y otorgar permisos de ejecución:

# chmod +x /etc /cron.Daily/DailyClamscan 

El CRONJOB anterior escaneará el directorio del servidor de correo recursivamente y dejará un registro de su operación en /var/log/clamav/diaryclamscan.registro (Asegúrate que /var/log/clamav existe el directorio).

Veamos qué sucede cuando enviamos el eicar.comunicarse presentar desde [correo electrónico protegido] a [correo electrónico protegido]:

Probar y encontrar virus en correos electrónicos

Resumen

Si siguió los pasos descritos en este tutorial y en los dos artículos anteriores de esta serie, ahora tiene un servidor de correo electrónico posterior a la protección de spam y antivirus.

DESCARGO DE RESPONSABILIDAD: Tenga en cuenta que la seguridad del servidor es un tema vasto y no se puede cubrir adecuadamente en una serie corta como esta.

Por esa razón, le recomiendo que se familiarice con las herramientas utilizadas en esta serie y sus páginas de hombre. Aunque he hecho todo lo posible para cubrir los conceptos esenciales asociados con este tema, no asuma que después de pasar por esta serie está completamente calificado para configurar y mantener un servidor de correo electrónico en un entorno de producción.

Esta serie se pretende como un punto de partida y no como una guía exhaustiva para la administración del servidor de correo en Linux.

Probablemente pensarás en otras ideas que pueden enriquecer esta serie. Si es así, siéntase libre de dejarnos una nota usando el formulario de comentarios a continuación. Las preguntas y otras sugerencias también son apreciadas: esperamos tener noticias suyas!