exim, revers dns lookup

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

Модератор: xM

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
chani
мл. сержант
Сообщения: 103
Зарегистрирован: 2006-09-19 0:15:01

exim, revers dns lookup

Непрочитанное сообщение chani » 2006-09-21 11:37:54

Добрый День ! Подскажите плиз как сдеать так, чтобы exim не принемал почту, от клиентов, адреса которых не совпадают в инфой в dns. И вообще какие могут быть грабли у такого способа защиты от спама ? Огромное спасибо за ответ

Хостинговая компания 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/
Выделенные сервера, Россия, Москва, от 2520 рублей (8 CPU, 8Gb RAM, 2x500Gb HDD, RAID 3ware 9750):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
dikens3
подполковник
Сообщения: 4856
Зарегистрирован: 2006-09-06 16:24:08
Откуда: Нижний Новгород
Контактная информация:

Re: exim, revers dns lookup

Непрочитанное сообщение dikens3 » 2006-09-21 11:45:15

chani писал(а):Добрый День ! Подскажите плиз как сдеать так, чтобы exim не принемал почту, от клиентов, адреса которых не совпадают в инфой в dns. И вообще какие могут быть грабли у такого способа защиты от спама ? Огромное спасибо за ответ
Ты про SPF говоришь?

chani
мл. сержант
Сообщения: 103
Зарегистрирован: 2006-09-19 0:15:01

Непрочитанное сообщение chani » 2006-09-21 11:59:17

угу, вот что нарыл:
deny message = SPF: $spf_smtp_comment
log_message = SPF $spf_result ($sender_address -> $local_part@$domain)
sender_domains= *
spf = fail

warn message = Received-SPF: $spf_result [$sender_host_address] sender_helo_name ($sender_address -> $local_part@$domain)
sender_domains= *
spf = softfail : neutral

Это оно ?

Аватара пользователя
dikens3
подполковник
Сообщения: 4856
Зарегистрирован: 2006-09-06 16:24:08
Откуда: Нижний Новгород
Контактная информация:

Непрочитанное сообщение dikens3 » 2006-09-21 12:43:24

chani писал(а):угу, вот что нарыл:
deny message = SPF: $spf_smtp_comment
log_message = SPF $spf_result ($sender_address -> $local_part@$domain)
sender_domains= *
spf = fail

warn message = Received-SPF: $spf_result [$sender_host_address] sender_helo_name ($sender_address -> $local_part@$domain)
sender_domains= *
spf = softfail : neutral

Это оно ?

У меня так сделано:
# Проверка получателей писем
acl_check_rcpt:

# Принимаем почту пришедшую не по TCP/IP, localhost имеется ввиду
accept hosts = :

# Проверка SPF
deny message = "[SPF] $sender_host_address is not allowed to send mail from $sender_address_domain"
log_message = SPF check failed
spf = fail
hosts = !+relay_from_hosts : !+my_lan_hosts : *


# Проверка тела письма
acl_check_data:

# Добавляем SPF-Received в заголовки
warn message = $spf_received



В письмо добавляется заголовок типа:
Received-SPF: softfail (MYDOMAIN: transitioning domain of MYDOMAIN does not designate IP as permitted sender) client-ip=IP; envelope-from=test@MYDOMAIN; helo=localhost;
Тут я в своём домене, но IP-Адрес внутренний (Тестировал)

chani
мл. сержант
Сообщения: 103
Зарегистрирован: 2006-09-19 0:15:01

Непрочитанное сообщение chani » 2006-09-21 12:47:10

здорово, сейчас попробую, а как сделать так чтобы на spf не проверять localhost и 192.168.0.0./24 ?

Аватара пользователя
dikens3
подполковник
Сообщения: 4856
Зарегистрирован: 2006-09-06 16:24:08
Откуда: Нижний Новгород
Контактная информация:

Непрочитанное сообщение dikens3 » 2006-09-21 12:52:37

chani писал(а):здорово, сейчас попробую, а как сделать так чтобы на spf не проверять localhost и 192.168.0.0./24 ?
hosts = !+relay_from_hosts : !+my_lan_hosts : *
У меня так ^^

Можешь так написать:
!hosts = 127.0.0.1/8 : 192.168.0.0/16

chani
мл. сержант
Сообщения: 103
Зарегистрирован: 2006-09-19 0:15:01

Непрочитанное сообщение chani » 2006-09-21 14:52:25

dikens3 писал(а):
chani писал(а):здорово, сейчас попробую, а как сделать так чтобы на spf не проверять localhost и 192.168.0.0./24 ?
hosts = !+relay_from_hosts : !+my_lan_hosts : *
У меня так ^^

Можешь так написать:
!hosts = 127.0.0.1/8 : 192.168.0.0/16

сделал так: но чтото не работает ...

sidhe@www# telnet 195.***.***.**1 25
Trying 195.***.***.***...
Connected to test.ru.
Escape character is '^]'.
220 http://www.test.ru ESMTP Exim 4.63 Thu, 21 Sep 2006 15:39:53 +0400
ehlo blabla.ru
250-www.test.ru Hello domain.ru [195.***.***.**2]
250-SIZE 20971520
250-PIPELINING
250-AUTH PLAIN LOGIN CRAM-MD5
250-STARTTLS
250 HELP
mail from:post@blabla.ru
250 OK
rcpt to:test@test.ru
250 Accepted
quit
221 http://www.test.ru closing connection
Connection closed by foreign host.

