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

EXIM, sendmail, postfix, Dovecot и прочие. Решение проблем связанных с работой электронной почты

Модератор: xM

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
W16
проходил мимо
Сообщения: 9
Зарегистрирован: 2007-12-11 13:08:02

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

Непрочитанное сообщение W16 » 2009-02-16 14:34:43

Добрый день!

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

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2460 рублей (8 CPU, 8Gb RAM, 2x500Gb HDD, RAID 3ware 9750):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

cyrus_user
сержант
Сообщения: 181
Зарегистрирован: 2007-04-24 12:16:36

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

Непрочитанное сообщение cyrus_user » 2009-02-16 18:45:06

бесполезная затея, не хочу объяснять почему, но пока выдумываете и пробуете, пусть будет. подсказка

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

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

W16
проходил мимо
Сообщения: 9
Зарегистрирован: 2007-12-11 13:08:02

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

Непрочитанное сообщение W16 » 2009-02-16 20:37:19

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

W16
проходил мимо
Сообщения: 9
Зарегистрирован: 2007-12-11 13:08:02

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

Непрочитанное сообщение W16 » 2009-02-16 20:46:04

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

cyrus_user
сержант
Сообщения: 181
Зарегистрирован: 2007-04-24 12:16:36

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

Непрочитанное сообщение cyrus_user » 2009-02-16 21:58:49

Универсального способа нет, есть n+1 решений, а уж какое использовать, зависит от контекста.
Почитайте про операторы, их немного. Для особо тяжёлых случаев в exim не зря есть поддержка perl
В НЛО не верю, но верю, что где-то до сих пор вымирают динозавры, bsd, птеродактили, мамонты.

W16
проходил мимо
Сообщения: 9
Зарегистрирован: 2007-12-11 13:08:02

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

Непрочитанное сообщение W16 » 2009-02-17 11:34:23

"Будем искать..." :)
Спасибо.

flot
рядовой
Сообщения: 26
Зарегистрирован: 2009-02-14 9:17:16

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

Непрочитанное сообщение flot » 2009-02-21 10:40:36

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

Аватара пользователя
Laa
ст. лейтенант
Сообщения: 1032
Зарегистрирован: 2008-02-21 18:25:33
Откуда: Украина, Россия

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

Непрочитанное сообщение Laa » 2009-02-23 23:48:11

А покритикуйте SPF для решения такой проблемы?
Интересует критика как для своих доменов, так и для входящей почты.

Я пока доволен SPF, думал над DKIM, но чет пока мне оно показалось сложным для понимания. Позже вернусь, похоже еще... ;-)
exim: помните, что выдавая deny, вы можете недоставить ваше же письмо, зарубив sender-verify удаленного MTA к вашему MTA!!!

flot
рядовой
Сообщения: 26
Зарегистрирован: 2009-02-14 9:17:16

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

Непрочитанное сообщение flot » 2009-02-24 9:40:45

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

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

Аватара пользователя
Laa
ст. лейтенант
Сообщения: 1032
Зарегистрирован: 2008-02-21 18:25:33
Откуда: Украина, Россия

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

Непрочитанное сообщение Laa » 2009-02-24 10:08:21

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

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

Вывод -- пересылки -- зло? Или городить белые списки?
Я вот за spf просто балов накидываю, а так в лоб не отбиваю. :oops:
exim: помните, что выдавая deny, вы можете недоставить ваше же письмо, зарубив sender-verify удаленного MTA к вашему MTA!!!

flot
рядовой
Сообщения: 26
Зарегистрирован: 2009-02-14 9:17:16

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

Непрочитанное сообщение flot » 2009-02-24 10:40:32

Алиасы в пределах одного сервера не пострадают.
Иногда лучше получить явный отлуп, чем письмо будет помещено в папку Спам, которую читают 1 раз в год.