URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 40438
[ Назад ]

Исходное сообщение
"Письма на сервере попадают в чужие ящики "

Отправлено E_Snake , 11-Фев-04 17:23 
Письма на сервере попадают в чужие ящики. Имеется почтовый сервер FreeBSD-4.7, sendmail-8.12.9 + DrWeb-4.29.2.
Все письма которые попадают в ящики не по адресу 100% спам:

Return-Path: <z7x9n@111.com>
Received: from ptd-24-198-176-110.maine.rr.com     (ptd-24-198-176-110.maine.rr.com [24.198.176.110])
        by postman.cemu.ru (8.12.9/8.12.9) with SMTP id i118rTqW058386;
        Sun, 1 Feb 2004 11:53:37 +0300 (MSK)
Message-Id: <200402010853.i118rTqW058386@postman.cemu.ru>
From: =?koi8-r?B?62/S0M9wwdTJ187ZyiDP1MTZyA==?= <z7x9n@111.com>
To: dnrkx <dnrkx@cemu.ru>
Subject: =?koi8-r?B?8cjUxc7O2cog3sFw1MXSINBvINfTZc3VIM11cM/Xz83VIG/LxcHO1SEgINrEINkgbw==?=
Date: Sun, 1 Feb 2004 11:54:01 +0400
Reply-To: z7x9n@111.com
Mime-Version: 1.0
Content-Type: multipart/related;
  boundary="----=_NextPart_000_0029_014R338J.GH476EV9"
X-Mailer: Microsoft Outlook Express 6.00.2600.0000
X-Priority: 3
X-MSMail-Priority: Normal
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Status: RO

при этом пользователя dnrkx@cemu.ru на этом сервере несуществует и в поле "То :" могла стоять полная ерунда или адрес существующего пользователя, а письма обычно попадали в почтовый ящик к одному и тому же пользователю. Пробовал включить в sendmail :
    FEATURE(`loose_relay_check')dnl
    define(`LUSER_RELAY', `local:wronguser')
письма с ошибками в имени пользователя нормально валятся в wronguser, а подобная дрянь проходит мимо и валится к одному и тому же пользователю

Вопросы:
1. Почему сервер не отверг письмо по несуществующему пользователю?
2. Почему подобные письма валятся только некоторым пользователям, а не отправляются на postmaster ?
3. Как с этим можно бороться?


Содержание

Сообщения в этом обсуждении
"Письма на сервере попадают в чужие ящики "
Отправлено Medlar , 11-Фев-04 18:50 
На самом деле, если посмотреть логи внимательно, то увидишь, что письмо предназначалось тому, к кому оно попало (user1).
А несущ. юзер в заголовке или другой юзер user2, отличный от того, к кому попало в итоге письмо, определяется СПАМЕРОМ на этапе DATA
То есть сеанс связи выглядер приблизительно так:

telnet ....
....

MAIL FROM: elki@palki.ru
RCPT TO: user1@yourdomain.ru
DATA
Subject: Английский для вас
From: some@adress@somedomain.com
To: user2@yourdomain.ru

tra-ta-ta
.


"Письма на сервере попадают в чужие ящики "
Отправлено A Clockwork Orange , 12-Фев-04 09:20 
>На самом деле, если посмотреть логи внимательно, то увидишь, что письмо предназначалось
>тому, к кому оно попало (user1).
>А несущ. юзер в заголовке или другой юзер user2, отличный от того,
>к кому попало в итоге письмо, определяется СПАМЕРОМ на этапе DATA
>
>То есть сеанс связи выглядер приблизительно так:
>
>telnet ....
>....
>
>MAIL FROM: elki@palki.ru
>RCPT TO: user1@yourdomain.ru
>DATA
>Subject: Английский для вас
>From: some@adress@somedomain.com
>To: user2@yourdomain.ru
>
>tra-ta-ta
>.

А в заголовках где это видно?


"Письма на сервере попадают в чужие ящики "
Отправлено Medlar , 12-Фев-04 12:51 
В заголовке это видно:

Return-Path: elki@palki.ru (здесь тот адрес отправителя, который он указал в MAIL FROM: )
Received: from IP ([IP])
by your.server.ru with SMTP ...
for <user1@your.domain.ru> Tue, 10Feb 2004, ... (здесь реально получивший
письмо юзер, указанный спамером в поле RCPT TO:)
Message-ID: ...
From: some_addres@somedomain.com (это поддельный адрес, указанный в DATA в поле From:)
To: user2@yourdomain.ru ( здесь тот юзер из поля То:, указанный в DATA, который будет прописан в конверте, то есть именно его вы увидете в поле To:, когда получите письмо  и сильно удивитесь, как оно к вам попало :))
Subject: Elki-palki
...


"Письма на сервере попадают в чужие ящики "
Отправлено E_Snake , 12-Фев-04 10:13 
>MAIL FROM: elki@palki.ru
>RCPT TO: user1@yourdomain.ru
>DATA
>Subject: Английский для вас
>From: some@adress@somedomain.com
>To: user2@yourdomain.ru

