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

Исходное сообщение
"Как отучить sendmail принимать почту с FROM: "

Отправлено Anton , 08-Ноя-01 12:40 
Зравствуйте!

Как отучить sendmail принимать почту с
MAIL FROM: <>
т.е. с пустым адресом отправителя?
версия sendmail 8.11.0
конфиг делается:

include('/usr/lib/sendmail-cf/m4/cf.m4')
OSTYPE('linux')
define('confDEF_USER_ID',''8:12'')dnl
undefine('UUCP_RELAY')dnl
undefine('BITNET_RELAY')dnl
define('confTO_CONNECT', '1m')dnl
define('confDONT_PROBE_INTERFACES',true)dnl
define('PROCMAIL_MAILER_PATH','/usr/bin/procmail')dnl
define('ALIAS_FILE','/etc/aliases')dnl
define('STATUS_FILE', '/var/log/sendmail.st')dnl
define('UUCP_MAILER_MAX', '2000000')dnl
FEATURE('smrsh','/usr/sbin/smrsh')dnl
FEATURE('mailertable','hash -o /etc/mail/mailertable')dnl
FEATURE('virtusertable','hash -o /etc/mail/virtusertable')dnl
FEATURE(use_cw_file)dnl
FEATURE(local_procmail)dnl
FEATURE('access_db')dnl
FEATURE('blacklist_recipients')dnl
MAILER(smtp)dnl
MAILER(procmail)dnl


Содержание

Сообщения в этом обсуждении
"RE: Как отучить sendmail принимать почту с FROM: "
Отправлено Maxim Chirkov , 08-Ноя-01 14:08 
По RFC-821 MTA обязаны пропускать почту с From: <>

Например c From <> приходят отлупы от MAILER-DAEMON.

В Postfix вырезание пустого From делается примерно так:
в hader_checker:
/^(To|From):\s*$/            REJECT

В sendmail:

LOCAL_RULESETS

Kstorage macro

# There must be no spaces between the LHS and the RHS, replace them with
tabs.
# \/\/ LHS \/\/                 \/\/  RHS \/\/
HFrom:                          $>+Check_From
SCheck_From
R$*                             $: $(storage {FromHeaderCheck} $@ $1 $)
$1

Scheck_eoh
# Check the From macro
R$*                             $: < $&{FromHeaderCheck} >
# Clear the macro for the next message
R$*                             $: $(storage {FromHeaderCheck} $) $1
# If it has a From: header, accept it in this ruleset
R< $+ > $@ OK
# Allow missing From: in mail from
R$*                             $: < $&{client_name} >
# If you want mail from some boxen with no From: header, add those
host(s)
# R< hostname.yourdomain.com > $@ OK
# Accept mail from my own box
R< > $@ OK
# Otherwise, reject the mail
R$*                             $#error $: "553 Invalid Header"


"RE: Как отучить sendmail принимать почту с FROM: "
Отправлено lavr , 09-Ноя-01 21:30 
>По RFC-821 MTA обязаны пропускать почту с From: <>
>
>Например c From <> приходят отлупы от MAILER-DAEMON.
>
>В Postfix вырезание пустого From делается
>примерно так:
>в hader_checker:
> /^(To|From):\s*$/    
>    
>  REJECT
>
>В sendmail:
>
>LOCAL_RULESETS
>
> Kstorage macro
>
> # There must be no
>spaces between the LHS and
>the RHS, replace them with
>
> tabs.
> # \/\/ LHS \/\/  
>    
>    
>    
>\/\/  RHS \/\/
> HFrom:                          $>+Check_From
> SCheck_From
> R$*    
>    
>    
>    
>    
>    $:
>$(storage {FromHeaderCheck} $@ $1 $)
>
> $1
>
>Scheck_eoh
> # Check the From macro
>
> R$*                             $: < $&{FromHeaderCheck} >
> # Clear the macro for
>the next message
> R$*    
>    
>    
>    
>    
>    $:
>$(storage {FromHeaderCheck} $) $1
> # If it has a
>From: header, accept it in
>this ruleset
> R< $+ > $@ OK
> # Allow missing From: in
>mail from
> R$*                             $: < $&{client_name} >
> # If you want mail
>from some boxen with no
>From: header, add those
> host(s)
> # R< hostname.yourdomain.com > $@ OK
> # Accept mail from my
>own box
> R< > $@ OK
> # Otherwise, reject the mail
>
> R$*    
>    
>    
>    
>    
>    $#error
>$: "553 Invalid Header"

