LINUX.ORG.RU
ФорумAdmin

Qmail и Postfix, специфическая проблема...


0

0

Ситуация такая, с сервера qmail работает пересылка по alias-у на другой сервер, на котором работает postfix. Так вот давая команды postfix-у qmail делает такую вещь, после команды data пишет например так:

Return-Path: <tralala@domain.tld> X-Original-To: test@dom.net Delivered-To: test@dom.net Received: from m1.domain.tld (m.domain.tld [123.213.132.231]) Delivered-To: tralala-forward@domain.tld Date: Thu, 13 Jan 2005 14:00:37 +0300 From tralala@domain.tld Thu 13 Jan 11:00:04 2005 X-Mailer: The Bat! (v2.01.3) Educational Subject: Test Content-Type: text/plain; charset=Windows-1251 Content-Transfer-Encoding: 8bit ..... и т.д.

Посмотрите на строку "From tralala@domain.tld Thu 13 Jan 11:00:04 2005" Qmail там не ставит после From двоеточие. Postfix же в свою очередь из за того, что эта запись не похожа на заголовок (нет двоеточия) считает, что уже началось тело письма и вставляет пустую строку, а все поля которые дальше прописаны, уже считаются телом письма. Соответственно получается корявое письмо, так как многие клиенты считают, что после пустой строки всегда идёт уже тело письма, да и постфикс так считает. Ну оно и верно, что они так считают.

Вопрос, кто не правильно делает, qmail, потому что пишет без двоеточия там где оно нужно или postfix, который сам доставляет пустую строку???? И как эту фичу выключить в postfix, если она конечно выключается?

anonymous

Сорри за форматирование, вот так пральней:

Return-Path: <tralala@domain.tld>
X-Original-To: test@dom.net
Delivered-To: test@dom.net
Received: from m1.domain.tld (m.domain.tld [123.213.132.231])
Delivered-To: tralala-forward@domain.tld
Date: Thu, 13 Jan 2005 14:00:37 +0300
From tralala@domain.tld Thu 13 Jan 11:00:04 2005
X-Mailer: The Bat! (v2.01.3) Educational
Subject: Test Content-Type: text/plain; charset=Windows-1251
Content-Transfer-Encoding: 8bit
..... и т.д.

anonymous
()
Ответ на: комментарий от anonymous

Выяснил, как сам qmail поступает в таких ситуациях, когда в заголовке письма, встречаются строки без знака ":". qmail их просто игнорирует, как будто их и не было, то есть в итоговом письме, этих строк совсем нет. Как бы сделать тоже самое в postfix, а если нет такого параметра в конфиге, то где можно в сырцах это поправить?

anonymous
()
Ответ на: комментарий от chucha

qmail не мой сервак, поэтому там ничего не могу сделать, скорее всего такое происходит из-за spamassassin или антивируса который стоит на нём.

Я же могу только найти способ, сказать постфиксу, что не нужно считать телом письма строки, которые не похожи на поля и тем самым самому добавлять пустую строку, а нужно просто игнорировать такие строки в заголовке. И считать начало тела письма, только когда явно поступит пустая строка. Участок кода отвечающего за это в postfix, я не нашёл, может подскаже кто, где находитя этот код.

anonymous
()
Ответ на: комментарий от chucha

2chucha, глянь плиз в заголовки письма, которые у тебя qmail получает и локально кладёт в ящики, есть ли там заголовки типа вот такого:

From user@domain.ru Wed Dec 01 22:13:36 2004 Это третья строчка от начала письма, после Delivered-To: и Return-Path

Что это??? После From нет двоеточия, и что там делает дата??? Вот из за такой строки получается глюк на сервере постфикс, при пересылки, эта строка почему то не удаляется, хотя имхо по RFC её делать в заголовке письма нечего.

anonymous
()
Ответ на: комментарий от anonymous

Это нормальный формат ящиков mailbox. Не надо путать From_ в mailbox с полем From: из RFC-822.
В ящике формата mailbox письмо начинается с From (без двоеточия!), затем обязятельно идет пробел, потом адрес, потом дата. Потом через пробел может быть опционально комментарий, но он обычно не используется.

anonymous
()
Ответ на: комментарий от anonymous

Вопрос состоит вот в чём, почему тогда когда qmail пересылает e-mail на другой сервак, он эту строку тоже передаёт???

И ещё вопрос, когда письмо забираешь по pop3 с mailbox-а эта cтрока должна остаться в заголовке или она не отдаётся по pop3?

anonymous
()
Ответ на: комментарий от anonymous

Почему так ведет себя qmail не знаю - никогда им не пользовался.
По POP3 эта строка, естественно, не должна отдаваться.

Просто напиши для Postfix фильтр, который будет удалять эту строчку, и все.

anonymous
()
Ответ на: комментарий от anonymous

Пробовал, делал через header_check, но потфикс, строку с таким from, без двоеточия уже начинает относить к телу письма, а когда удаляешь в body_check, уже толку никакого так как постфикс, сам уже втавил путую строку. То бишь эту строку вырезать не удаётся, только где то в исходиках нужно править.

anonymous
()
Ответ на: комментарий от anonymous

Можно написать свой скрипт, который будет брать письмо со stdin, удалять эту строку и отправлять письмо через Postfix'овский sendmail.
Посмотри опцию content_filter и прочитай FILTER_README

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.