У меня есть система Debian Etch, на которой работает Exim4-daemon-heavy.
Система открыта для Интернета, но предполагается, что она будет получать только легитимную почту, исходящую от службы фильтрации спама, которая работает как прокси перед ней. (Я не могу просто ограничить доступ к этим IP-адресам, потому что у меня есть несколько авторизованных пользователей, которые ретранслируют через мой сервер на порт 25. Я знаю, что должен использовать 587, но в настоящее время это не так.)
Обычно это работает:
[Интернет] -> [Прокси-сервер SMTP] -> [Мой сервер]
К сожалению, у меня есть спамеры, отправляющие почту прямо на почтовый сервер и игнорирующие записи MX. Таким образом, кажется, что мое очевидное решение состоит в следующем:
Таким образом, я мог использовать procmail только для нежелательных сообщений, которые приходили напрямую через отправителей, которые игнорировали мои записи MX.
Я почти уверен, что Exim4 можно принудить к добавлению заголовка, такого как «X-Submitter: $ ip» - для записи удаленного IP-адреса, отправившего сообщение, но я не уверен, как это должно быть сделано.





Имейте в виду, что debian переупаковывает exim довольно уникальным способом, что упрощает их упаковку и обслуживание, но иногда делает использование общих правил не таким гладким.
Правильный способ справиться с этим - отклонить почту, которая не авторизована и не поступает с IP-адреса прокси. Поместите что-то вроде этого в свой ACL rcpt:
deny message = quit trying to bypass DNS
!hosts = PROXY_IP_ADDRESS
!authenticated = *