====== Revisar con ClamAV la mensajería entrante a la máquina ====== ===== Introducción ===== Para revisar la mensajería entrante a un equipo mediante el ClamAV, son posibles dos enfoques: * Mediante un script, salvar el flujo de correo entrante a un fichero temporal para revisarlo y luego reencauzarlo (esta es la solución para un usuario terminal) * Acoplar ClamAV al MTA (por ejemplo, al Postfix o al Exim). Esta es la solución para tener chequeado un nodo completo Analicemos la solución para el caso del usuario terminal, esto es, una persona con una máquina aislada que se conecta directamente a su proveedor de servicios de Internet. ===== Configuración ===== Si el cliente de correo es KMail, KlamAv puede automáticamente acoplar ClamAV y KMail, protegiendo el equipo. Para el caso de un cliente de correo como Evolution (no lo he probado con Thunderbird, pero supongo que en principio debe funcionar esta misma solución que presento a continuación) una vía es preparar un "filtro" que haga un "piping" del flujo (stream) de correo entrante (aprovechando que ClamAV es capaz de analizar un flujo mediante clamscan - ) hacia un fichero temporal, revisar ese fichero y luego reencauzar el correo, como se dijo anteriormente. La solución incluye instalar previamente el paquete zenity, para mostrar el resultado en una ventana gráfica. Así que instalo el paquete con aptitude install zenity como primera cosa.\\ Veamos el filtro:\\ #! /bin/sh\\ FILE=/tmp/$$_outclam.tmp\\ clamscan - 1> $FILE\\ if [ $? -eq 1 ]; then\\ STRING=$(grep "FOUND" $FILE |cut -d: -f2)\\ zenity --warning --title="evolution> Virus detected" --text="$STRING" &\\ exit 1\\ fi\\ exit 0 Ubico este script en, digamos, /usr/local/bin. Luego abro Evolution y busco el menú Editar/Filtro de Correo. Alli declaro un nuevo filtro (por ejemplo, con el nombre FiltroClamAV) y le indico en "Buscar elementos que cumplen con estos criterios" la opción "Si se cumplen todas las condiciones". En "Encauzar al programa" selecciono el camino hacia el script (/usr/local/bin/nombre-del-script) y le indico que el programa devuelve un 1 (clamscan devuelve un 1 cuando encuentra un virus). Finalmente en la opción "Luego" selecciono que mueva ese correo a una carpeta dedicada a los mensajes sospechosos o que sin más lo elimine. Acepto, cierro la ventana y ya está listo. La solución para proteger todo un nodo mediante ClamAV es un poco más complicada, pero por supuesto más completa. Queda para otro tutorial 8-) ===== Comprobación ===== Puedo hacer una prueba sencilla con una firma de virus para pruebas como EICAR para quedarme tranquilo. ===== Notas ===== Esta es la solución que uso habitualmente desde hace muchos años.