Когда кто-то отправляет письмо, превышающее MaxMessageSize, eserv создает сообщение об ошибке для postmastera, в которое вкладывает это большое письмо, а оно, в свою очередь также генерит ошибку 522, получается матрешка, которая вешает сервер.
Хотелось бы, чтоб postmasterу, в этом случае приходило сообщение без вложения.
См. acSMTP\conf\smtp\OnMessageEnd.rules.txt
For: postmaster@mydomain.ru
To: postmaster@mydomain.ru
Subject: CAN'T DELIVER MESSAGE: 552 ERR too large message size
From: "Eserv SMTPSEND4" <postmaster@mydomain.ru>
Date: Fri, 19 Oct 2007 15:36:29 +0800
Message-ID: <271586515c402ab$9edca520$0208a8c0@LOCALHOST>
MIME-Version: 1.0
Content-Type: multipart/mixed;
boundary="
=_NextPart_000_0129_01C402BC.271586515"
This is a multi-part message in MIME format.
=_NextPart_000_0129_01C402BC.271586515
Content-Type: text/plain; charset="koi8-r"
йЪЧЙОЙФЕ, РТЙМБЗБЕНПЕ УППВЭЕОЙЕ ОЕ НПЦЕФ ВЩФШ ДПУФБЧМЕОП.
I'm sorry to have to inform you that the message returned below could not be delivered to one or more destinations.
Reason (127.0.0.1):
552 ERR too large message size
--
The ESERV mail server, SMTPSEND4 MTA
http://www.eserv.ru/SmtpSend
=_NextPart_000_0129_01C402BC.271586515
Content-Type: message/rfc822
Content-Disposition: attachment
11-я матрешка
10-я матрешка
9-я матрешка
8-я матрешка
7-я матрешка
6-я матрешка
5-я матрешка
4-я матрешка
3-я матрешка
2-я матрешка
1-я матрешка
For: zzzzzz@mydomain.ru
To: zzzzzz@mydomain.ru
Subject: CAN'T DELIVER MESSAGE: 552 Message size exceeds maximum permitted
From: "Eserv SMTPSEND4" <postmaster@mydomain.ru>
Date: Fri, 19 Oct 2007 15:24:18 +0800
Message-ID: <270855671c402ab$9edca520$0208a8c0@LOCALHOST>
MIME-Version: 1.0
Content-Type: multipart/mixed;
boundary="
=_NextPart_000_0129_01C402BC.270855671"
This is a multi-part message in MIME format.
=_NextPart_000_0129_01C402BC.270855671
Content-Type: text/plain; charset="koi8-r"
йЪЧЙОЙФЕ, РТЙМБЗБЕНПЕ УППВЭЕОЙЕ ОЕ НПЦЕФ ВЩФШ ДПУФБЧМЕОП.
I'm sorry to have to inform you that the message returned below could not be delivered to one or more destinations.
Reason (mx2.hc.ru):
552 Message size exceeds maximum permitted
--
The ESERV mail server, SMTPSEND4 MTA
http://www.eserv.ru/SmtpSend
=_NextPart_000_0129_01C402BC.270855671
Content-Type: message/rfc822
Content-Disposition: attachment
For: xxxxx@XXXXXXXX.ru
Received: from zzzzzz by mydomain.ru (acSMTP/3.0.4413) with SMTP id 7470 for <xxxxx@XXXXXXXX.ru>; Fri, 19 Oct 2007 14:53:39 +0800
Message-ID: <000201c8123f$6144fd50$ad00100a@zzzzzz>
From: =?koi8-r?B?78vVzsXXIOHMxcvTwc7E0g==?= <zzzzzz@mydomain.ru>
To: "777" <xxxxx@XXXXXX.ru>
Subject:
Date: Tue, 9 Oct 2007 14:59:23 +0400
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="
=_NextPart_000_0003_01C80A84.FA7AC5D0"
X-Priority: 3
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 6.00.2900.2180
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2180
This is a multi-part message in MIME format.
=_NextPart_000_0003_01C80A84.FA7AC5D0
Content-Type: multipart/alternative; boundary="
=_NextPart_001_0004_01C80A84.FA7AC5D0"
=_NextPart_001_0004_01C80A84.FA7AC5D0
Content-Type: text/plain; charset="koi8-r"
Content-Transfer-Encoding: quoted-printable
=_NextPart_001_0004_01C80A84.FA7AC5D0
Content-Type: text/html; charset="koi8-r"
Content-Transfer-Encoding: quoted-printable
<!DOCTYPE HTML PUBLIC "-W3CDTD HTML 4.0 TransitionalEN"> <HTML><HEAD>
<META http-equiv=3DContent-Type content=3D"text/html; charset=3Dkoi8-r">
<META content=3D"MSHTML 6.00.2900.2180" name=3DGENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=3D#ffffff>
<DIV> </DIV></BODY></HTML>
=_NextPart_001_0004_01C80A84.FA7AC5D0
=_NextPart_000_0003_01C80A84.FA7AC5D0
Content-Type: application/pdf; name="1.pdf"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="1.pdf"
127.0.0.1;Autoblacklisted, mailto:Postmaster@mydomain.ru
А здесь как раз все правильно.
И что будет когда 127.0.0.1 попадет IpBlackList?
Сделайте выборку из DATA\log\smtp\200710mail.txt с письмами, размер которых превышает лимит.
В долгосрочной перспективе — ничего хорошего.
Но проблему с злостными нарушителями размеров решает. В данном случае тоже матрешка крутиться перестанет.
Изменения после 4.29:
Остался, только, вопрос с письмами, превышающими разрешенный объем. В логе я вижу:
2007-10-26 15:46:35;user1@mydomain.ru;outuser@outdomain.ru;142582134;<000a01c817a3$89139850$4900100a@mydomain.local>;XX.XX.XX.XX;;localhost;Outbound
Это значит, что Eserv отправляет наружу это сообщение?
Как понять, почему Eserv сразу не отверг его для почтового клиента?
\ Если письмо было больше заданного размера, удаляем его
MESSAGE-SIZE MaxMessageSize > | DeleteCurrentFile " 552 ERR too large message size{CRLF}" SMTP_FPUTS EvalRules: smtp\filters\AutoBlackList \EOF \ -4007 THROW
Замените вторую на эту:
MESSAGE-SIZE DUP . MaxMessageSize DUP . > DUP . CR | DeleteCurrentFile " 552 ERR too large message size{CRLF}" SMTP_FPUTS EvalRules: smtp\filters\AutoBlackList \EOF \ -4007 THROW
Потом отправьте письмо, превышающее лимит, и процитируйте числа, которые появятся в acSMTP.log.
45296219 15000000 -1
..
..
19175633 15000000 -1
200711mail.txt
2007-11-09 11:55:45;usr1@mydomain;outuser@list.ru;45296219;<000401c82294$e9ea26c0$4a00100a@usr1>;xx.xx.xx.xx;;localhost;Outbound
..
..
2007-11-09 11:57:36;usr1@mydomain;outuser@list.ru;19175633;<000901c82295$1eef4d50$4a00100a@usr1>;xx.xx.xx.xx;;localhost;Outbound
Получается, что письмо проверено и оно больше MaxMessageSize, но все равно отправляеться наружу.
И это происходит не у всех пользователей.
Где смотреть дальше?
И смотреть дальше. В acSMTP.log должно появиться ещё одно число после строк с минус единицей. Интересно посмотреть на него.