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

Исходное сообщение
"Postfix 'undisclosed-recipients'"

Отправлено redduck , 15-Ноя-05 06:19 
Здравствуйте!
Если письма отправляют мне на несколько адресатов, то письма не доходят а приходит администратору Postfix письмо в поле кому указано undisclosed-recipients
Так же если от меня отправлять письма на несколько адресатов то письма не доходят до адресатов.
Ситема freeBSD 5.4
Postfix2.2.5
ClamAV 0.87
clamsmtp1.5
SpamAssassin3.1
Прошу помочь разобраться

Содержание

Сообщения в этом обсуждении
"Postfix 'undisclosed-recipients'"
Отправлено jonatan , 15-Ноя-05 09:29 
postfix (cleanup) вставляет в заголовки письма To: undisclosed-recipients, если письмо не содержит To: или Cc:

man 5 postfix
...
undisclosed_recipients_header (default: To: undisclosed-recipients:;)
       Message  header  that the Postfix cleanup(8) server inserts when a mes-
       sage contains no To: or Cc: message header.
...


"Postfix 'undisclosed-recipients'"
Отправлено redduck , 15-Ноя-05 14:10 
Да это мне понятно, скорей всего я переборщил с
reject_unknown_hostname
ставил всюду где только мог, и не позаботился об исключениях для этого правила, убрал помогло.(продумаю исключения, поставлю опять)
Но вот одно письмо зарезалось в этом
smtpd_helo_restrictions =
       permit_mynetworks,
       reject_non_fqdn_hostname,
       reject_invalid_hostname,
       reject_unknown_hostname письмо отвергло по этому правилу.
Тут я считал что это правило законно применено.

Подскажите где стоит употреблять reject_unknown_hostname


"Postfix 'undisclosed-recipients'"
Отправлено jonatan , 15-Ноя-05 14:37 
>Подскажите где стоит употреблять reject_unknown_hostname
В документации написано где
man 5 postconf

smtpd_helo_restrictions (default: empty)
...
       reject_unknown_hostname
              Reject the request when the HELO or EHLO hostname has no DNS A or MX record.
...

reject_unknown_hostname не имеет никакого отношения к отсутсвующим в заголовках письма To: или Cc:


"Postfix 'undisclosed-recipients'"
Отправлено redduck , 15-Ноя-05 16:13 
Вот проверял не так, работает как то странно, не понятно где искать, подскажи куда копать, почему при рассылке на несколько адресов получается такое


"Postfix 'undisclosed-recipients'"
Отправлено jonatan , 15-Ноя-05 17:04 
Смотрите логи, они о многом расскажут. Если у postfix-а все нормально, то смотрите Ваши "фильтры" (скрипты, spamassassin и т.п.).

"Postfix 'undisclosed-recipients'"
Отправлено redduck , 15-Ноя-05 18:16 
Точно что то с подключением SpamAssassin
(не хочется оставаться без антиспама)
может скрипт виноват
#!/usr/bin/perl -w
use strict;
use Net::SMTP;
my $host = &sasl_ch(shift(@ARGV), '"');
my $ehlo = &sasl_ch(shift(@ARGV), '"');
my $mail_from = &sasl_ch(shift(@ARGV), '"');
my $rcpt_to   = &sasl_ch(shift(@ARGV), '"');
my $spamc     = &sasl_ch(shift(@ARGV), '"');

if (!defined($host)||!defined($ehlo)||!defined($mail_from)||!defined($rcpt_to))
     {
      die("use $0 <host> <ehlo> <mail_from> <rcpt_to> [cmd]\n");
     }

if (defined($spamc))
     {
     open(CF, "$spamc | ") or undef($spamc);
     }

my $smtp = Net::SMTP->new($host);
$smtp->hello($ehlo);
$smtp->mail($mail_from);
$smtp->to($rcpt_to);

$smtp->data();
if (defined($spamc)) {
         while(<CF>) {
                     next if (/^delivered\-to\:/i);
                     $smtp->datasend($_);
                     }
           }
else {
           while(<>) {
                      next if (/^delivered\-to\:/i);
                      $smtp->datasend($_);
                     }
     }

$smtp->datasend();
close(CF) if defined($spamc);

$smtp->quit;
exit 0;

sub sasl_ch($$) {
          my($string, $chars) =(shift(), shift());
          return(undef) unless defined($string);
          $string=~ s/^[Q$chars\E]+//;
          $string=~ s/[Q$chars\E]+$//;
          return($string);
          }


"Postfix 'undisclosed-recipients'"
Отправлено redduck , 17-Ноя-05 01:45 
Нашел, надо указать в main.cf
spamfilter_destination_recipient_limit = 1