Estoy intentando configurar Exim para que rechace cualquiera $local_part
que coincida con un patrón.
Por ejemplo, sé que ninguna de las partes_locales de ninguno de los innumerables dominios que alojo contiene números. Entonces, sé que si alguien envía un correo electrónico a [email protected]
, sé que es spam y puedo rechazarlo con seguridad.
¿Cuál sería la mejor ACL para esto?
Respuesta1
La línea ACL podría ser la siguiente:
deny condition = ${lookup{$localpart}nwildlsearch{/path/to/the/black.list}{yes}{no}}
Mientras que black.list
contiene expresiones regulares PCRE, una por línea, así:
^.*[0-9].*
^.*[!@#$%^&*()_+].*
^.*sales.*
Respuesta2
Con sede fueraKondybas'srespuesta, una respuesta específica de Ubuntu/Debian es cambiar las siguientes líneas /etc/exim4/conf.d/main/01_exim4-config_listmacrosdefs
para que lean:
.ifndef CHECK_RCPT_LOCAL_LOCALPARTS
CHECK_RCPT_LOCAL_LOCALPARTS = ^[.] : ^.*[@%!/|`#&?0-9]
.endif
Claramente, esto sólo funciona para agregar [0-9]
al patrón. Otros patrones pueden requerirKondybas'ssolución.