Smtp protocol synchronization error next input sent too soon pipelining was not advertised

При создании нового аккаунта Thunderbird шлет тестовые запросы по указанным параметрам соединений с целью убедиться в правильности оных. И вот, в который раз Thunderbird failed to find the settings for your email account. В логах почтового сервера exim4 такое: SMTP protocol synchronization…

October 28 2014, 00:16

Categories:

  • IT
  • Энергетика
  • Cancel

При создании нового аккаунта Thunderbird шлет тестовые запросы по указанным параметрам соединений с целью убедиться в правильности оных.

И вот, в который раз Thunderbird failed to find the settings for your email account.

В логах почтового сервера exim4 такое:
 SMTP protocol synchronization error (next input sent too soon: pipelining was not advertised): rejected «EHLO we-guess.mozilla.org» H=[80.251.118.79] next input=»QUITrn»

Минутка знаний.

Оказывается, pipelining это не только пересылка писем от одного демона другому силами никсового трубопровода. Оказывается, pipelining — это такое расширение SMTP, позволяющее ускорить диалог между сервером и клиентом с помощью отсылания пакета команд вместо одной. Ниже ярчайший пример прямо из соответствующего RFC:

Пример унылой обычной SMTP-сессии:
S: 220 Innosoft.com SMTP service ready
C: HELO dbc.mtview.ca.us
S: 250 Innosoft.com
C: MAIL FROM:
S: 250 sender OK
C: RCPT TO:
S: 250 recipient OK
C: RCPT TO:
S: 250 recipient OK
C: RCPT TO:
S: 250 recipient OK
C: DATA
S: 354 enter mail, end with line containing only «.»

C: .
S: 250 message sent
C: QUIT
S: 221 goodbye

У отправителя несколько адресов получателей. Он их вводит поочередно, и после каждого ввода должен ждать Вердикт Сервера: годится такой получатель или не годится. Было бы логично отправить сразу пачку получателей и в ответ получить список годных:

S: 220 innosoft.com SMTP service ready
C: EHLO dbc.mtview.ca.us
S: 250-innosoft.com
S: 250 PIPELINING
C: MAIL FROM:
C: RCPT TO:
C: RCPT TO:
C: RCPT TO:
C: DATA
S: 250 sender OK
S: 250 recipient OK
S: 250 recipient OK
S: 250 recipient OK
S: 354 enter mail, end with line containing only «.»

C: .
C: QUIT
S: 250 message sent
S: 221 goodbye

Так что, юзернейм, если тебе доведется беседовать с SMTP-сервером, и тот тебе скажет 250 PIPELINING, то ему можно задавать несколько вопросов в одной фразе, это его не запарит.

* * *

Но в моей ситуации проблема веселее. Exim получает пачку предъяв сразу же, не успев толком поздороваться. Такое поведение расценивается как невежливое, и клиент отфутболивается.

Гугл слыхал про такое, и не где-нибудь, а в официальной белой багзилле тандербёрда.
Bug 538809 [autoconfig] When attempting to determine what kind of SMTP support is available, Thunderbird sends EHLO greeting too quickly

Ребятушки мои, это подтвержденный действующий баг с 2010 года. Нормально? Вот его история.

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

Модератор: xM

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

Аватара пользователя

wwaaoo

мл. сержант
Сообщения: 107
Зарегистрирован: 2007-04-15 22:51:46

dikens3 писал(а):Строку Received пишет принимающий сервер. Спроси у того, чей сервер, почему так. А важно?

Для меня как для начинающего админа FreeBSD, важно знать каждую мелочь, а то как часто бывает пропустишь какую-нибудь мелкую деталь и потом оказывается что из-за неё все траблы. :D


Хостинговая компания 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/


Аватара пользователя

wwaaoo

мл. сержант
Сообщения: 107
Зарегистрирован: 2007-04-15 22:51:46

Непрочитанное сообщение

wwaaoo » 2007-05-30 15:12:06

dikens3 писал(а):Вот от форума мне пришло письмо(Строки читаются снизу вверх):

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

Received: from test.grand-prix.ru (test.grand-prix.ru [77.73.25.203])
        (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits))
        (No client certificate requested)
        by mail.mydomain.ru (MailServer) with ESMTP id 2B04B170C9
        for <postmaster@mydomain.ru>; Wed, 30 May 2007 15:40:19 +0400 (MSD)
Received: from lissyara by test.grand-prix.ru with local (Exim 4.67 (FreeBSD))
        (envelope-from <lissyara@test.grand-prix.ru>)
        id 1HtMWI-0002aV-JN
        for postmaster@mydomain.ru; Wed, 30 May 2007 15:39:14 +0400

Нижняя отметка сделана сервером Exim 4.67 (FreeBSD) и получено письмо локально(т.е. с этого же компа а не по TCP и т.п.)
Чуть выше уже мой сервер ставит(postfix). Что принято от test.grand-prix.ru (test.grand-prix.ru [77.73.25.203]) по TLS

Ага, вроде что-то понятно. :shock:


Аватара пользователя

wwaaoo

мл. сержант
Сообщения: 107
Зарегистрирован: 2007-04-15 22:51:46

Непрочитанное сообщение

wwaaoo » 2007-05-31 13:07:43

Люди, СВЕРШИЛОСЬ, наконецто я перешел c Kerio MailServer на Exim, вроде все пашет, 90% спама сразу режет, ЗА ПОСЛЕДНИЙ ДЕНЬ ни одного письма с ВИРУСАМИ, ВООБЩЕ понравился, но есть но.

А вот собственно проблемы:

1. Из-за чего появляются эти строки я знаю (я отправляю письмо в котором есть запрос на получение некой информации и после этого должон придти ответ, но ответа нет а есть вот такая запись в логах).И ещё мне кажется что ответ формируется автоматически, а непосылается из почтового клиента. Почему возникает эта запись и почему неприходят письма?

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

May 31 09:09:03 mail exim[978]: SMTP protocol synchronization error (next input sent too soon: pipelining was not advertised): rejected "RCPT TO:<kaz@kaz.rtr.ru>" H=(bsstransport) [192.168.101.53] I=[192.168.101.2]:25 next input="QUITrn"
May 31 09:09:03 mail exim[978]: SMTP protocol synchronization error (next input sent too soon: pipelining was not advertised): rejected "RCPT TO:<kaz@kaz.rtr.ru>" H=(bsstransport) [192.168.101.53] I=[192.168.101.2]:25 next input="QUITrn" 

и так может быть

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

May 31 09:09:44 mail exim[1002]: SMTP protocol synchronization error (next input sent too soon: pipelining was not advertised): rejected "RCPT TO:<kaz@kaz.rtr.ru>" H=(bsstransport) [192.168.101.53] I=[192.168.101.2]:25 next input="MAIL FROM:<victor@post.ru>rnQUITrn"
May 31 09:09:44 mail exim[1002]: SMTP protocol synchronization error (next input sent too soon: pipelining was not advertised): rejected "RCPT TO:<kaz@kaz.rtr.ru>" H=(bsstransport) [192.168.101.53] I=[192.168.101.2]:25 next input="MAIL FROM:<victor@post.ru>rnQUITrn"

Помогите очень КРИТИЧНО это!!!
В Kerio MailServer работает очень хорошо а вот в Exim возникают такие траблы.


Аватара пользователя

dikens3

подполковник
Сообщения: 4856
Зарегистрирован: 2006-09-06 16:24:08
Откуда: Нижний Новгород
Контактная информация:

Непрочитанное сообщение

dikens3 » 2007-05-31 13:11:08

http://www.lissyara.su/?id=1214
Тут почитай по теме:
smtp_enforce_sync

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

Спецификация протокола SMTP требует, чтобы клиент ждал ответа сервера в определённых точках диалога. Без PIPELINING, эти точки синхронизации - после каждой команды; с PIPELINING, их меньше, но они всё ещё существуют.
   Некоторые спамеры высылают полный набор команд SMTP без ожидания какого-либо ответаю Exim защищает от этого, путём отклонения сообщения, если клиент посылал будущий ввод (команды - прим. lissyara), когда этого не должно было быть.Посылается ответ о ошибке “554 SMTP synchronization error”, и соединение обрывается. Тестирование на эту ошибку не может быть идеальным, поскольку задержки передачи (неожиданный ввод может находиться в пути, но не получен при проверках exim). Однако, этим детектируется много случаев.
   Эта проверка может быть глобально отключена путём установки “smtp_enforce_sync” в ложь. Если вы хотите выборочно отключить эту проверку (например, только для определённых хостов), вы можете это сделать путём соответствующего использования модификатора “control” в ACL (смотрите раздел 39.18). Также, смотрите опцию “pipelining_advertise_hosts”.

Лучше установить FreeBSD, чем потратить 30 лет на Linux’ы и выяснить какой из них хуже.


Аватара пользователя