как сделать чтобы письмо обрасывалось, если "RCPT TO:" не совпадает с "To:"?


"Письма на сервере попадают в чужие ящики "
Отправлено Medlar , 12-Фев-04 12:55 
Попробовать написать дополнительные правила в sendmail.cf
Поищи здесь, может там уже задавали подобный вопрос:
http://groups.google.com/groups?oi=djq&as_ugroup=comp.mail.s...

Или оставь свой е-mail, меня тоже этот вопрос интересует, если что-нибудь найду или наваяю, то напишу
Да, и здесь у меня ошибка, вместо первого @ следует читать _
>From: some@adress@somedomain.com


"Письма на сервере попадают в чужие ящики "
Отправлено sashas , 12-Фев-04 08:12 
>Письма на сервере попадают в чужие ящики. Имеется почтовый сервер
Может в алиасах на постмастера прописан?

"Письма на сервере попадают в чужие ящики "
Отправлено E_Snake , 12-Фев-04 10:15 
>Может в алиасах на постмастера прописан?
нет, пользователь к постмастеру никакого отношения не имеет

"Письма на сервере попадают в чужие ящики "
Отправлено flusher , 12-Фев-04 13:37 
Правило писанно на коленке... :-) За правильность не пинать...
В to.allow адреса в поле To:, на которые можно принимать...
Это правило не затрагивает проверку rcpt to:
Проверка происходит после принятия письма в
SLocal_check_mail

HTo: $>CheckTo
HCC: $>CheckTo

F{To_Allow} /etc/mail/to.allow
D{To_Reply}This mailbox unavailiable
SCheckTo
R$={To_Allow} $*               $@ OK
R$*                            $#error $: 553 ${To_Reply}

если что ICQ#105903403


"Письма на сервере попадают в чужие ящики "
Отправлено E_Snake , 12-Фев-04 14:38 
>Правило писанно на коленке... :-) За правильность не пинать...
>В to.allow адреса в поле To:, на которые можно принимать...
>Это правило не затрагивает проверку rcpt to:

но это не снимет проблемы если в обоих полях указаны существующие пользователи, но они не совпадают - rcpt to: не соответсвует to:


"Письма на сервере попадают в чужие ящики "
Отправлено flusher , 12-Фев-04 15:32 
>>Правило писанно на коленке... :-) За правильность не пинать...
>>В to.allow адреса в поле To:, на которые можно принимать...
>>Это правило не затрагивает проверку rcpt to:
>
>но это не снимет проблемы если в обоих полях указаны существующие пользователи,
>но они не совпадают - rcpt to: не соответсвует to:


Понятно что не затрагивает... Но хотя бы так.. Очень часто приходит с rcpt to: реальный
To: не реальный...

Я ещё не думал над проверкой rcpt to: = To:


"Письма на сервере попадают в чужие ящики "
Отправлено A Clockwork Orange , 12-Фев-04 15:38 
А зачем проверять rcpt to:  ???
Если там указан несуществующий пользователь почта и так не будет приниматься.
Если в to:  указан неразрешенный пользователь (читать несуществующий), вроятность спама великак почту не принимать по вышестоящему правилу...

В чем вопрос?


"Письма на сервере попадают в чужие ящики "
Отправлено A Clockwork Orange , 12-Фев-04 15:39 
flusher

единственное может подумать что бы файли дозволенных  хашировался для скорости?


"Письма на сервере попадают в чужие ящики "
Отправлено flusher , 12-Фев-04 16:05 
>А зачем проверять rcpt to:  ???
>Если там указан несуществующий пользователь почта и так не будет приниматься.
>Если в to:  указан неразрешенный пользователь (читать несуществующий), вроятность спама великак
>почту не принимать по вышестоящему правилу...
>
>В чем вопрос?

В принципе правильно.... Но для полноты можно сделать.. А на счёт хеширования надо посмотреть... Если всего 10-ть пользователей то морочится нет смысла, а вот если больше....


"Письма на сервере попадают в чужие ящики "
Отправлено flusher , 12-Фев-04 17:06 
>Правило писанно на коленке... :-) За правильность не пинать...

Сорри. Логическая ошибка. И не одна... :-) Правило исправленное ниже..

F{To_Allow} /etc/mail/to.allow
D{To_Reply}This mailbox unavailiable
Kuserex regex -a@NOTMATCH ^[^{To_Allow}]$
# Тут не совсем уверен.    ^^^^^^^^^^^^^ Надо проверять...
SLocal_check_mail
HTo: $>CheckTo
HCC: $>CheckTo
R$*                      $: $>Parse0 $>3 $1
R$+ < @ domen.ru. > $*   $: $(userex $1 $)
R@NOTMATCH               $#error $: 553 ${To_Reply}

В общем... Вместо domen.ru написать свой домен...
В to.allow надо писать построчно только имена пользователей из системы
Опять же... Тестировать некогда... Могут и не работать... Надо читать sendmail.cf.