
Eu tenho um servidor Centos rodando apenas postfix. Quero filtrar e-mails que contenham word gratis
ou grátis
ou grétis
ou grâtis
.
A segunda carta é o problema. Então usei este rejex:
/^Subject:.*gr.tis/ REJECT Your message was rejected
O problema é que o “ponto” não corresponde aos caracteres especiais do postfix. Quer dizer, se eu enviar um e-mail com a palavra gratis
sobre o assunto ele será filtrado. Mas se eu enviar um e-mail contendo grátis
isso, não.
Como eu resolvo este problema?
Responder1
Salve a amostra de spam em um arquivo e examine-a com, por exemplo, cat -A
, sed -n l
, hexdump
, hd
, od
etc - o que for necessário para ver quais bytes reais estão no cabeçalho Subject:.
por exemplo
grep '^Subject:' /tmp/saved.spam | sed -n l
Isso o ajudará a criar um regexp preciso para colocar em seu arquivo header_checks.
Responder2
Tente usar:
/^Subject:.*gr.{1,2}tis/ REJECT Your message was rejected
em vez de. Talvez seja um bug na codificação.