Помогите разобраться с письмом.

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

Модератор: xM

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
SergeyX
проходил мимо

Помогите разобраться с письмом.

Непрочитанное сообщение SergeyX » 2008-10-28 11:40:18

Помогите разобраться с письмом. Судя по логам письмо пришло в систему и было переправлено пользователю, но письмо к клиенту не попало. Начал смотреть логи-непонятки.

Код: Выделить всё

Oct 27 12:38:04 router2 postfix/qmgr[698]: 9CD1D9CFE: from=<info@in.com.ua>, size=197222, nrcpt=2 (queue active)
Oct 27 12:38:04 router2 postfix/smtpd[40740]: connect from localhost[127.0.0.1]
Oct 27 12:38:04 router2 postfix/smtpd[40740]: B50A39D0A: client=localhost[127.0.0.1]
Oct 27 12:38:04 router2 postfix/cleanup[40799]: B50A39D0A: message-id=<875120864.20081027123028@in.com.ua>
Oct 27 12:38:04 router2 postfix/qmgr[698]: B50A39D0A: from=<info@in.com.ua>, size=197471, nrcpt=2 (queue active)
Oct 27 12:38:04 router2 postfix/smtp[40736]: 9CD1D9CFE: to=<admin@yyy.com.ua>, orig_to=<fetchmail>, relay=127.0.0.1[127.0.0.1], delay=0, status=sent (250 Ok:
Oct 27 12:38:04 router2 postfix/smtpd[40740]: disconnect from localhost[127.0.0.1]
Oct 27 12:38:04 router2 postfix/smtp[40736]: 9CD1D9CFE: to=<marina@yyy.com.ua>, relay=127.0.0.1[127.0.0.1], delay=0, status=sent (250 Ok: queued as B50A39D0A)
Oct 27 12:38:04 router2 postfix/qmgr[698]: 9CD1D9CFE: removed

далее

Код: Выделить всё

bzcat maillog.0.bz2 | grep 9CD1D9CFE
Oct 27 12:38:04 router2 postfix/pickup[39954]: 9CD1D9CFE: uid=124 from=<info@in.com.ua>
Oct 27 12:38:04 router2 postfix/cleanup[40799]: 9CD1D9CFE: message-id=<875120864.20081027123028@in.com.ua>
Oct 27 12:38:04 router2 postfix/qmgr[698]: 9CD1D9CFE: from=<info@in.com.ua>, size=197222, nrcpt=2 (queue active)
Oct 27 12:38:04 router2 postfix/smtp[40736]: 9CD1D9CFE: to=<admin@yyy.com.ua>, orig_to=<fetchmail>, relay=127.0.0.1[127.0.0.1], delay=0, status=sent (250 Ok:  queued as B50A39D0A)
Oct 27 12:38:04 router2 postfix/smtp[40736]: 9CD1D9CFE: to=<marina@yyy.com.ua>, relay=127.0.0.1[127.0.0.1], delay=0, status=sent (250 Ok: queued as B50A39D0A )
Oct 27 12:38:04 router2 postfix/qmgr[698]: 9CD1D9CFE: removed
и

Код: Выделить всё

# bzcat maillog.0.bz2 | grep B50A39D0A
Oct 27 12:38:04 router2 postfix/smtpd[40740]: B50A39D0A: client=localhost[127.0.0.1]
Oct 27 12:38:04 router2 postfix/cleanup[40799]: B50A39D0A: message-id=<875120864.20081027123028@in.com.ua>
Oct 27 12:38:04 router2 postfix/qmgr[698]: B50A39D0A: from=<info@in.com.ua>, size=197471, nrcpt=2 (queue active)
Oct 27 12:38:04 router2 postfix/smtp[40736]: 9CD1D9CFE: to=<admin@yyy.com.ua>, orig_to=<fetchmail>, relay=127.0.0.1[127.0.0.1], delay=0, status=sent (250 Ok: queued as B50A39D0A)
Oct 27 12:38:04 router2 postfix/smtp[40736]: 9CD1D9CFE: to=<marina@yyy.com.ua>, relay=127.0.0.1[127.0.0.1], delay=0, status=sent (250 Ok: queued as B50A39D0A)
Oct 27 12:38:38 router2 postfix/pipe[40803]: B50A39D0A: to=<admin@yyy.com.ua>, relay=spamfilter, delay=34, status=sent (yyy.com.ua)
Oct 27 12:38:46 router2 postfix/pipe[40804]: B50A39D0A: to=<marina@yyy.com.ua>, relay=spamfilter, delay=42, status=sent (yyy.com.ua)
Oct 27 12:38:46 router2 postfix/qmgr[698]: B50A39D0A: removed
Почему сообщение 9CD1D9CFE поменяло номер на B50A39D0A и последнее вроде бы было доставлено, но к пользователю не попало.

Хостинговая компания 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/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/


SergeyX
проходил мимо

Re: Помогите разобраться с письмом.

Непрочитанное сообщение SergeyX » 2008-10-28 13:30:27

Это спамфильтр. Он анализирует сообщения, и только помечает сообщение как спам и далее отправляет адресату


SergeyX
проходил мимо

Re: Помогите разобраться с письмом.

Непрочитанное сообщение SergeyX » 2008-10-28 15:19:11

Код: Выделить всё

#!/usr/bin/perl

use strict;
use Net::SMTP;

my $host = sall_ch($ARGV[0], '"');
my $ehlo = sall_ch($ARGV[1], '"');
my $mail_from = sall_ch($ARGV[2], '"');
my $rcpt_to = sall_ch($ARGV[3], '"');
my $spamc = sall_ch($ARGV[4], '"');

system("echo $host-$ehlo-$mail_from-$rcpt_to-$spamc >> /var/log/filter-spam.log"

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);
1Помощь 2Запись 3Блок   4Замена 5Копия  6Перемес7Поиск  8Удалить9МенюMC 10Выход
filter-spam.pl      [----] 15 L:[  1+ 0   1/ 53] *(15  /1150b)= .  10 0x0A
#!/usr/bin/perl

use strict;
use Net::SMTP;

my $host = sall_ch($ARGV[0], '"');
my $ehlo = sall_ch($ARGV[1], '"');
my $mail_from = sall_ch($ARGV[2], '"');
my $rcpt_to = sall_ch($ARGV[3], '"');
my $spamc = sall_ch($ARGV[4], '"');

system("echo $host-$ehlo-$mail_from-$rcpt_to-$spamc >> /var/log/filter-spam.log");^M

if (!defined($host)||!defined($ehlo)||!defined($mail_from)||!defined($rcpt_to)) {^M
  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->dataend();
close(CF) if defined($spamc);

$smtp->quit;
exit 0;

############################################################
sub sall_ch() {
  my($string, $chars) = @_;
  return(undef) unless defined($string);
  $string =~ s/^[\Q$chars\E]+//;
  $string =~ s/[\Q$chars\E]+$//;
  return($string);
}
Почта ходит., но что иммено с этим письмом произошло не понимаю.