не good это, лучше уж в procmail'е вырезать ВСЕ
что нужно, а он - procmail, тама есть, правда
соединения все равно будут проходить.


"RE: Как отучить sendmail принимать почту с FROM: "
Отправлено Anton , 10-Ноя-01 15:09 
>>По RFC-821 MTA обязаны пропускать почту с From:

>не good это, лучше уж в
>procmail'е вырезать ВСЕ
>что нужно, а он - procmail,
>тама есть, правда
>соединения все равно будут проходить.

а чем плохо не принимать почту с MAIL FROM:<>  в smtp протоколе (не поле From: заголовка)? я не специалист в sendmail, просто интересно чем это грозит...
дело в том, что такие письма приходят почему-то только от спамеров, во всяком случае чего-то другого с пустым mail from в логах я не находил. Еще бывает вирус внутри.
Не спорю, может плохо смотрел, но впечатление именно такое.


"RE: Как отучить sendmail принимать почту с FROM: "
Отправлено Sciurus , 12-Ноя-01 15:47 
Не принимать почту с пустым полем FROM плохо потому, что такие письма могут прийти от другого почтовика, когда он сообщает, что,например, юзера у него такого нет или о другой к-л системной ошибке. Так что, отказывая в приеме таких писем, ты не очень корректно поступаешь с другими почтовыми системами, хотя хозяин-барин.
Мне тоже доводилось запрещать такие письма, правда делалось это посто изменением строки в sendmail.cf
в разделе check_mail  -- check "MAIL FROM:" command argument
- - - - - - -
R<>   $@<OK>
на
R<>   $#ERROR $@ 5.7.1 $: "550 Access for empty FROM denied"
- - - - - - -
Поскольку я тоже в числе начинающих, то за правильность данного преобразования не отвечаю :), но это работало, и в maillog'e была куча отлупов на пустые From.
Очень скоро довелось заметить, что таких писем масса, и что большинство из них - это именно сообщения от других почтовиков, а не вирусяки.
После прикручивания антивируса необходимость в таком отлупе отпала.
Так что решай сам :)

"RE: Как отучить sendmail принимать почту с FROM: "
Отправлено Dim , 13-Ноя-01 02:59 
>Очень скоро довелось заметить, что таких
>писем масса, и что большинство
>из них - это именно
>сообщения от других почтовиков, а
>не вирусяки.

Тогда уж просто хоронить без ответа, если реджектить письма с пустым From, можно нарваться на себе подобного и устроить чемпионат сети по игре в пинг-понг :-)


"RE: Как отучить sendmail принимать почту с FROM: "
Отправлено Igor , 15-Ноя-01 08:52 
>>>По RFC-821 MTA обязаны пропускать почту с From:
>
>>не good это, лучше уж в
>>procmail'е вырезать ВСЕ
>>что нужно, а он - procmail,
>>тама есть, правда
>>соединения все равно будут проходить.
>
>а чем плохо не принимать почту с MAIL FROM:<>  в smtp протоколе (не поле From: заголовка)? я не специалист в sendmail, просто интересно чем это грозит...
>дело в том, что такие письма
>приходят почему-то только от спамеров,

http://www.morning.ru/~poige/admin/mail/onewaymsg.html

>во всяком случае чего-то другого
>с пустым mail from в
>логах я не находил. Еще
>бывает вирус внутри.
>Не спорю, может плохо смотрел, но
>впечатление именно такое.



"RE: Как отучить sendmail принимать почту с FROM: "
Отправлено Dim , 13-Ноя-01 02:55 
>не good это, лучше уж в
>procmail'е вырезать ВСЕ

Не факт, иногда важнее транзитный трафик на релее отфильтровать.


"RE: Как отучить sendmail принимать почту с FROM: "
Отправлено Vada , 17-Ноя-01 21:37 
А в файлике hosts.allow своии разрешить, а несвоим не разрешить пробовали? Вообще от много чего помогает.