Estou tentando configurar o Exim para rejeitar qualquer um $local_part
que corresponda a um padrão.
Por exemplo, sei que nenhuma das local_parts de qualquer um dos inúmeros domínios que hospedo conterá números. Então, sei que se alguém enviar um e-mail para [email protected]
, sei que é spam e posso rejeitá-lo com segurança.
Qual seria a melhor ACL para isso?
Responder1
A linha ACL pode ser a próxima:
deny condition = ${lookup{$localpart}nwildlsearch{/path/to/the/black.list}{yes}{no}}
Embora black.list
contenha expressões regulares PCRE, uma por linha assim:
^.*[0-9].*
^.*[!@#$%^&*()_+].*
^.*sales.*
Responder2
Baseado emKondybasderesponder, uma resposta específica do Ubuntu/Debian é alterar as seguintes linhas /etc/exim4/conf.d/main/01_exim4-config_listmacrosdefs
para ler:
.ifndef CHECK_RCPT_LOCAL_LOCALPARTS
CHECK_RCPT_LOCAL_LOCALPARTS = ^[.] : ^.*[@%!/|`#&?0-9]
.endif
É claro que isso só funciona para adicionar [0-9]
ao padrão. Outros padrões podem exigirKondybasdesolução.