wwaaoo

мл. сержант
Сообщения: 107
Зарегистрирован: 2007-04-15 22:51:46

Непрочитанное сообщение

wwaaoo » 2007-05-31 13:19:22

Спасибо dikens3, чтобы без тебя делали то. :P

1. Но Kerio MailServer принимает нормально и неругается же?
2. И письма приходят же на мой запрос ааа?

Вот посмотри так правильно будет:
smtp_enforce_sync

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

warn hosts   = 87.145.201.35
      control = smtp_enforce_sync


Аватара пользователя

dikens3

подполковник
Сообщения: 4856
Зарегистрирован: 2006-09-06 16:24:08
Откуда: Нижний Новгород
Контактная информация:

Непрочитанное сообщение

dikens3 » 2007-05-31 13:31:02

wwaaoo писал(а):Спасибо dikens3, чтобы без тебя делали то. :P

1. Но Kerio MailServer принимает нормально и неругается же?
2. И письма приходят же на мой запрос ааа?

1. Ну блин, разные сервера, разные настройки и возможности, как уже говорилось, EXIM сделан в основном для борьбы со спамом. В нём для этого огромная куча возможностей. Актуально всегда будет. :-)

По 2-му вопросу не понял:
Имеешь ввиду, что от почтовиков почта нормально приходит? Нормальные почтовики.
Глючат клиенты, поcтавь другой MUA (BAT точно нормально работает)

Как правильно не знаю, не делал. На форуме уже было обсуждение с полгода назад.

Лучше установить FreeBSD, чем потратить 30 лет на Linux’ы и выяснить какой из них хуже.


Аватара пользователя

wwaaoo

мл. сержант
Сообщения: 107
Зарегистрирован: 2007-04-15 22:51:46

Непрочитанное сообщение

wwaaoo » 2007-05-31 13:39:55

По второму вопросы:

Почта приходит и уходит на ура, а вот от этого хоста нет, но я точно знаю что там ответы на наши запросы посылаются автоматически без участия почтовых клиентов.
Вот как это работает:
У нас есть спец. программа которая посылает определенные запросы и в зависимости от запроса их сервер посылает ответ (вот в краце принцеп работы).

Вот посмотри так правильно будет:

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

warn hosts   = 87.145.201.35
      control = smtp_enforce_sync


Аватара пользователя

dikens3

подполковник
Сообщения: 4856
Зарегистрирован: 2006-09-06 16:24:08
Откуда: Нижний Новгород
Контактная информация:

Непрочитанное сообщение

dikens3 » 2007-05-31 14:14:01

У меня нет таких хостов, как я тебе помогу? Как проверю? А наугад в ссылке читай, я там высказался.

Лучше установить FreeBSD, чем потратить 30 лет на Linux’ы и выяснить какой из них хуже.


Аватара пользователя

wwaaoo

мл. сержант
Сообщения: 107
Зарегистрирован: 2007-04-15 22:51:46

Непрочитанное сообщение

wwaaoo » 2007-06-04 14:56:00

Проблема разрешилась сама собой (незнаю в чем было дело).


Аватара пользователя

wwaaoo

мл. сержант
Сообщения: 107
Зарегистрирован: 2007-04-15 22:51:46

Непрочитанное сообщение

wwaaoo » 2007-06-04 15:08:22

Как-то я задавал вопрос:

wwaaoo писал(а):Опять я:

Заметил такую вещь что люди стараются скрывать информацию о том какой почтовый сервер используют.

Вот и у меня возникло такое желание, как сделать так чтобы скрыть информацию о своем сервере, а в частности вот это:

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

Received: from [192.168.1.251]
	by mail.new.org with esmtpa (Exim 4.67 (FreeBSD))

Тоесть как сделать так чтобы он не вставлял в тело письма информацию о себе?

Чтобы было вот так:

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

Received: from [192.168.1.251]
	by mail.new.org with esmtpa (Super Puper Server 6.9 (Windows Vista))

и получил ответ:

dikens3 писал(а):

# Поиск маршрута в DNS, если не найден то Unroutable address
dnslookup:
driver = dnslookup
domains = ! +local_domains
headers_remove = Received
transport = remote_smtp
ignore_target_hosts = 0.0.0.0 : 127.0.0.0/8
no_more

Всё во внешний мир не будет иметь поля receved вовсе. А входящие, да фиг с ними.

Но это не всё.

Подскажите пожалуйста:
1. Как сделать тоже самое, но уже для входящих сообщений?
2. Как сделать так чтобы он неудалял это поле, а подменял его другим значением?
Например:

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

Received: from [192.168.1.251]
	by mail.new.org with esmtpa (Super Puper Server 6.9 (Windows Vista))


Аватара пользователя

dikens3

подполковник
Сообщения: 4856
Зарегистрирован: 2006-09-06 16:24:08
Откуда: Нижний Новгород
Контактная информация:

Непрочитанное сообщение

dikens3 » 2007-06-04 16:09:49

1. Как сделать тоже самое, но уже для входящих сообщений?
2. Как сделать так чтобы он неудалял это поле, а подменял его другим значением?

Не стоит так делать, ибо:
1. Средства антиспам проверяют эти поля.
2. Разбор полётов по заголовкам в письме много даёт информации когда что-то не работает.

Если ты собираешься удалить информацию о своём сервере и скрыть от своих пользователей, то 10 раз подумай.
Решение могу описать образно:
Тот же принцип только в другом роутере:

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

Типа этого:
mysql_users:
  driver = accept
  domains = ${lookup mysql{MYSQL_DOMAINS}}
  local_parts = ${lookup mysql{MYSQL_USERS}}
  transport = mysql_delivery

Так вот тебе придётся найти уникальную комбинацию в поле received, которую добавляет твой сервер в хидеры. (Обычно это IP-Адрес твоего сервака)
Потом в роутере как то её удалить или заменить. Можно в фильтре наверное это сделать.

Только теория, не делал. Но мысль интересная. Отпишись, если сделаешь.

Лучше установить FreeBSD, чем потратить 30 лет на Linux’ы и выяснить какой из них хуже.


Аватара пользователя

wwaaoo

мл. сержант
Сообщения: 107
Зарегистрирован: 2007-04-15 22:51:46

Непрочитанное сообщение

wwaaoo » 2007-06-04 16:36:27

dikens3 писал(а):
Не стоит так делать, ибо:
1. Средства антиспам проверяют эти поля.
2. Разбор полётов по заголовкам в письме много даёт информации когда что-то не работает.

1. Например в Exim есть такая опция:

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

smtp_banner = "$primary_hostname, ESMTP EXIM $version_number" 

и ничего кроме тестового сообщения оно роли не играет. Правильно?

Вот и тут:

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

Received: from [192.168.1.251]
   by mail.new.org with esmtpa (Exim 4.67 (FreeBSD))

Получается мне надо изменить только:

и соответственно как оно повлияет на обработку почтовыми серверами? Вроде не повлияет.

Так что необходимо чтобы и из локальной сети минимум инфу можно было узнать.


Аватара пользователя

wwaaoo

мл. сержант
Сообщения: 107
Зарегистрирован: 2007-04-15 22:51:46

Непрочитанное сообщение

wwaaoo » 2007-06-05 9:41:31

Походу бойкот моим тупым вопросам объявили, ну да ладно.

От одного из моих клиентов идет где-то 70% всего спама (данные все в норме, тоесть HELO, IP все соответствет моему клиенту).

Опять вопрос: Может ли спамер полностью подделать все данные, чтобы письмо казалось что пришло от легального источника?


Аватара пользователя

dikens3

подполковник
Сообщения: 4856
Зарегистрирован: 2006-09-06 16:24:08
Откуда: Нижний Новгород
Контактная информация:

Непрочитанное сообщение

dikens3 » 2007-06-05 11:05:15

wwaaoo писал(а):Походу бойкот моим тупым вопросам объявили, ну да ладно.

От одного из моих клиентов идет где-то 70% всего спама (данные все в норме, тоесть HELO, IP все соответствет моему клиенту).

Опять вопрос: Может ли спамер полностью подделать все данные, чтобы письмо казалось что пришло от легального источника?

Есть всякие masterhost и т.п. от которых идёт спам. Данные даже в SPF могут верные.

Отсюда:
1. Нужно следить за этим, а хостеру заняться больше нечем?
2. Компы в сети к примеру могут быть заражены вирусами и сами рассылать через свой нормально настроенный почтовик. Опять нужно смотреть за всем.

Лучше установить FreeBSD, чем потратить 30 лет на Linux’ы и выяснить какой из них хуже.


Аватара пользователя

wwaaoo

мл. сержант
Сообщения: 107
Зарегистрирован: 2007-04-15 22:51:46

Непрочитанное сообщение

wwaaoo » 2007-06-05 11:13:52

