Регулярное выражение в Postfix с использованием Centos

Регулярное выражение в Postfix с использованием Centos

У меня есть сервер Centos, на котором работает только postfix. Я хочу отфильтровать письма, содержащие слово gratisили grátisили grétisили grâtis.

Вторая буква — проблема. Поэтому я использовал этот rejex:

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

Проблема в том, что "точка" не соответствует специальным символам с постфиксом. Я имею в виду, если я отправлю письмо со словом gratisв теме, оно будет отфильтровано. Но если я отправлю письмо, содержащее grátisего, то нет.

Как решить эту проблему?

решение1

Сохраните образец спама в файл и изучите его, например, с помощью , cat -A, sed -n l, hexdump, hdи odт. д. — любыми способами, которые помогут увидеть, какие фактические байты находятся в заголовке Subject:.

например

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

Это поможет вам создать точное регулярное выражение для добавления в файл header_checks.

решение2

Попробуйте использовать:

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

Вместо этого. Возможно, это ошибка в кодировке.

Связанный контент