Страница 1 из 1

Использование regexp в exim

Добавлено: 2009-02-16 14:34:43
W16
Добрый день!

Придумал доп. проверку на спам-фильтре: на соответствие TLD хоста и адреса отправителя - у "правильных" корреспондентов они, как правило, совпадают (кроме .com), а спамеры этим особо не озабочиваются.
Каким выражением выцепить tld - вроде понятно, \N(?<=\.)[a-z]{2,4}$\N, а вот как пропустить через него $sender_host_name и $sender_address, чтобы потом сравнить результат применения - не понимаю. Видимо не вдумчиво делал RTFM. Поможите, люди добрые :)

Re: Использование regexp в exim

Добавлено: 2009-02-16 18:45:06
cyrus_user
бесполезная затея, не хочу объяснять почему, но пока выдумываете и пробуете, пусть будет. подсказка

Код: Выделить всё

${if eq {${extract{-1}{.}{${lc:$sender_host_name}}}{${extract{-2}{.}{${lc:$sender_address}}}{bla-bla
использовать libpcre в регекспах нормально, но если есть возможность использовать встроенные операторы, используйте их, они меньше нагружают.

Re: Использование regexp в exim

Добавлено: 2009-02-16 20:37:19
W16
Спасибо. :)
Насчет бесполезности - не понял.
Я вижу массу попыток прислать мне письмо с хоста типа qkjghv97yg1.lv от отправителя типа bastards@somewhere.au.
И что-то меня берут сомнения, что это мой клиент-австралиец, пишущий мне с латвийского сервера :)

Re: Использование regexp в exim

Добавлено: 2009-02-16 20:46:04
W16
Текущая проблема решена, но на будущее все равно вопрос.
Есть строка string. Есть регэксп regexp, которым из этой строки можно что-то сделать (вырезать, заменить и т.д.)
Как зовут оператор, которым можно сделать что-то типа preg_match("/".$regexp."/",$string,$result) и получить $result?

Re: Использование regexp в exim

Добавлено: 2009-02-16 21:58:49
cyrus_user
Универсального способа нет, есть n+1 решений, а уж какое использовать, зависит от контекста.
Почитайте про операторы, их немного. Для особо тяжёлых случаев в exim не зря есть поддержка perl

Re: Использование regexp в exim

Добавлено: 2009-02-17 11:34:23
W16
"Будем искать..." :)
Спасибо.

Re: Использование regexp в exim

Добавлено: 2009-02-21 10:40:36
flot
W16 писал(а):Спасибо. :)
Насчет бесполезности - не понял.
Я вижу массу попыток прислать мне письмо с хоста типа qkjghv97yg1.lv от отправителя типа bastards@somewhere.au.
И что-то меня берут сомнения, что это мой клиент-австралиец, пишущий мне с латвийского сервера :)
Если на сервере более одного домена, то сервер вполне может быть латвийским и поддерживать австралийский домен. Спам тоже надо корректно резать.

Re: Использование regexp в exim

Добавлено: 2009-02-23 23:48:11
Laa
А покритикуйте SPF для решения такой проблемы?
Интересует критика как для своих доменов, так и для входящей почты.

Я пока доволен SPF, думал над DKIM, но чет пока мне оно показалось сложным для понимания. Позже вернусь, похоже еще... ;-)

Re: Использование regexp в exim

Добавлено: 2009-02-24 9:40:45
flot
А что критиковать то... Вещь полезная. К сожалению многие администраторы не хотят прописывать правила SPF, тем более с "-all". Если ваш SMTP сервер доступен для его пользователей из любой точки мира (с авторизацией) то вам следует прописать жесткую политику (с -all в конце) для своих доменов.

На прием почты можно сразу рубить тех, кто fail. Остальное решайте сами.

Re: Использование regexp в exim

Добавлено: 2009-02-24 10:08:21
Laa
flot писал(а):А что критиковать то... Вещь полезная. К сожалению многие администраторы не хотят прописывать правила SPF, тем более с "-all". Если ваш SMTP сервер доступен для его пользователей из любой точки мира (с авторизацией) то вам следует прописать жесткую политику (с -all в конце) для своих доменов.

На прием почты можно сразу рубить тех, кто fail. Остальное решайте сами.
Ну это все хорошо, я вот вижу сразу проблему с пересылками (alias/forward). Может еще есть проблемы?
Вот принял один почтовый сервер письмо для юзера, письмо действительно честное, нормальное, даже spf проверку прошло. И этот почтовый сервер по указанию клиента пересылает это письмо на другой почтовый сервер. Другой почтовый сервер сделает проверку spf и выдаст отлуп. :cz2:

Вывод -- пересылки -- зло? Или городить белые списки?
Я вот за spf просто балов накидываю, а так в лоб не отбиваю. :oops:

Re: Использование regexp в exim

Добавлено: 2009-02-24 10:40:32
flot
Алиасы в пределах одного сервера не пострадают.
Иногда лучше получить явный отлуп, чем письмо будет помещено в папку Спам, которую читают 1 раз в год.