Тогда ещё вопросик:
А если в локальной сети будет авторизованная отправка, то вирусы могут например взять пароль и логин из почтового клиента и уже с авторизацией отправлять? Вообще на практике есть такие случае что ТРОЯНЫ и ЧЕРВИ шлют письма предварительно украв ЛОГИН и ПАРОЛЬ из почтовых клиентов?


Аватара пользователя

wwaaoo

мл. сержант
Сообщения: 107
Зарегистрирован: 2007-04-15 22:51:46

Непрочитанное сообщение

wwaaoo » 2007-06-13 15:05:41

wwaaoo писал(а):Тогда ещё вопросик:
А если в локальной сети будет авторизованная отправка, то вирусы могут например взять пароль и логин из почтового клиента и уже с авторизацией отправлять? Вообще на практике есть такие случае что ТРОЯНЫ и ЧЕРВИ шлют письма предварительно украв ЛОГИН и ПАРОЛЬ из почтовых клиентов?

Да видимо на этот вопрос нет ОТВЕТА. :?


jeweller

сержант
Сообщения: 189
Зарегистрирован: 2006-11-17 21:58:43
Откуда: Самара
Контактная информация:

Непрочитанное сообщение

jeweller » 2007-06-15 8:36:11

ну а ты сам то как думаешь?
если есть подобные механизмы у троянов которых ты пропустил (а вернее твой антивирус или там файрволл) то все может быть реально.


Аватара пользователя

dikens3

подполковник
Сообщения: 4856
Зарегистрирован: 2006-09-06 16:24:08
Откуда: Нижний Новгород
Контактная информация:

Непрочитанное сообщение

dikens3 » 2007-06-15 8:45:19

jeweller писал(а):ну а ты сам то как думаешь?
если есть подобные механизмы у троянов которых ты пропустил (а вернее твой антивирус или там файрволл) то все может быть реально.

Всё может быть, могут быть скопированы все E-mail’ы у пользователя, для рассылки спама.

А теперь предположим висит пользователя троян, скопировал всё что мог. Отослал данные куда-то и ждёт команд(т.е. периодически лезет в инет куда-то и что-то ищет)
Когда приходит команда на рассылку, троян рассылает спам(а не себя). Вот тебе отличное средство для рассылки спама.

Лучше установить FreeBSD, чем потратить 30 лет на Linux’ы и выяснить какой из них хуже.


jeweller

сержант
Сообщения: 189
Зарегистрирован: 2006-11-17 21:58:43
Откуда: Самара
Контактная информация:

Непрочитанное сообщение

jeweller » 2007-06-15 8:47:00

dikens3 писал(а):

jeweller писал(а):ну а ты сам то как думаешь?
если есть подобные механизмы у троянов которых ты пропустил (а вернее твой антивирус или там файрволл) то все может быть реально.

Всё может быть, могут быть скопированы все E-mail’ы у пользователя, для рассылки спама.

А теперь предположим висит пользователя троян, скопировал всё что мог. Отослал данные куда-то и ждёт команд(т.е. периодически лезет в инет куда-то и что-то ищет)
Когда приходит команда на рассылку, троян рассылает спам(а не себя). Вот тебе отличное средство для рассылки спама.

всецело поддерживаю:)


Аватара пользователя

wwaaoo

мл. сержант
Сообщения: 107
Зарегистрирован: 2007-04-15 22:51:46

Непрочитанное сообщение

wwaaoo » 2007-06-15 14:22:42

Охренеть!!! Дык получается, что если Троян будет отсылать спам в малых количествах (ну например 10 писем в день) то невозможно узнать кто это делает Троян или пользователь?

Я прав?

И фактически определить деятельность трояна можно только просматривая километровые логии EXIM — a


Аватара пользователя

wwaaoo

мл. сержант
Сообщения: 107
Зарегистрирован: 2007-04-15 22:51:46

Непрочитанное сообщение

wwaaoo » 2007-06-15 14:29:15

Значит получается так, есть у меня 200 компов и 150 из них заражены данным ТРОЯНОМ то отследить рассылку спама фактически нереально!?

И ещё, я понять не могу, например в том же Thunderbird 2.0 пароли хранятся в зашифрованном виде, дык как тогда Троян его может узнать и если он может это сделать то грош цена этим менеджерам паролей


Аватара пользователя

Alex Keda

стреляли…
Сообщения: 35413
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Непрочитанное сообщение

Alex Keda » 2007-06-15 15:28:49

да не защитишься ты от всего….

Убей их всех! Бог потом рассортирует…


Аватара пользователя

dikens3

подполковник
Сообщения: 4856
Зарегистрирован: 2006-09-06 16:24:08
Откуда: Нижний Новгород
Контактная информация:

Непрочитанное сообщение

dikens3 » 2007-06-15 15:48:35

wwaaoo писал(а):Значит получается так, есть у меня 200 компов и 150 из них заражены данным ТРОЯНОМ то отследить рассылку спама фактически нереально!?

И ещё, я понять не могу, например в том же Thunderbird 2.0 пароли хранятся в зашифрованном виде, дык как тогда Троян его может узнать и если он может это сделать то грош цена этим менеджерам паролей

УУУУУУ… Как всё запущено.
Слыхал наверное про БОТ-net сети? Как думаешь они спам рассылают?
Фактически нереально, но можно. Только средств и сил для этого потребуется очень немало.

К примеру есть такой вариант. Включаешь комп и оставляешь на сутки, если полез в инет, троян. Сам обычно комп в инет не ходит. :-)

Пароли выломать из MUA, OUTLOOK и BAT вообще не вопрос.

Лучше установить FreeBSD, чем потратить 30 лет на Linux’ы и выяснить какой из них хуже.


ashgdw

ефрейтор
Сообщения: 54
Зарегистрирован: 2007-06-19 14:27:22
Контактная информация:

Непрочитанное сообщение

ashgdw » 2007-06-19 16:28:08

Привет всем! )

Пока курю документацию, но постоянно отвлекают, а уже не терпится посмотреть в деле как и что..

Сейчас стоит mdaemon 6. Хочу поставить EXIM перед ним, чтоб резал спам и накапливал почту ПОКА сервер с Mdaemon недоступен.

Подскажите пожалуйста, как Сделать:
1. Что бы при получении для своего домена(mydom.com), EXIM переправлял почту на конкретный хост(IP сервера с Mdaemon (не охото указывать виндовый днс-сервер)). Нужно ли в этом случае на фре заводить всех пользователей?

2. И, что бы при отсылке почты во «внешний мир», если не удалось доставить, то exim отправлял бы её на SMTP-релей провайдера.

Спасибо. )


demondem

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

Непрочитанное сообщение

demondem » 2007-07-09 15:01:27

Уважаемые знатоки вот лог из debug.log не могу понять в чем дело не подключается
bat к серверу база в mysql ПРОШУ ПОМОЩИ

Jul 9 17:55:19 ns pop3d: Connection, ip=[192.168.0.10]
Jul 9 17:55:19 ns authdaemond: received auth request, service=pop3, authtype=login
Jul 9 17:55:19 ns authdaemond: authpam: trying this module
Jul 9 17:55:19 ns authdaemond: authpam: username ‘admin’ not found in password file
Jul 9 17:55:19 ns authdaemond: authpam: REJECT — try next module
Jul 9 17:55:19 ns authdaemond: authmysql: trying this module
Jul 9 17:55:19 ns authdaemond: SQL query: SELECT ‘username’, crypt, «», 26, 26, CONCAT(‘/var/mail/exim’,’maildir’), «», «», name, «» FROM mailbox WHERE ‘username’ = «admin»
Jul 9 17:55:19 ns authdaemond: mysql_query failed, reconnecting: Unknown column ‘crypt’ in ‘field list’
Jul 9 17:55:19 ns authdaemond: mysql_query failed second time, giving up: Unknown column ‘crypt’ in ‘field list’
Jul 9 17:55:19 ns authdaemond: authmysql: TEMPFAIL — no more modules will be tried
Jul 9 17:55:55 ns pop3d: Connection, ip=[192.168.0.10]
Jul 9 17:55:55 ns authdaemond: received auth request, service=pop3, authtype=cram-md5
Jul 9 17:55:55 ns authdaemond: authpam: trying this module
Jul 9 17:55:55 ns authdaemond: authpam only handles authtype=login
Jul 9 17:55:55 ns authdaemond: authpam: REJECT — try next module
Jul 9 17:55:55 ns authdaemond: authmysql: trying this module
Jul 9 17:55:55 ns authdaemond: cram: challenge=PDFBNURGQTc5NUFCOENGMzc1MjY3NjBBRjk2RjdGMEU2QG5zLmRpYWxpbi5rej4=, response=YWRtaW4gYzliNjlhZjZhMThkMmM0ZDIwZDRmZWM3NGE2Y2MxMTc=
Jul 9 17:55:55 ns authdaemond: cram: decoded challenge/response, username ‘admin’
Jul 9 17:55:55 ns authdaemond: authmysql: TEMPFAIL — no more modules will be tried