Аватара пользователя
dikens3
подполковник
Сообщения: 4856
Зарегистрирован: 2006-09-06 16:24:08
Откуда: Нижний Новгород
Контактная информация:

Непрочитанное сообщение dikens3 » 2006-09-21 15:04:56

сделал так: но чтото не работает ...

sidhe@www# telnet 195.***.***.**1 25
Trying 195.***.***.***...
Connected to test.ru.
Escape character is '^]'.
220 http://www.test.ru ESMTP Exim 4.63 Thu, 21 Sep 2006 15:39:53 +0400
ehlo blabla.ru
250-www.test.ru Hello domain.ru [195.***.***.**2]
250-SIZE 20971520
250-PIPELINING
250-AUTH PLAIN LOGIN CRAM-MD5
250-STARTTLS
250 HELP
mail from:post@blabla.ru
250 OK
rcpt to:test@test.ru
250 Accepted
quit
221 http://www.test.ru closing connection
Connection closed by foreign host.
Так, начнём с того, что если SPF записи в DNS для этого ip НЕТ совсем, то почта нормально проходит.

Вообще про SPF и Утилитки для проверки.
http://new.openspf.org/Tools


P.S. Можно бы ещё добавить в конфиг вот это:
pipelining_advertise_hosts = :

chani
мл. сержант
Сообщения: 103
Зарегистрирован: 2006-09-19 0:15:01

Непрочитанное сообщение chani » 2006-09-21 15:15:37

понял, а можно сделать просто проверку адресса отправителя на соответствие заявленному домену? по обратной зоне

Аватара пользователя
dikens3
подполковник
Сообщения: 4856
Зарегистрирован: 2006-09-06 16:24:08
Откуда: Нижний Новгород
Контактная информация:

Непрочитанное сообщение dikens3 » 2006-09-21 16:16:56

chani писал(а):понял, а можно сделать просто проверку адресса отправителя на соответствие заявленному домену? по обратной зоне
Можно сделать всё, вопрос в том, правильно ли это. :-)

Совсем необязательно, что тебе будет к примеру mail.ru посылать со своих IP-Адресов.
Могут арендовать какой-нибудь диапазон 200.200.200.200-200.200.200.254 и гнать через него почту.

Есть такое понятие, как RELAY, т.е. я могу выступить пересыльщиком почты для mail.ru
При этом у меня будет совсем другой домен.

P.S. Некоторые mx сервера не имеют обратных зон или не отдают их :-) unknown :-)

chani
мл. сержант
Сообщения: 103
Зарегистрирован: 2006-09-19 0:15:01

Непрочитанное сообщение chani » 2006-09-21 16:28:28

ну то что у них нет обратной зоны это скорее их косяк.
Мне пришлось ее завести именно тогда, когда пользователи стали жаловаться.
Но еще больше пользователи жалуются на спам, насколько я понял spf отсечет 2-3 процента, хочется панацеи конечно. dspam стоит, но и его мало. Как насчет такого ? Поскольку сам являюсь релеем, нуна както отключить проверку на 192.168.0.0/24 а как я не знаю, мож поможешь ?

deny message = Bad reverse DNS
log_message = Reverse host lookup failed
!verify = reverse_host_lookup

Аватара пользователя
dikens3
подполковник
Сообщения: 4856
Зарегистрирован: 2006-09-06 16:24:08
Откуда: Нижний Новгород
Контактная информация:

Непрочитанное сообщение dikens3 » 2006-09-21 16:45:32

chani писал(а):ну то что у них нет обратной зоны это скорее их косяк.
Мне пришлось ее завести именно тогда, когда пользователи стали жаловаться.
Но еще больше пользователи жалуются на спам, насколько я понял spf отсечет 2-3 процента, хочется панацеи конечно. dspam стоит, но и его мало. Как насчет такого ? Поскольку сам являюсь релеем, нуна както отключить проверку на 192.168.0.0/24 а как я не знаю, мож поможешь ?

deny message = Bad reverse DNS
log_message = Reverse host lookup failed
!verify = reverse_host_lookup
2-3% утвержать не буду, но гораздо больше(думаю 20-30), особенно + Блок листы(Нормальные, а не Sorbs) = 90%

Так, ты так и не въехал в конфиг exim'a я смотрю:
Объясняю на кроликах

Deny - типа операции при выполнении нижеприведённых условий (DROP, ACCEPT)
log_message - Что будет у тебя в логах при выполнении нижеприведённых условий. Типа этого:
2006-09-20 15:13:37 H=dikens3.x.x.ru (localhost) [192.168.x.x] I=[192.168.x.x]:25 F=<test@domain.ru> rejected RCPT <dikens3>: SPF check failed

!verify - я так понимаю ты заблокируешь всех, у кого нет обратных зон.
Теперь можно указать диапазон проверки, какие именно хосты должны проверятся, по умолчанию все, как ты понимаешь.
hosts = !127.0.0.1 : *
или
!hosts =127.0.0.1

Одно и тоже, т.е. ты задаёшь условие. Проверять все *, кроме !127.0.0.1, Знак ! означает отрицание.

chani
мл. сержант
Сообщения: 103
Зарегистрирован: 2006-09-19 0:15:01

Непрочитанное сообщение chani » 2006-09-21 17:22:41

огромное спасибо !