ClamAV y Procmail
Lo que primero tenemos que hacer es instalar la versión de ClamAV en nuestro servidor, para ello podéis ver una de las maneras de hacerlo en el siguiente enlace: Instalación de ClamAV. Una vez finalizada la instalación siempre debemos revisar el archivo de configuración que trae por defecto por si tenemos que variar algún parámetro en concreto.
Despues de esto solo nos queda tal y como lo he realizado se creará un archivo .procmail.rc en cada uno de los buzones del servidor. con el siguiente contenido. La ruta para almacenar este archivo sería /var/qmail/mailnames/dominio/cuenta/.procmailrc
#Ruta base del maildir de la cuenta (dominio=nombre del dominio), (cuenta=nombre del buzón)
MAILDIR=/var/qmail/mailnames/dominio/cuenta/Maildir
SHELL=/bin/sh
AV_REPORT=`clamdscan –stdout –no-summary – | cut -d: -f 2`
VIRUS=`if [ "$AV_REPORT" != " OK" ]; then echo Yes; else echo No;fi`
#Añade una linea a la cabecera del correo con X-Virus: Yes ó No
:0fw
| formail -i “X-Virus: $VIRUS”
#Modifica el Asunto del mensaje con el siguiente mensaje y le concatena el nombre del virus detectado.
:0fw
* ^X-Virus: Yes
| formail -i “Virus: $AV_REPORT” -i “Subject:CUIDADO MENSAJE CON VIRUS: $AV_REPORT”
#si es detectado como virus lo almacena en la carpeta Spam
:0
* ^X-Virus: Yes
/var/qmail/mailnames/dominio/cuenta/Maildir/.Spam/cur
# Ahora le diremos que mueva todos los correos que incluyan en la cabecera la siguiente linea
:0
* ^X-Spam-Status: Yes.*
/var/qmail/mailnames/dominio/cuenta/Maildir/.Spam/cur
# Filtra archivos adjuntos peligrosos
:0 B:
*name=.*\.(bat|com|ade|adp|app|bas|bin|chm|class|cmd|cpl|crt|dll|drv|exe|fxp|hlp|hta|inf|ink|ins|isp|js|jse|lnk|mda|mdb|mde|mdt|mdw|mdz|msc|msi|msp|mst|nlm|ops|ovl|pcd|pif|prf|prg|reg|scf|scr|sct|shb|shs|sys|url|vb|vbe|vbs|vxd|wsc|wsf|wsh)
/var/qmail/mailnames/dominio/cuenta/Maildir/.Spam/cur
Este archivo lo podemos cargar a mano en cada uno de los buzones que tenemos dados de alta en el servidor o utilizar un script para desplegar los cambios.
Si a alguien se le ocurre una manera de mejorarlo me encantaría que me las dijeseis.
Share on Facebook
[...] Este script realiza los siguientes pasos, comprueba si existen los documentos de texto que almacenan los dominios dados de alta en la máquina así como los buzones de cada uno. Luego empieza a recorrer los directorios copiando dentro de cada uno el archivo .procmailrc y .qmail, una ve finalizado borra los TXT. Por lo tanto con él una tarea tan dura como la de seria reemplazar un archivo común en todos los buzones se haría en menos de un minuto, solamente haciendo la modificación en el archivo de muestra, como sería el escrito en el post Clamav+Procmail [...]