Просмотр полной версии : exim SMTP protocol synchronization error


Serg_amigo

14.11.2013, 00:27

Добрый день! Прошу у Вас помощи разобраться в проблеме с exim. Операционная Система debian 6.
Ситуация в следующем:
1) Почта с почтовых клиентов не отправляется с некоторых сетей. В этот момент в логе exim запись
2013-11-13 15:56:28 no IP address found for host dynamicip-37-113-158-20.pppoe.chel.ertelecom.ru (during SMTP connection from [37.113.158.20])
2013-11-13 15:56:28 SMTP protocol synchronization error (input sent without waiting for greeting): rejected connection from H=[37.113.158.20] input=»260301″
2013-11-13 15:56:28 no IP address found for host dynamicip-37-113-158-20.pppoe.chel.ertelecom.ru (during SMTP connection from [37.113.158.20])
2013-11-13 15:59:35 no IP address found for host dynamicip-37-113-158-20.pppoe.chel.ertelecom.ru (during SMTP connection from [37.113.158.20])
2) В сервисах exim лампочка серая, т.е. как будто не включен. Но тем не менее почта отправляется правда как написал ранее не со всех сетей.

Помогите пожалуста решить проблему.


Здравствуйте,

У ip обратная зона — dynamicip-37-113-158-20.pppoe.chel.ertelecom.ru.
# host 37.113.158.20
20.158.113.37.in-addr.arpa domain name pointer dynamicip-37-113-158-20.pppoe.chel.ertelecom.ru.

Но dynamicip-37-113-158-20.pppoe.chel.ertelecom.ru. не имеет прямой зоны
# host dynamicip-37-113-158-20.pppoe.chel.ertelecom.ru.
Host dynamicip-37-113-158-20.pppoe.chel.ertelecom.ru. not found: 3(NXDOMAIN)

Смените PRT для ip, или сделайте чтобы dynamicip-37-113-158-20.pppoe.chel.ertelecom.ru. разрешался в 37.113.158.20


Serg_amigo

14.11.2013, 22:49

Здравствуйте,

У ip обратная зона — dynamicip-37-113-158-20.pppoe.chel.ertelecom.ru.
# host 37.113.158.20
20.158.113.37.in-addr.arpa domain name pointer dynamicip-37-113-158-20.pppoe.chel.ertelecom.ru.

Но dynamicip-37-113-158-20.pppoe.chel.ertelecom.ru. не имеет прямой зоны
# host dynamicip-37-113-158-20.pppoe.chel.ertelecom.ru.
Host dynamicip-37-113-158-20.pppoe.chel.ertelecom.ru. not found: 3(NXDOMAIN)

Смените PRT для ip, или сделайте чтобы dynamicip-37-113-158-20.pppoe.chel.ertelecom.ru. разрешался в 37.113.158.20

Будьте любезны поясните, пожалуйста, как это реализовать?


37.113.158.20 ваш же ip адрес? Нужно сделать для него нормальный обратный адрес. То есть чтобы этот домен (который обратный адрес) так же разрешался в днс. Желательно в этот же 37.113.158.20. Тогда у вас прямая и обратные зоны будут совпадать и проблемы не будет.


Serg_amigo

15.11.2013, 12:53

37.113.158.20 ваш же ip адрес? Нужно сделать для него нормальный обратный адрес. То есть чтобы этот домен (который обратный адрес) так же разрешался в днс. Желательно в этот же 37.113.158.20. Тогда у вас прямая и обратные зоны будут совпадать и проблемы не будет.

Нет ИП адрес не мой (не сервера) ИП адрес человека который хочет воспользоваться почтовым клиентом находясь дома. Этот ип динамический и завтра он может быть другим. Более того он сообщает, что пытался настроить и в офисе и у коллег и ничего не получалось. В логах пишет туж самую фигню но только ИП адреса другие.


Тогда скорее всего дело не в обратном адресе.
SMTP protocol synchronization error (input sent without waiting for greeting): rejected connection from H=[37.113.158.20] input=»260301″

Похоже, что клиент не дожидается HELO от вашего сервера и шлет свое приветствие.

Попробуйте добавить в файл конфигурации exim
control=no_enforce_sync


Serg_amigo

16.11.2013, 15:11

Добавил в самый низ правил.
Только сейчас выяснил что конфигурационный файл по умолчанию…
exim -bP configure_file
/var/lib/exim4/config.autogenerated

Перезагрузил сервер. Но всеравно ошибка в клиенте.
Лог exim

2013-11-16 12:11:10 no IP address found for host dynamicip-37-113-149-37.pppoe.chel.ertelecom.ru (during SMTP connection from [37.113.149.37])
2013-11-16 12:11:15 no IP address found for host dynamicip-37-113-149-37.pppoe.chel.ertelecom.ru (during SMTP connection from [37.113.149.37])

И еще ранее я уже писал о том что в сервисах SMTP отображается как не активное (выключено). Может быть этот как то связано? Если да то наверное где то в логах должна быть запись. Мы с Вами где то уже на форуме пытались решить этот вопрос не активности но так и не решили. Ссылочка где обсуждали проблему вот (http://forum.ispsystem.com/ru/showthread.php?t=23430)

Еще почистил после этого паник лог но при рестарте exim пишет
root@server:/var/log/exim4# /etc/init.d/exim4 restart
Stopping MTA for restart: exim4_listener.
Restarting MTA: exim4.
ALERT: exim paniclog /var/log/exim4/paniclog has non-zero size, mail system possibly broken … failed!

После удаления файла paniclog только тогда запустился нормально. Но в сервисах так и весит не активным.
/var/log/exim4# /etc/init.d/exim4 restart
Stopping MTA for restart: exim4_listener.
Restarting MTA: exim4.


Serg_amigo

16.11.2013, 17:23

Самое интересное, что после рестарта самого сервера файл /var/lib/exim4/config.autogenerated принимает прежнее значение. Как быть?


/var/lib/exim4/config.autogenerated не тот лог, что использует exim.
Тот, что использует exim — /etc/exim4/exim4.conf.template (это на Debian, в зависимости от ОС может отличаться).

В той части лога, что последний раз привели только ошибка обратной зоны.


Serg_amigo

17.11.2013, 01:29

/var/lib/exim4/config.autogenerated не тот лог, что использует exim.
Тот, что использует exim — /etc/exim4/exim4.conf.template (это на Debian, в зависимости от ОС может отличаться).

В той части лога, что последний раз привели только ошибка обратной зоны.

Обратной зоны…хм.. и что нужно сделать тогда? Других сообщений в логе нет.

Подскажите, пожалуйста, в какое место нужно дописать control=no_enforce_sync
в файле /etc/exim4/exim4.conf.template по гуглил но увы так и не смог понять.


В acl секцию нужно прописать.
Более подробно: http://www.exim.org/exim-html-current/doc/html/spec_html/ch-access_control_lists.html

Но это не решает вопрос обратной зоны. PTR лучше настроить.

Уточните, при отправке из клиента письма возникает какая-то ошибка? «Отлуп» потом приходит?


Serg_amigo

19.11.2013, 00:47

В acl секцию нужно прописать.
Более подробно: http://www.exim.org/exim-html-current/doc/html/spec_html/ch-access_control_lists.html

Но это не решает вопрос обратной зоны. PTR лучше настроить.

Уточните, при отправке из клиента письма возникает какая-то ошибка? «Отлуп» потом приходит?

Проблема возникает еще вмомент настройки ms outlook когда начинает проверять smtp сервер сразу пишет что не удалось……


Serg_amigo

19.11.2013, 00:54

Может имеет смысл удалить в возможностях и заново установить? Настраивая PTR в поле имя пишу название домен на конце точка, а в адресе пишу IP адрес сервера. Все верно думаю?


>Проблема возникает еще вмомент настройки ms outlook когда начинает проверять smtp сервер сразу пишет что не удалось……
может быть тогда дело в настройках почтовика? Он вообще подключается к почтовому серверу?


Serg_amigo

19.11.2013, 23:56

>Проблема возникает еще вмомент настройки ms outlook когда начинает проверять smtp сервер сразу пишет что не удалось……
может быть тогда дело в настройках почтовика? Он вообще подключается к почтовому серверу?

Настраивая везде одинаково. На ПК где статический ИП адрес подключается Microsoft Outlook без проблем. Т.е. проходит проверку pop и smtp и в последствии отправляет и получает почту. На ПК где адрес присваивается динамический сразу начинается этот глюк. Т.е. фактически когда настраиваешь нажимаешь проверить в итоге pop проходит а smtp нет. Причем пробывал настроить не на одном ПК а на 3 разных. Честно скажу зашел в тупик и не знаю в чем суть…. Телнетом ПК легко подключаются и на 110 и на 25 порты.


Serg_amigo

01.12.2013, 02:44

>Проблема возникает еще вмомент настройки ms outlook когда начинает проверять smtp сервер сразу пишет что не удалось……
может быть тогда дело в настройках почтовика? Он вообще подключается к почтовому серверу?

Проблему решил опять самостоятельно… Решились сразу все проблемы :) … Спасибо Fly за попытку помочь!


