SpamAssassin · 4 min read · Jan 29, 2026
Añadiendo y Actualizando Conjuntos de Reglas de SpamAssassin con RulesDuJour
Añadiendo y Actualizando Conjuntos de Reglas de SpamAssassin con RulesDuJour
Versión 1.0
Autor: Falko Timme
Este artículo explica cómo puedes descargar conjuntos de reglas adicionales de SpamAssassin o actualizar automáticamente estos conjuntos de reglas con un script de shell llamado RulesDuJour. Estos conjuntos de reglas adicionales pueden aumentar drásticamente tu tasa de reconocimiento de spam. La mayoría de los conjuntos de reglas que RulesDuJour soporta se pueden encontrar en el sitio web de SA Rules Emporium.
¡No doy ninguna garantía de que esto funcione para ti!
1 Nota Preliminar
Asumo que ya has configurado SpamAssassin (no importa si es un demonio independiente o se llama a través de algún otro demonio como amavisd - RulesDuJour soporta todas estas configuraciones).
2 Descargando RulesDuJour
Me gustaría almacenar el script de RulesDuJour en el directorio /usr/local/sbin, así que voy allí y descargo el script:
cd /usr/local/sbin
wget http://sandgnat.com/rdj/rules_du_jour
chmod 750 rules_du_jour3 Configurando RulesDuJour
Cada vez que se llama al script de RulesDuJour, intenta leer el archivo de configuración /etc/rulesdujour/config. Por lo tanto, creamos ese archivo ahora:
mkdir /etc/rulesdujour
vi /etc/rulesdujour/config| TRUSTED_RULESETS="TRIPWIRE SARE_EVILNUMBERS0 SARE_RANDOM"; # TRIPWIRE, SARE_EVILNUMBERS0, SARE_EVILNUMBERS1, SARE_EVILNUMBERS2, BLACKLIST, BLACKLIST_URI, RANDOMVAL, BOGUSVIRUS, SARE_ADULT, SARE_FRAUD, SARE_BML, SARE_SPOOF, SARE_BAYES_POISON_NXM, SARE_OEM, SARE_RANDOM, SARE_HEADER, SARE_HEADER0, SARE_HEADER1, SARE_HEADER2, SARE_HEADER3, SARE_HEADER_ENG, SARE_HTML, SARE_HTML0, SARE_HTML1, SARE_HTML2, SARE_HTML3, SARE_HTML4, SARE_HTML_ENG, SARE_SPECIFIC, SARE_OBFU, SARE_OBFU0, SARE_OBFU1, SARE_OBFU2, SARE_OBFU3, SARE_REDIRECT, SARE_REDIRECT_POST300, SARE_SPAMCOP_TOP200, SARE_GENLSUBJ, SARE_GENLSUBJ0, SARE_GENLSUBJ1, SARE_GENLSUBJ2, SARE_GENLSUBJ3, SARE_GENLSUBJ_ENG, SARE_HIGHRISK, SARE_UNSUB, SARE_URI, SARE_URI0, SARE_URI1, SARE_URI3, SARE_URI_ENG, SARE_WHITELIST, SARE_WHITELIST_RCVD, SARE_WHITELIST_SPF, ZMI_GERMAN, SARE_STOCKS SA_DIR="/etc/mail/spamassassin"; # Cambia esto a tu directorio de configuración local de SA # probablemente /etc/mail/spamassassin. # Para amavisd chrooted, esto puede ser: # /var/amavisd/etc/mail/spamassassin MAIL_ADDRESS="[email protected]"; SINGLE_EMAIL_ONLY="true"; # Establece esto en "true" para enviar solo una notificación # de correo electrónico por ejecución de RDJ con "interesante" # actividad. Establece en "" para enviar un separado # por cada actividad interesante. EMAIL_RDJ_UPDATE_ONLY=""; # Establece esto en "true" para enviar notificaciones solo # cuando se ha recuperado una actualización para RDJ. Establece # en "" (predeterminado) para enviar notificaciones cada vez que un conjunto de reglas # ha cambiado. (No tiene efecto a menos que SINGLE_EMAIL_ONLY esté establecido) SA_LINT="/usr/bin/spamassassin --lint"; # Comando usado para verificar las reglas SA_RESTART="/etc/init.d/amavisd restart"; # Comando usado para reiniciar spamd # Puede ser /etc/rc.d/init.d/spamassassin restart # Para amavisd, puede ser /etc/init.d/amavisd restart # Para minedefang, puede ser /etc/init.d/mimedefang restart CURL_PROG="/usr/bin/curl"; # Ubicación del programa curl CURL_OPTS="-w %{http_code} --compressed -O -R -s -S -z"; # Parámetros del programa curl CURL="${CURL_PROG} ${CURL_OPTS}"; # Programa Curl con parámetros WGET_PROG="/usr/bin/wget"; # Ubicación del programa wget WGET_OPTS="-N" # Parámetros del programa wget WGET="${WGET_PROG} ${WGET_OPTS}"; # Programa Wget con parámetros PERL="/usr/bin/perl"; # Ubicación del programa perl GREP="/bin/grep"; # Ubicación del programa grep TAIL="/usr/bin/tail -n 1"; # Ubicación (y parámetros) para 'tail -n 1' HEAD="/usr/bin/head -n 1"; # Ubicación (y parámetros) para 'head -n 1' MAILCMD="/bin/mail"; # Ubicación del programa de correo # que toma y entiende la bandera -s # DEBUG="true"; # Descomenta esto para forzar el modo de depuración (o usa -D) |
La línea TRUSTED_RULESETS contiene todos los conjuntos de reglas que deseas usar (¡asegúrate de probar estos antes de usarlos en sistemas de producción!); he listado todos los conjuntos de reglas disponibles en un comentario al final de la línea.
La línea SA_DIR debe contener tu directorio de configuración de SpamAssassin; generalmente eso es /etc/mail/spamassassin.
La MAIL_ADDRESS debe contener una dirección de correo electrónico a la que deseas que RulesDuJour envíe notificaciones sobre el proceso de descarga/actualización.
Todas las demás opciones están explicadas (como comentarios) en el script anterior. El SA_RESTART debe ser el comando que se utiliza para reiniciar SpamAssassin. Si ejecutas SpamAssassin como un demonio independiente, probablemente sea algo como /etc/init.d/spamassassin restart o /etc/init.d/spamd restart; si SpamAssassin se llama a través de amavisd, debes especificar el comando utilizado para reiniciar amavisd (por ejemplo, /etc/init.d/amavisd restart).
Es una buena idea usar rutas completas para todos los programas en el script anterior (por ejemplo, /usr/bin/spamassassin en lugar de spamassassin o /usr/bin/curl en lugar de curl). Puedes averiguar la ruta completa de cada programa con which, por ejemplo.
which spamassassin
which curl
which wget
which perl
which grep
which tail
which head
which mail[root@server1 sbin]# which spamassassin
/usr/bin/spamassassin
[root@server1 sbin]# which curl
/usr/bin/curl
[root@server1 sbin]# which wget
/usr/bin/wget
[root@server1 sbin]# which perl
/usr/bin/perl
[root@server1 sbin]# which grep
/bin/grep
[root@server1 sbin]# which tail
/usr/bin/tail
[root@server1 sbin]# which head
/usr/bin/head
[root@server1 sbin]# which mail
/bin/mail
[root@server1 sbin]#4 Ejecutando RulesDuJour
Si estás en el directorio /usr/local/sbin, puedes ejecutar RulesDuJour así:
./rules_du_jourEn otro directorio puedes llamarlo así:
rules_du_jourPor supuesto, también puedes usar la ruta completa:
/usr/local/sbin/rules_du_jour5 Creando un Trabajo Cron
Por supuesto, no quieres ejecutar RulesDuJour manualmente cada vez; por lo tanto, configuramos un trabajo cron así:
crontab -e| 0 3 * * * /usr/local/sbin/rules_du_jour 2&>1 > /dev/null |
El trabajo cron anterior ejecutaría RulesDuJour cada noche a las 3:00h.
6 Enlaces
- SpamAssassin: http://spamassassin.apache.org
- RulesDuJour: http://sandgnat.com/rdj/rules_du_jour
- SpamAssassin Rules Emporium: http://www.rulesemporium.com
Recibe nuevas publicaciones en tu bandeja de entrada.
No spam. Cancela la suscripción en cualquier momento.