Добрый день.Подскажите каким образом можно заставить postfix проверять что HELO соотвестует
хосту который его прислал. Все ограничения что я смотрел пока проверяют только валидность
самого HELO, но он может быть любым. К примеру не кто не мешает спамеру использовать
при соединении220 *************************
helo mail.ruпосле чего почта примимаеться, даже если отправитиль совсем не из mail.ru.
В Communigate встроен такой механизм. Вот к примеру:
220 limpack.ru ESMTP CommuniGate Pro 5.0.9
helo mail.ru
250 limpack.ru your name is not mail.ruОн может видить что я подделал helo запрос.
---
Спасибо
Такая возможность есть и в постфиксе, ответ должен быть где-то на странице http://www.postfix.org/uce.html . Однако она несет некоторую опастность для пользователей: например, если домашний компьютер в сети обозвать supercomp, то тот-же бат будет в приветствии писать HELO supercomp, из-за чего будет отвергаться мта. Фильтровать по хело - плохая и неудобная затея. Как альтернатива - проверка наличия прямой и обратной зоны в ДНС (проверка осуществляется до HELO). Но тут тоже периодически возникают проблемы - в основном они исходят от ленивих или безграмотных админов форумов, которые не утруждаются в прописании пары строк в днс для веб серверов, из-за чего почта с таких серверов не дохожит (по статистике - до 70% форумов и 30% мэйл серверов этой болезнью).
Спасибо за участие в дискусии. Хотелось бы уточнить несколько моментов.Насчёт бата - на мой взгляд почтовый клиент должен взаимодейстовать с MTA который ему предоставил провайдер, а я должен принимать письма только от своих клиентов (permint_mynetworks) и только от других MTA, которые в свою очередь в helo пишут именно свои данные (за не большим исключением, кои добавлюяться в белый список).
Поэтому проблема бата - мне не интересна, так как все мои клиенты в mynetworks, а другие письма я хочу получать от MTA как правильно говорят верный helo. В любом случае для бата можно настроить smtp авторизацию, и даже если мой клиент будет где то далеко он всегда получит возможность отправки письма через мой сервер.
По поводу самой настройки. Я читал прежде чем задавать вопрос http://www.postfix.org/uce.html а так же http://www.postfix.org/spam.html + множество других ресурсов.
Но ответ к сожалению так и не смог найти, так как все рестрикшены что видел не проверяют helo на предмет сходимости с sender ip., поэтому собственно и решил спросить ответа у вас.Вопрос актуален. Если кто знает - подскажите пожалуста.
>Поэтому проблема бата - мне не интересна, так как все мои клиенты
>в mynetworks, а другие письма я хочу получать от MTA как
>правильно говорят верный helo. В любом случае для бата можно настроить
>smtp авторизацию, и даже если мой клиент будет где то далеко
>он всегда получит возможность отправки письма через мой сервер.^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Даже в этом случае не получит. Хело - начало процесса общения, если рукопажатие не состоится - до авторизации дело не дайдет. Похоже, что я заблуждался насчет встроенной возможности, тем неменее из опыта: не проверяйте ни заголовки ни днсы отправителя - много админов, не читавших рфс и настроевших все по-кривому, а просто включите грейлистинг и {dspam или spamassassin}, если все правильно сделаете отсеите 98% спама и не придется обучать пользователей пользоваться софтом.
>Такая возможность есть и в постфиксе, ответ должен быть где-то на странице
>http://www.postfix.org/uce.html . Однако она несет некоторую опастность для пользователей: например, если
>домашний компьютер в сети обозвать supercomp, то тот-же бат будет в
>приветствии писать HELO supercomp, из-за чего будет отвергаться мта.ничего отвергаться не будет, особенно если вы разрешили отправлять из сети где стоит комп supercomp
я рассмативаю случай для глобальной сети, где актуально чтобы пользователь мог отправлять почту откуда угодно.
>я рассмативаю случай для глобальной сети, где актуально чтобы пользователь мог отправлять
>почту откуда угодно.отвергаться не будет. так как всё будет проверяться в smtpd_recipient_restriction, с включённым smtpd_delay_reject = yes и в smtpd_recipient_restriction вначале пропишуться пермиты для своих сетей и просто авторизированных пользователей. а потом уже реджектиться будет. Или даже без smtpd_delay_reject просто проверять все HELO/EHLO/Client/Sender в smtpd_recipient_restriction:
In addition to restrictions that are specific to recipient mail addresses, you can also specify restrictions based on the sender mail address, on the information passed with the HELO/EHLO command , and on the client hostname or network address .
Вопрос про проверку подленности HELO/EHLO ещё актуален. Спасибо всем кто принимает участие в обсуждении данного вопроса. Мне почему то казалось что в Postfix данная возможность давно встроена.