Regex no Postfix usando Centos

1

Eu tenho um servidor Centos executando somente o postfix. Quero filtrar os e-mails que contêm a palavra gratis ou grátis ou grétis ou grâtis .

A segunda letra é o problema. Então eu usei esse rejex:

/^Subject:.*gr.tis/ REJECT Your message was rejected

O problema é que o "ponto" não corresponde a caracteres especiais com o postfix. Quero dizer, se eu enviar um e-mail com a palavra gratis sobre o assunto, ele será filtrado. Mas se eu enviar um email contendo grátis isso não acontece.

Como resolvo este problema?

    
por Samul 06.11.2015 / 16:51

2 respostas

0

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 preciso para ver quais bytes reais estão no Assunto : cabeçalho.

por exemplo,

grep '^Subject:' /tmp/saved.spam | sed -n l

Isso ajudará você a criar um regexp preciso para colocar em seu arquivo header_checks.

    
por 07.11.2015 / 00:33
0

Tente usar:

/^Subject:.*gr.{1,2}tis/ REJECT Your message was rejected

em vez disso. Talvez seja um bug na codificação.

    
por 06.11.2015 / 17:47