Написали бы как решили, чтоб другие знали


Serg_amigo

01.12.2013, 03:13

Написали бы как решили, чтоб другие знали

Ах да. Сори.
И так решение.
Случайным образом обнарожил, что не запускается nslookup. Проверил файл resolv.conf. В нем увидел что нет nameserver 127.0.0.1 Как только добавил сразу все проблемы решили, а именно
Стал запускаться nslookup
SMTP стал отправлять с ПК
В сервисах SMTP отображается как запущен



Powered by vBulletin® Version 4.2.5 Copyright © 2023 vBulletin Solutions Inc. All rights reserved. Перевод: zCarot

Под «внешними средствами» я понимаю дополнительный софт, без которого впринципе можно и обойтись.
Однако, если его применение облегчит нам жизнь, снизит количества спама или замедлит рост энтропии — почему бы и нет.

Отстрел ботов

Сейчас практически must-have для почтового сервера. Резко снижает содомию в логах, и загрузку всей остальной системы за счёт меньшей работы антимпама/антивируса/dns’а и т.д.

Для этой задачи вы можете использовать или «старый добрый» fail2ban или мою разработку — f2b.

Настройку fail2ban вы и без меня осилите, т.к. оно достаточно индивидуально, привожу только failregex.
Всё что ниже 5й линии — это сообщения из соответствующих проверок acl_smtp_helo и acl_smtp_rcpt.

failregex = SMTP protocol synchronization error (input sent without waiting for greeting): rejected connection from .*[<HOST>]
            SMTP protocol synchronization error (next input sent too soon: pipelining was not advertised): rejected .*[<HOST>]
            rejected EHLO from [<HOST>]: syntactically invalid argument
            rejected HELO from [<HOST>]: syntactically invalid argument
            Connection from [<HOST>] refused: too many connections from that IP address
            [<HOST>] .* host is listed in zen.spamhaus.org
            [<HOST>] .* host is listed in bl.spamcop.net
            [<HOST>] .* Bad rev hostname (.*)
            [<HOST>] .* relay not permitted
            [<HOST>] .* too many connections from that IP address
            [<HOST>] .* IP address in HELO
            [<HOST>] .* HELO should be FQDN
            [<HOST>] .* localhost is a silly HELO
            [<HOST>] .* Using my HELO is a bad idea
            [<HOST>] .* SPF for sender domain not allows mail from your host
            [<HOST>] .* You are blocked
            [<HOST>] .* Dont like your hostname

Обратите внимание — используются не все проверки. Логика отбора такая: под раздачу должны попадать хосты, у которых есть какой-то серьёзный косяк, и которые продолжают настойчиво к нам ломиться.

[exim]
findtime = 300 # если в последние T секунд ...
maxretry = 5   # .. было N срабатываний для одного и того же ip ..
bantime = 3600 # .. отправить его отдохнуть на часик
logpath = /var/log/exim/mainlog
enabled = true
filter  = exim-custom

f2b настраивается примерно так (только описание самого jail’а):

[jail:postfix]
enabled = yes
source  = files:/var/log/mail.log
filter  = preg:/etc/f2b/filters/postfix.preg
backend  = exec-ipset:banned
bantime = 3600

Грейлистинг

В приведённом ранее конфиге были места, где устанавливался флаг, что этот хост нужно проверить грейлистингом, однако самой проверки не было.

Для реализации грейлистинга используется sqlgrey. Спроектирован он изначально под postfix, и его check_policy, здесь это придётся костылять средствами exim’а.

В acl check_rcpt, поближе к концу, но перед accept domains = +our_domains:

  # greylisting
  defer message    = Service temporarily unavailable, try again later
        condition  = ${if eq{$acl_m_greylist}{1} {yes}{no}}
        set acl_m0 = request=smtpd_access_policynprotocol_state=RCPTnprotocol_name=${uc:$received_protocol}nhelo_name=$sender_helo_namenclient_address=$sender_host_addressnclient_name=$sender_host_namensender=$sender_addressnrecipient=$local_part@$domainninstance=$sender_host_address/$sender_address/$local_part@$domainnn
        set acl_m0 = ${sg{${readsocket{/var/run/sqlgrey.sock}{$acl_m0}{5s}{}{action=DUNNO}}}{action=}{}}
        condition  = ${if eq{${uc:${substr{0}{5}{$acl_m0}}}}{DEFER} {yes}{no}}

Выглядит оно достаточно страшно, но тем не менее работает.

Обратите внимание на используемые переменные вида acl_m* — они раскрываются для каждого сообщения, поскольку грейлистинг использует триплеты senderip-from-rcpt.
Это также означает, что мы можем использовать эту проверку только в пределах acl_smtp_rcpt.

Справочно, конфиг самого sqlgrey:

unix = /var/run/sqlgrey.sock
reconnect_delay = 10
max_connect_age = 24
awl_age = 32
group_domain_level = 10
db_type = SQLite
db_name = /var/db/sqlgrey/stats.db
optmethod = optout

DKIM

В exim’е есть базовая поддержка dkim’а, надо только чтобы она была включена при компиляции.

Этот блок — дописывается в начало файла exim’а:

DKIM_DOMAIN      = ${lc:${domain:$h_from:}}
DKIM_FILE        = /etc/exim/${lc:${domain:$h_from:}}.key
DKIM_PRIVATE_KEY = ${if exists{DKIM_FILE}{DKIM_FILE}{0}}

…и добавляем три строчки к транспорту remote_smtp:

remote_smtp:
  driver = smtp
  interface = 4.3.2.1
  no_delay_after_cutoff
# ага, вот эти ребята
  dkim_domain      = DKIM_DOMAIN
  dkim_selector    = dkim
  dkim_private_key = DKIM_PRIVATE_KEY

Антиспам

В нашем варианте в качестве антиспама используется rspamd.
spamassassin прикручивается почти так же, надо поменять variant=
и подправить проверку переменной $spam_action

Про донастройку rspamd я отдельно расскажу, здесь только как его подключить к exim’у.

Вот этот блок — в начало конфига.

spamd_address = 127.0.0.1 11333 variant=rspamd

А этот — дописать в acl check_data, чтобы он принял примерно такой вид:

check_data:
  # не проверять сообщения с наших собственных серверов
  accept hosts          = +our_networks : +our_hosts : +relay_from_hosts

  # пропускать всё с "наших" доменов
  # с проверкой, что письмо от "нашего" домена идёт с "наших" хостов -
  # надо было разбираться раньше
  accept sender_domains = +our_domains

  # не проверять сообщения, если используется submission
  accept condition = ${if eq {$interface_port}{587} {yes}{no}}

  # не проверять юзеров, которые авторизовались в системе
  accept authenticated = *

  # это правило как раз и отправляет письмо на проверку антиспамом
  # nobody - это "профиль пользователя" в антиспаме
  warn  spam = nobody:true

  # тут - проверка антивирусником, смотри далее

  # если письмо набрало больше порога - отлуп
  deny  condition = ${if eq{$spam_action}{reject}}
        message   = Message discarded as high-probability spam

  # если антиспам считает письмо "хорошим" - добавить хидер
  # потом это поможет в разбирательствах, попало письмо в проверку или нет
  accept condition  = ${if eq{$spam_action}{no action} {yes}{no}}
         add_header = X-Spam-Status: No

  # если письмо набрало сколько-то баллов, но недобрало до отлупа -
  # добавляем дополнительную информаию для дальнейших разбирательств
  #
  # я дальше покажу как отловить такие письма и сложить отдельно
  accept condition  = ${if eq{$spam_action}{add header} {yes}{no}}
         add_header = X-Spam-Status: Yes
         add_header = X-Spam-Score: $spam_score ($spam_bar)
         add_header = X-Spam-Report: $spam_report

  # ну ладно, так уж и быть - пущу
  accept

Антивирус

Антивирусов под линуксом немного, запутаться сложно.
По дефолту показываю на примере clamav, если у вас что-то другое — исправляйте под свои реалии.

В начало конфига, к общим настройкам:

av_scanner = clamd:/var/run/clamav/clamd.sock

В секцию acl’ов, дописать в середину check_data:

check_data:
  <...>
  # discard viruses and malware
  deny  malware = */defer_ok
        message = This message was detected as possible malware

defer_ok — говорит серверу при недоступности антивирусника или его кривой настройкой,
отвечать 4XX ошибками — «сервис временно недоступен» (вместо 5XX). Почта не пропадёт.

Немного про эффективность clamd: официальные базы ловят немного, и обновляются весьма неспешно,
по моим наблюдениям — примерно пятую часть от новья и половину от старых.
Разгребая спецящик «под спам» в день находишь 2-3 бинарника/архива. Смотришь логи clamav, но уже за неделю — те же 2-3 шт.
Хотя надо учитывать ещё две вещи — наличие DNSBL/XBL (думаю, без них до clamav доходило бы намного больше) и сам характер непойманных «вирусов».

Примеры из непойманного:

  • zip-архив, внутри — js-скрипт с eval’ом. Не знаю на кого это рассчитано и как оно намеревалось запускаться.
  • запароленные архивы, пароль указан в самом письме. Часть из них clamav всё же ловит, но не всё.
  • rar, переименованный в маргинальщину типа .ace. Это рассчитано на winrar, который жрёт всё. Такое clamav должен ловить.

Чтобы победить эту напасть и повысить уловы, рекомендуют заюзать неофициальные базы: тыц
Часть из них платные, часть — полностью свободные. При подключении части этих баз, отсекается порядка 80% случаев, типа описанных выше.

Потребление памяти в процессе работы (до 20 писем/мин): ~350 метров.

Если есть желание пополнить базу, вот скриптик в помощь:

#!/bin/sh
# исправьте на свои
USER="Alex Z"
EMAIL="ad_user@runbox.com"
# нет прокси - убрать или закомментировать
PROXY="http://192.168.49.1:8080"
export http_proxy="$PROXY"
export https_proxy="$PROXY"

ls *.zip 2> /dev/null | while read ZIP; do
  unzip "$ZIP"         && rm -vf "$ZIP"
done

ls *.exe *.ace *.scr *.jar *.doc *.vbs 2> /dev/null | while read FILE; do
  echo "Processing $FILE"
  clamsubmit -N "$USER" -e "$EMAIL" -n "$FILE" > /dev/null         && rm -vf "$FILE"
done

Выделяем где-нибудь отдельную директорию, кладём туда этот скриптик, накидываем «улов» и запускаем.
Занимает времени — полминуты, но повышает ЧСВ на 100500.

Опять же по опыту, добавляют в базу примерно 1/30 образцов.

К оглавлению,
Далее: Обратная связь и переобучение системы


1

1

Привет!

В продолжение прошлой темы, есть мой сервачек, на сервачке Vesta CP + exim4 + Ubuntu 16.04 Как сделать так, чтобы работал STARTTLS? Вот конфиг эксима.

######################################################################
#                                                                    #
#          Exim configuration file for Vesta Control Panel           #
#                                                                    #
######################################################################

SPAMASSASSIN = yes
SPAM_SCORE = 50
#CLAMD =  yes

add_environment = <; PATH=/bin:/usr/bin
keep_environment =
disable_ipv6 = true

domainlist local_domains = dsearch;/etc/exim4/domains/
domainlist relay_to_domains = dsearch;/etc/exim4/domains/
hostlist relay_from_hosts = 127.0.0.1
hostlist whitelist = net-iplsearch;/etc/exim4/white-blocks.conf
hostlist spammers = net-iplsearch;/etc/exim4/spam-blocks.conf
no_local_from_check
untrusted_set_sender = *
acl_smtp_connect = acl_check_spammers
acl_smtp_mail = acl_check_mail
acl_smtp_rcpt = acl_check_rcpt
acl_smtp_data = acl_check_data
acl_smtp_mime = acl_check_mime

.ifdef SPAMASSASSIN
spamd_address = 127.0.0.1 783
.endif

.ifdef CLAMD
av_scanner = clamd: /var/run/clamav/clamd.ctl
.endif

tls_advertise_hosts = *
tls_certificate = /usr/local/vesta/ssl/certificate.crt
tls_privatekey = /usr/local/vesta/ssl/certificate.key
daemon_smtp_ports = 25 : 465 : 587 : 2525
tls_on_connect_ports = 587 : 465
never_users = root
host_lookup = *
rfc1413_hosts = *
rfc1413_query_timeout = 5s
ignore_bounce_errors_after = 2d
timeout_frozen_after = 7d

DKIM_DOMAIN = ${lc:${domain:$h_from:}}
DKIM_FILE = /etc/exim4/domains/${lc:${domain:$h_from:}}/dkim.pem
DKIM_PRIVATE_KEY = ${if exists{DKIM_FILE}{DKIM_FILE}{0}}



######################################################################
#                       ACL CONFIGURATION                            #
#         Specifies access control lists for incoming SMTP mail      #
######################################################################
begin acl

acl_check_spammers:
  accept  hosts         = +whitelist

  drop    message       = Your host in blacklist on this server.
          log_message   = Host in blacklist
          hosts         = +spammers

  accept


acl_check_mail:
  deny    condition     = ${if eq{$sender_helo_name}{}}
          message       = HELO required before MAIL

  drop    message       = Helo name contains a ip address (HELO was $sender_helo_name) and not is valid
          condition     = ${if match{$sender_helo_name}{N((d{1,3}[.-]d{1,3}[.-]d{1,3}[.-]d{1,3})|([0-9a-f]{8})|([0-9A-F]{8}))N}{yes}{no}}
          condition     = ${if match {${lookup dnsdb{>: defer_never,ptr=$sender_host_address}}}{$sender_helo_name}{no}{yes}}
          delay         = 45s

  drop    condition     = ${if isip{$sender_helo_name}}
          message       = Access denied - Invalid HELO name (See RFC2821 4.1.3)

  drop    condition     = ${if eq{[$interface_address]}{$sender_helo_name}}
          message       = $interface_address is _my_ address

  accept


acl_check_rcpt:
  accept  hosts         = :

  deny    message       = Restricted characters in address
          domains       = +local_domains
          local_parts   = ^[.] : ^.*[@%!/|]

  deny    message       = Restricted characters in address
          domains       = !+local_domains
          local_parts   = ^[./|] : ^.*[@%!] : ^.*/\.\./

  require verify        = sender

  accept  hosts         = +relay_from_hosts
          control       = submission

  accept  authenticated = *
          control       = submission/domain=

  deny    message       = Rejected because $sender_host_address is in a black list at $dnslist_domainn$dnslist_text
          hosts         = !+whitelist
          dnslists      = ${readfile {/etc/exim4/dnsbl.conf}{:}}

  require message       = relay not permitted
          domains       = +local_domains : +relay_to_domains

  deny    message       = smtp auth requried
         sender_domains = +local_domains
         !authenticated = *

  require verify        = recipient

.ifdef CLAMD
  warn    set acl_m0    = no

  warn    condition     = ${if exists {/etc/exim4/domains/$domain/antivirus}{yes}{no}}
          set acl_m0    = yes
.endif

.ifdef SPAMASSASSIN
  warn    set acl_m1    = no

  warn    condition     = ${if exists {/etc/exim4/domains/$domain/antispam}{yes}{no}}
          set acl_m1    = yes
.endif

  accept


acl_check_data:
.ifdef CLAMD
  deny   message        = Message contains a virus ($malware_name) and has been rejected
         malware        = *
         condition      = ${if eq{$acl_m0}{yes}{yes}{no}}
.endif

.ifdef SPAMASSASSIN
  warn   !authenticated = *
         hosts          = !+relay_from_hosts
         condition      = ${if < {$message_size}{100K}}
         condition      = ${if eq{$acl_m1}{yes}{yes}{no}}
         spam           = nobody:true/defer_ok
         add_header     = X-Spam-Score: $spam_score_int
         add_header     = X-Spam-Bar: $spam_bar
         add_header     = X-Spam-Report: $spam_report
         set acl_m2     = $spam_score_int

  warn   condition      = ${if !eq{$acl_m2}{} {yes}{no}}
         condition      = ${if >{$acl_m2}{SPAM_SCORE} {yes}{no}}
         add_header     = X-Spam-Status: Yes
         message        = SpamAssassin detected spam (from $sender_address to $recipients).
.endif

  accept


acl_check_mime:
  deny   message        = Blacklisted file extension detected
         condition      = ${if match {${lc:$mime_filename}}{N(.ade|.adp|.bat|.chm|.cmd|.com|.cpl|.exe|.hta|.ins|.isp|.jse|.lib|.lnk|.mde|.msc|.msp|.mst|.pif|.scr|.sct|.shb|.sys|.vb|.vbe|.vbs|.vxd|.wsc|.wsf|.wsh)$N}{1}{0}}

  accept



######################################################################
#                   AUTHENTICATION CONFIGURATION                     #
######################################################################
begin authenticators

dovecot_plain:
  driver = dovecot
  public_name = PLAIN
  server_socket = /var/run/dovecot/auth-client
  server_set_id = $auth1

dovecot_login:
  driver = dovecot
  public_name = LOGIN
  server_socket = /var/run/dovecot/auth-client
  server_set_id = $auth1



######################################################################
#                      ROUTERS CONFIGURATION                         #
#               Specifies how addresses are handled                  #
######################################################################
begin routers

#smarthost:
#  driver = manualroute
#  domains = ! +local_domains
#  transport = remote_smtp
#  route_list = * smartrelay.vestacp.com
#  no_more
#  no_verify

dnslookup:
  driver = dnslookup
  domains = !+local_domains
  transport = remote_smtp
  no_more

userforward:
  driver = redirect
  check_local_user
  file = $home/.forward
  allow_filter
  no_verify
  no_expn
  check_ancestor
  file_transport = address_file
  pipe_transport = address_pipe
  reply_transport = address_reply

procmail:
  driver = accept
  check_local_user
  require_files = ${local_part}:+${home}/.procmailrc:/usr/bin/procmail
  transport = procmail
  no_verify

autoreplay:
  driver = accept
  require_files = /etc/exim4/domains/$domain/autoreply.${local_part}.msg
  condition = ${if exists{/etc/exim4/domains/$domain/autoreply.${local_part}.msg}{yes}{no}}
  retry_use_local_part
  transport = userautoreply
  unseen

aliases:
  driver = redirect
  headers_add = X-redirected: yes
  data = ${extract{1}{:}{${lookup{$local_part@$domain}lsearch{/etc/exim4/domains/$domain/aliases}}}}
  require_files = /etc/exim4/domains/$domain/aliases
  redirect_router = dnslookup
  pipe_transport = address_pipe
  unseen

localuser_fwd_only:
  driver = accept
  transport = devnull
  condition = ${if exists{/etc/exim4/domains/$domain/fwd_only}{${lookup{$local_part}lsearch{/etc/exim4/domains/$domain/fwd_only}{true}{false}}}}

localuser_spam:
  driver = accept
  transport = local_spam_delivery
  condition = ${if eq {${if match{$h_X-Spam-Status:}{N^YesN}{yes}{no}}} {${lookup{$local_part}lsearch{/etc/exim4/domains/$domain/passwd}{yes}{no_such_user}}}}

localuser:
  driver = accept
  transport = local_delivery
  condition = ${lookup{$local_part}lsearch{/etc/exim4/domains/$domain/passwd}{true}{false}}

catchall:
  driver = redirect
  headers_add = X-redirected: yes
  require_files = /etc/exim4/domains/$domain/aliases
  data = ${extract{1}{:}{${lookup{*@$domain}lsearch{/etc/exim4/domains/$domain/aliases}}}}
  file_transport = local_delivery
  redirect_router = dnslookup

terminate_alias:
  driver = accept
  transport = devnull
  condition = ${lookup{$local_part@$domain}lsearch{/etc/exim4/domains/$domain/aliases}{true}{false}}



######################################################################
#                      TRANSPORTS CONFIGURATION                      #
######################################################################
begin transports

remote_smtp:
  driver = smtp
  #helo_data = $sender_address_domain
  dkim_domain = DKIM_DOMAIN
  dkim_selector = mail
  dkim_private_key = DKIM_PRIVATE_KEY
  dkim_canon = relaxed
  dkim_strict = 0

procmail:
  driver = pipe
  command = "/usr/bin/procmail -d $local_part"
  return_path_add
  delivery_date_add
  envelope_to_add
  user = $local_part
  initgroups
  return_output

local_delivery:
  driver = appendfile
  maildir_format
  maildir_use_size_file
  user = ${extract{2}{:}{${lookup{$local_part}lsearch{/etc/exim4/domains/$domain/passwd}}}}
  group = mail
  create_directory
  directory_mode = 770
  mode = 660
  use_lockfile = no
  delivery_date_add
  envelope_to_add
  return_path_add
  directory = "${extract{5}{:}{${lookup{$local_part}lsearch{/etc/exim4/domains/$domain/passwd}}}}/mail/$domain/$local_part"
  quota = ${extract{6}{:}{${lookup{$local_part}lsearch{/etc/exim4/domains/$domain/passwd}}}}M
  quota_warn_threshold = 75%

local_spam_delivery:
  driver = appendfile
  maildir_format
  maildir_use_size_file
  user = ${extract{2}{:}{${lookup{$local_part}lsearch{/etc/exim4/domains/$domain/passwd}}}}
  group = mail
  create_directory
  directory_mode = 770
  mode = 660
  use_lockfile = no
  delivery_date_add
  envelope_to_add
  return_path_add
  directory = "${extract{5}{:}{${lookup{$local_part}lsearch{/etc/exim4/domains/$domain/passwd}}}}/mail/$domain/$local_part/.Spam"
  quota = ${extract{6}{:}{${lookup{$local_part}lsearch{/etc/exim4/domains/$domain/passwd}}}}M
  quota_directory = "${extract{5}{:}{${lookup{$local_part}lsearch{/etc/exim4/domains/$domain/passwd}}}}/mail/$domain/$local_part"
  quota_warn_threshold = 75%

address_pipe:
  driver = pipe
  return_output

address_file:
  driver = appendfile
  delivery_date_add
  envelope_to_add
  return_path_add

address_reply:
  driver = autoreply

userautoreply:
  driver = autoreply
  file = /etc/exim4/domains/$domain/autoreply.${local_part}.msg
  from = "${local_part}@${domain}"
  headers = Content-Type: text/plain; charset=utf-8;nContent-Transfer-Encoding: 8bit
  subject = "${if def:h_Subject: {Autoreply: "${rfc2047:$h_Subject:}"} {Autoreply Message}}"
  to = "${sender_address}"

devnull:
  driver = appendfile
  file = /dev/null


######################################################################
#                      RETRY CONFIGURATION                           #
######################################################################
begin retry

# Address or Domain    Error       Retries
# -----------------    -----       -------
*                      *           F,2h,15m; G,16h,1h,1.5; F,4d,6h



######################################################################
#                      REWRITE CONFIGURATION                         #
######################################################################
begin rewrite



######################################################################

Как сделать так, чтобы для SMTP работал STARTTLS? Т.е. перенаправляло с 25-го на 465/587-й порт и все нормально отправляло.

Вновь sudo cast constin, MrClon

Теперь exim4.

Перемещено shell-script из talks

daniel.z0

Posts: 2
Joined: Thu Jun 24, 2010 12:38 pm

554 SMTP synchronization error while sending emails

Hi there,
I have a problem with one (!) email, unfortunately this the email that my CEO is corresponding with.
While we try to send the email we got:

on our side and

Code: Select all

SMTP protocol violation: synchronization error (next input sent too soon: pipelining was advertised)

on target server.
I have made some googling but it isn’t lightening me.
Any one can help, please? Which side the problem is?
Thank in advance.
Daniel


MailEnable-Ian

Site Admin
Posts: 9738
Joined: Mon Mar 22, 2004 4:44 am
Location: Melbourne, Victoria, Australia

Re: 554 SMTP synchronization error while sending emails

Post

by MailEnable-Ian » Thu Jun 24, 2010 11:30 pm

Hi,

Need to know more information about your domain and review the MailEnable SMTP log files (Activity and Debug). PM me with the details or for a managed response lodge a support ticket via the MailEnable website.

Regards,

Ian Margarone
MailEnable Support


daniel.z0

Posts: 2
Joined: Thu Jun 24, 2010 12:38 pm

Re: 554 SMTP synchronization error while sending emails

Post

by daniel.z0 » Fri Jun 25, 2010 12:29 pm

Hello,
thank you for trying to help me.
Below is the tracer log on my server.
I will looking forward to hear from you,
Daniel

Code: Select all

Trace: Tracing message with Message ID [AB677B114235419BB89799508C64E83B.MAI] from the SMTP Inbound Queue

Status: Message ID [AB677B114235419BB89799508C64E83B.MAI] was routed by the MTA from the SMTP Inbound Queue to 2 destination queue(s)

06/23/10 09:05:49 Queue Route: Message ID [AB677B114235419BB89799508C64E83B.MAI] was routed by the MTA from the SMTP Inbound Queue to the Postoffice Connector (SF) Outbound Queue with a Message ID of [EAA1EBF3E6A7401C940D0D55B223EB2D.MAI]

06/23/10 09:05:50	[EAA1EBF3E6A7401C940D0D55B223EB2D.MAI] Delivered message from [SMTP:xxx@xxx] to PO=BBL MBX=xxx FLD=Inbox

06/23/10 09:05:49 Queue Route: Message ID [AB677B114235419BB89799508C64E83B.MAI] was routed by the MTA from the SMTP Inbound Queue to the SMTP Connector (SMTP) Outbound Queue with a Message ID of [3545D13354C6451F8728BD45A514284D.MAI]

Fork/Split: Message ID [3545D13354C6451F8728BD45A514284D.MAI] requeued/split into 1 messages for delivery to target domains.
 Queued: Message ID [3545D13354C6451F8728BD45A514284D.MAI] queued for delivery to the domain [xxx] at the SMTP Outbound Queue with a new Message ID of [477A11DFF3604F3CA46E5FC8ACA31534.MAI]

Status: SMTP Outbound Delivery details for Message ID [477A11DFF3604F3CA46E5FC8ACA31534.MAI] to domain [xxx] follow below: 
06/23/10 09:05:50	[EAA1EBF3E6A7401C940D0D55B223EB2D.MAI] Delivered message from [SMTP:xxx@xxx] to PO=XXX MBX=xxx FLD=Inbox
06/23/10 09:05:50	SMTP-OU	477A11DFF3604F3CA46E5FC8ACA31534.MAI	564	xxx.xxx.xxx.xxx	CONN		220 xxx.xxx.xxx.xxx ESMTP Wed, 23 Jun 2010 09:05:50 +0200	0	55		Subject
06/23/10 09:05:50	SMTP-OU	477A11DFF3604F3CA46E5FC8ACA31534.MAI	564	xxx.xxx.xxx.xxx	EHLO	EHLO xxx.xxx.xxx.xxx	250-xxx.xxx.xxx.xxx Hello xxx.xxx.xxx.xxx [xxx.xxx.xxx.xxx]	19	114		Subject
06/23/10 09:06:11	SMTP-OU	477A11DFF3604F3CA46E5FC8ACA31534.MAI	564	xxx.xxx.xxx.xxx	MAIL	MAIL FROM:<xxx@xxx> SIZE=3440	-	50	0	Subject
06/23/10 09:06:21	SMTP-OU	477A11DFF3604F3CA46E5FC8ACA31534.MAI	564	xxx.xxx.xxx.xxx	QUIT	QUIT	554 SMTP synchronization error	6	32		Subject
06/23/10 09:06:22	SMTP-OU	477A11DFF3604F3CA46E5FC8ACA31534.MAI	920	127.0.0.1	CONN	220 xxx.xxx.xxx.xxx ESMTP MailEnable Service, Version: --3.6 ready at 06/23/10 09:06:22	0	81		Message Delivery Failure - Subject
06/23/10 09:06:22	SMTP-OU	477A11DFF3604F3CA46E5FC8ACA31534.MAI	920	127.0.0.1	EHLO	EHLO xxx.xxx.xxx.xxx	250-xxx.xxx.xxx.xxx, this server offers 4 extensions	19	132		Message Delivery Failure - Subject
06/23/10 09:06:22	SMTP-OU	477A11DFF3604F3CA46E5FC8ACA31534.MAI	920	127.0.0.1	MAIL	MAIL FROM:<> SIZE=4001	250 Requested mail action okay, completed	24	43		Message Delivery Failure - Subject
06/23/10 09:06:22	SMTP-OU	477A11DFF3604F3CA46E5FC8ACA31534.MAI	920	127.0.0.1	RCPT	RCPT TO:<xxx@xxx>	250 Requested mail action okay, completed	38	43		Message Delivery Failure - Subject
06/23/10 09:06:22	SMTP-OU	477A11DFF3604F3CA46E5FC8ACA31534.MAI	920	127.0.0.1	DATA	DATA	354 Start mail input; end with <CRLF>.<CRLF>	6	46		Message Delivery Failure - Subject
06/23/10 09:06:22	SMTP-OU	477A11DFF3604F3CA46E5FC8ACA31534.MAI	920	127.0.0.1	DATE		250 Requested mail action okay, completed	4012	43		Message Delivery Failure - Subject
06/23/10 09:06:22	SMTP-OU	477A11DFF3604F3CA46E5FC8ACA31534.MAI	920	127.0.0.1	QUIT	QUIT	221 Service closing transmission channel	6	42		Message Delivery Failure - Subject


  • #1

Hi,
I am installed and migration cPanel to Directadmin wonderfull and working.

But Email not connected to 587 SMTP STARTTSL.

Screen Shot : http://prntscr.com/ohe5nh

Please help me.

  • #3

I did it, but it didn’t help.

smtalk


  • #4

Please make sure port is open in firewall and /etc/exim.cert (key) are valid.

  • #5

Please make sure port is open in firewall and /etc/exim.cert (key) are valid.

Hi,
Firewall is closed.
Exim.cert is new created.

But not secure starttls SMPT :/

smtalk


  • #7

https://www.checktls.com/TestReceiver results;
Certificate 1 of 1 in chain: Cert VALIDATION ERROR(S): self signed certificate
So email is encrypted but the recipient domain is not verified
Cert Hostname DOES NOT VERIFY (xxx.com != mail.hostname.com)
So email is encrypted but the host is not verified

  • #8

Not problem.
http://prntscr.com/ohiap7

So;
SMTP protocol synchronization error (next input sent too soon: pipelining was not advertised): rejected «EHLO we-guess.mozilla.org» H=[IP_ADDRESS] next input=»QUITrn»

smtalk


  • #9

Your certificate does not include mail.domain.com, so, just use domain.com as the server in your mail settings, or generate a cert for mail.domain.com as well.

9 More Discussions You Might Find Interesting

1. Debian

Optimizing exim performance

Hi,

Recently, I experienced that exim was slow in sending outgoing mail, it was spending a lot of time in the queue, resulting in customer complains.

I came across an article in the internet to optimize the performance of exim in the server. However, the location of the exim.conf is not in… (0 Replies)

Discussion started by: anaigini45

2. UNIX for Dummies Questions & Answers

Exim root email

Hello

I have configured LFD alerts/Login failure alerts to be sent to «root»
However I’m unable to find/change root email.

I’m using exim and i dont want to use postfix. Therefore /etc/aliases will not work because newaliases command will not work

I tried creating a .forward file still… (0 Replies)

Discussion started by: johnchristy

3. UNIX for Dummies Questions & Answers

Exim and processes

hello

I have 2 queries

1) I ran this command : exigrep root /var/log/exim_mainlog

and got a lot of results like this

2014-03-25 18:00:09 1WSO9R-000067-6n <= root@123.456.com U=root P=local S=690 T=»lfd on 123.456.com: Excessive resource usage: xxx (344 (Parent PID:17477))» for… (0 Replies)

Discussion started by: johnchristy

4. Web Development

Connect C#(App) + Exim en Centos

Hi everyone,

Today i’m faceing a problem, that really hope for some help.

I’m working in a Web application developed in C#(DB SQL Server 2012, IDE VS 2010), so i’ve hired two VPS (Virtual Private Server), one with Windows Server 2012 where it’s running my app and the other VPS in Centos…. (1 Reply)

Discussion started by: Newer

5. Red Hat

ip rotating on exim mail server

Hi all,
We have the exim mail server configured on cpanel in centos. We have 5 dedicated ip’s. So, when i sending mails to client systems, it should be rotate that ip addressees on every 15 minutes.
That means Ip rotating. How can i do it. Can anybody show me how to do it.

Thanks, (0 Replies)

Discussion started by: mastansaheb

6. UNIX for Advanced & Expert Users

Exim mail log

Hi Guys,

I am quite a newbie to exim mail server.Below, I have pasted the the log entries of my exim maillog file. I am not able to understand these entries. Can anyone please help me?? Its very urgent.

2010-01-18 04:20:35 1NWpes-00018g-1O <= user1@domain1.com H=() P=esmtp S=1038… (1 Reply)

Discussion started by: mahesh_raghu

7. UNIX and Linux Applications

Exim mail messge error

i have a exim mail server for mms to emails ,the mails are delivering to all the Domains,except the company one.(our own email id’s)
When ever we send it to our internal email it says

2008-10-31 14:01:07 1Kvs21-0002zW-00 == samson.isa@gloworld.com T=remote_smtp defer (-44): retry time not… (0 Replies)

Discussion started by: satish.res

8. UNIX for Advanced & Expert Users

Exim Help

Hiya all,

Using exim v4.x and CentOS 4/5 on a bunch of servers at our company. We’re having a tough time fighting spam relaying and such.

I basically want any tips and tricks for these, and one specific question.

How can I force ALL email that is sent from our box (no matter what form)… (0 Replies)

Discussion started by: bigshow911

9. UNIX for Dummies Questions & Answers

exim: help with mail :(

ok i have exim installed on my redhat 8.0 server

the exim dir is:

/usr/local/exim

and the mail queue is:

/var/spool/exim_mail

this is what the mail queue looks like:

http://www.thedigitaldream.co.uk/images/exim.gif

the problem is, mail stays there, where is it meant to go???
(1 Reply)

Discussion started by: matt2kjones

Понравилась статья? Поделить с друзьями:

Читайте также:

  • Smtp protocol error 501
  • Smtp outlook error
  • Smtp error rcpt to command failed
  • Smtp error password command failed
  • Smtp error from remote mail server after rcpt to что значит

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии