SMTP-авторизация. Как включить?

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

Имеем Зимбру 7.1.2_GA_3268 под Fedora 13 x86_64 .

Имеем почтовый шлюз для зибры на обычном постфиксе test.example.ru

Имеем внутренний локальный домен egarant.local

Имеем MX- и PTR-записи для test.example.ru

Не работает SMTP-авторизация на зимбре. При этом, настройки вроде верные:
[img]http://i465.photobucket.com/albums/rr15/dj_kolan/zimber-1.png[/img]
В самом зимбровском конфиге постфикса нужные строчки тоже прописаны:
[code]smtpd_sasl_auth_enable = yes
broken_sasl_auth_clients = yes
smtpd_tls_auth_only = yes[/code]
Я сначала подумал, что дело в почтовом шлюзе, но потом попробовал отправить письмо локальному пользователю user@egarant.local и глянул в логи на почтовом шлюзе -- там было пусто. Потом глянул лог на зимбре:
[code]Oct 23 20:52:15 zimber postfix/smtpd[17037]: connect from localhost[127.0.0.1]
Oct 23 20:52:16 zimber postfix/smtpd[17037]: 010B482106E: client=localhost[127.0.0.1]
Oct 23 20:52:16 zimber postfix/cleanup&#91;16580]: 010B482106E: message-id=<1215192450.20111023205114@test.example.ru>
Oct 23 20:52:16 zimber postfix/qmgr&#91;16090]: 010B482106E: from=<lkblkblkj@test.example.ru>, size=1382, nrcpt=1 (queue active)
Oct 23 20:52:16 zimber postfix/smtp&#91;16583]: A251782105E: to=<user@egarant.local>, relay=127.0.0.1&#91;127.0.0.1]:10024, delay=56, delays=0.87/0.28/11/44, dsn=2.0.0, status=sent (250 2.0.0 from MTA(&#91;127.0.0.1]:10025): 250 2.0.0 Ok: queued as 010B482106E)
Oct 23 20:52:16 zimber postfix/qmgr&#91;16090]: A251782105E: removed
Oct 23 20:52:30 zimber postfix/lmtp&#91;17051]: 010B482106E: to=<user@egarant.local>, relay=zimber.egarant.local&#91;192.168.199.101]:7025, delay=15, delays=0.26/0.2/2.1/12, dsn=2.1.5, status=sent (250 2.1.5 Delivery OK)
Oct 23 20:52:30 zimber postfix/qmgr&#91;16090]: 010B482106E: removed[/code]
Письмо дошло. Т.е. я открыл the bat, вбил туда учётку lkblkblkj@test.example.ru, указав сервер smtp -- 192.168.199.101 (это сервер с зимброй) и отправил это письмо.
Подскажите, куда копать, чтобы заработала smtp-авторизация?


 

Комментарии

Блин, а что у вас с тэгами? И поправить свой пост нельзя...

Короче, вот, пишу заново:

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

Имеем Зимбру 7.1.2_GA_3268 под Fedora 13 x86_64 .

Имеем почтовый шлюз для зибры на обычном постфиксе test.example.ru

Имеем внутренний локальный домен egarant.local

Имеем MX- и PTR-записи для test.example.ru

Не работает SMTP-авторизация на зимбре. При этом, настройки вроде верные:
 
  В самом зимбровском конфиге постфикса нужные строчки тоже прописаны: 

smtpd_sasl_auth_enable = yes
broken_sasl_auth_clients = yes
smtpd_tls_auth_only = yes

Я сначала подумал, что дело в почтовом шлюзе, но потом попробовал отправить письмо локальному пользователю user@egarant.local и глянул в логи на почтовом шлюзе -- там было пусто. Потом глянул лог на зимбре: 

Oct 23 20:52:15 zimber postfix/smtpd&#91;17037]: connect from localhost&#91;127.0.0.1]
Oct 23 20:52:16 zimber postfix/smtpd&#91;17037]: 010B482106E: client=localhost&#91;127.0.0.1]
Oct 23 20:52:16 zimber postfix/cleanup&#91;16580]: 010B482106E: message-id=<1215192450.20111023205114@test.example.ru>
Oct 23 20:52:16 zimber postfix/qmgr&#91;16090]: 010B482106E: from=<lkblkblkj@test.example.ru>, size=1382, nrcpt=1 (queue active)
Oct 23 20:52:16 zimber postfix/smtp&#91;16583]: A251782105E: to=<user@egarant.local>, relay=127.0.0.1&#91;127.0.0.1]:10024, delay=56, delays=0.87/0.28/11/44, dsn=2.0.0, status=sent (250 2.0.0 from MTA(&#91;127.0.0.1]:10025): 250 2.0.0 Ok: queued as 010B482106E)
Oct 23 20:52:16 zimber postfix/qmgr&#91;16090]: A251782105E: removed
Oct 23 20:52:30 zimber postfix/lmtp&#91;17051]: 010B482106E: to=<user@egarant.local>, relay=zimber.egarant.local&#91;192.168.199.101]:7025, delay=15, delays=0.26/0.2/2.1/12, dsn=2.1.5, status=sent (250 2.1.5 Delivery OK)
Oct 23 20:52:30 zimber postfix/qmgr&#91;16090]: 010B482106E: removed

Письмо дошло. Т.е. я открыл the bat, вбил туда учётку lkblkblkj@test.example.ru, указав сервер smtp -- 192.168.199.101 (это сервер с зимброй) и отправил это письмо.
Подскажите, куда копать, чтобы заработала smtp-авторизация? 

на SMTP авторизацию ставь галочку тоже самое что и поп3, и поставь на смпт галочку использовать TSL или SSL
все проходит потом на ура
или в настройках админки сними галку использовать TSL автризацию и вроде тоже проходит

Есть мнение, что все письма, отправленные от клиентов из "Доверенных сетей агента передачи сообщений", будут доставляться не зависимо от того, пройдет отправитель SMTP-авторизацию или нет. В твоем случае - это подсеть 192.168.0.0/16 (см. main.cf "mynetworks = " ).

За это отвечает правило permit_mynetworks в ограничении smtpd_recipient_restrictions. Это все из тогоже постфиксовского конфига. Это, к стати, параметр по-умолчанию в постфиксе.

В 6-ой зимбре оставить только 127... нельзя - ругается. В 7-ке не знаю.

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

Для успокоения, попробуй отправить почту через свой почтарь с любого внешнего IP, отличного от твоего. Можно даже просто телнетом через 25 порт на предмет открытого релея пощупать. Или найти в нете через поиск "Проверка на открытый релей" - там тебе автоматом сразу кучу тестов проведут и  скажут есть ли у тебя дырки в почтаре или нет.

может в 6ке и так, но проблемы аналогичные этим были, так же понавписывакл еще в поля трансляцию для почты и никак не мог отправить + еще TSL в почтовом клиенте не выставленный. Просто сбросить настройки по умолчанию, прописать 2 сети, 127.0.0.1/8 и 192,x,x,x в клиенте тупо поставить галочку SSL или TSL или в настройках админки снять галку исполтьзовать TSL и все заработает, если с днс никаких проблем нету. А так как почту он принимает то все должно заработать

У человека проблема не с отправкой. Отправка как раз работает!;)

Его беспокоит, что любой клиент, прописавший в настройках почты адрес его почтаря в качестве исходящего, может легко отправить почту не проходя авторизацию на сервере.

Почему так происходит я описал выше.

И я бы не снимал галочку с TLS. Так-то посекурней будет - вообще весь обмен данными клиента с сервером шифруется.

а я и не говорил чтобы снимать совсем, а протестить, так ли оно или нет =)

Самое простое:

telnet zimber.egarant.local 25

ehlo some.domain.local

и если в списке, еоторый отдаст zimber.egarant.local есть строчка 250-starttls значит tls включен.

на скриншуте и так видно, что он включен.
автор только что то молчит, наверно уже разобрался

На скриншоте видно, что в неком месте стоит некая галочка! :)  Фактически - тотже сарай, на котором написано одно, а внутри может быть все что угодно! ;)

Но, в общем, очень бы хотелось услышать комментарии, так сказать, виновника торжества. :)

Не, мужики, не разбирался ещё вобще. В командировке пару дней был. Сейчас попробую убрать себя из доверенных сетей. 

Не помогло. Доверенные сети поставил 127.0.0.1/32 192.168.199.101/32. Всё равно, не авторизированному чёрт знает кому удаётся отправить письмо на любой ящик.

насколкьо помню обязательно должно присутствовать 127.0.0.0/8

скорей всего так должно

1. 127.0.0.0/8 127.0.0.1/32 192.168.199.101/32

2. плюс в админке в "настройках сервера"-> агент передачи сообщений
попробуй сделать так

Имена узлов агентов веб-почты: 192,168,199,101

3. Убери строку агент трансляции для внешней почты, пусть будет пустая трока по умолчанию

4.  косяки могут быть с днс

проверь мх и А запись

dig mx сервер

хотя не факт но проверить стоит

5. попробуй отправить письмо через вебморду а не клиент

1. не понимаю смысла. Зачем? Оно итак работает.

2. Прописал, но это тоже ничего не меняет.

3.Убрал. И это ни на что не повлияло, т.к. пока что, я пробую отправить почту локальному пользователю miho@egarant.local. Письма передаются агенту внешней почты те, которые пишутся на любые внешние сервера.

4. с MX- записью для zimber.rgarant.local всё норм. C МХ- b PTR-записями для test.example.ru -- тоже всё в порядке.

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

А именно -- надо включить SMTP-авторизацию.

http://wiki.zimbra.com/wiki/SMTP_Auth_Problems
проверька

$ su - zimbra
$ zmprov getServer zimbra.domain.com | grep Auth
zimbraMtaAuthEnabled: TRUE
zimbraMtaAuthHost: zimbra.domain.com
zimbraMtaAuthURL: https://zimbra.domain.com:443/service/soap/
zimbraMtaTlsAuthOnly: TRUE

$ zmprov getServer zimbra.domain.com | grep Mode
zimbraMailMode: mixed

 

Что-то меня вот эта строчка сильно смущает:

Oct 23 20:52:15 zimber postfix/smtpd&#91;17037]: connect from localhost&#91;127.0.0.1]

А у тебя ДНС записи для zimber.rgarant.local и для test.example.ru не к одному и томуже IP привязаны?

Попробуй в почтовом клиенте указать не IP, а имя почтаря zimber.rgarant.local.

И не забудь указать , что конектишся по SMTPS это 465 порт, а не 25.

И еще вопрос: откуда взялась запись lkblkblkj@test.example.ru? Она реально существует, где прописана?

Ну и логи в студию! (Появилась одна мыслишка - надо кое-что проверить).

Ну и так на всякий... Смысл авторизации не в том, чтобы тебе не могли прислать письмо на твой локальный ящик, а в том, чтобы через твой почтарь всякие с№ки не могли рассылать письма наружу. От имени твоего почтаря.

Смысл авторизации не в том, чтобы тебе не могли прислать письмо на твой локальный ящик, а в том, чтобы через твой почтарь всякие с№ки не могли рассылать письма наружу. От имени твоего почтаря.

Вот как раз именно во этом и проблема. От имени несуществующей учётки  lkblkblkj@test.example.ru  письма спокойно уходят... Т.е. это любой вася сможет через мой сервак рассылать спам.

А у тебя ДНС записи для zimber.rgarant.local и для test.example.ru не к одному и томуже IP привязаны?

Нет ДНС записи разные конечно же. Для  zimber.rgarant.local запись сделана на моём ДНС-сервере, а для test.example.ru запись сделана на ДНС провайдера.

И еще вопрос: откуда взялась запись lkblkblkj@test.example.ru? Она реально существует, где прописана?

Это запись реально негде не существует и нигде не прописана -- в том то и дело. Я тупо открыл the bat и тупо вбил туда вот этот, отбалды выдуманный адрес, указав smtp сервер 192.168.199.101 (это zimber.egarant.local).

Тут кое что прояснилось! На зимбре в настройках сервера сделал всё по умолчанию:

Прописал только почтовый шлюз.

Дак вот, оказывается, SMTP-авторизация работает! Но только если письма шлёш во внешний мир. А если письма шлёш на локальные ящики @egarant.local, то SMTP-авторизация не срабатывает.

Почему так?

Вот логи:

Nov 2 18:13:13 zimber postfix/smtpd[23891]: A5282821152: client=unknown[192.168.199.199]
Nov 2 18:13:13 zimber postfix/cleanup[23962]: A5282821152: message-id=<1262940404.20111102191312@test.example.ru>
Nov 2 18:13:13 zimber postfix/qmgr[10421]: A5282821152: from=<lkblkblkj@test.example.ru>, size=703, nrcpt=1 (queue active)
Nov 2 18:13:13 zimber postfix/smtpd[23891]: disconnect from unknown[192.168.199.199]
Nov 2 18:13:22 zimber postfix/smtpd[23891]: connect from unknown[192.168.199.199]
Nov 2 18:13:22 zimber postfix/smtpd[23891]: NOQUEUE: reject: RCPT from unknown[192.168.199.199]: 554 5.7.1 <miho@test.example.ru>: Relay access denied; from=<lkblkblkj@test.example.ru> to=<miho@test.example.ru> proto=ESMTP helo=<BACK-SERV>
Nov 2 18:13:22 zimber postfix/smtpd[23891]: disconnect from unknown[192.168.199.199]
Nov 2 18:13:22 zimber postfix/smtpd[24076]: connect from localhost[127.0.0.1]
Nov 2 18:13:22 zimber postfix/smtpd[24076]: D766682115B: client=localhost[127.0.0.1]
Nov 2 18:13:22 zimber postfix/cleanup[23962]: D766682115B: message-id=<1262940404.20111102191312@test.example.ru>
Nov 2 18:13:22 zimber postfix/qmgr[10421]: D766682115B: from=<lkblkblkj@test.example.ru>, size=1505, nrcpt=1 (queue active)
Nov 2 18:13:23 zimber postfix/smtp[23968]: A5282821152: to=<miho@egarant.local>, relay=127.0.0.1[127.0.0.1]:10024, delay=9.7, delays=0.21/0.08/2.3/7.1, dsn=2.0.0, status=sent (250 2.0.0 from MTA([127.0.0.1]:10025): 250 2.0.0 Ok: queued as D766682115B)
Nov 2 18:13:23 zimber postfix/qmgr[10421]: A5282821152: removed
Nov 2 18:13:24 zimber postfix/lmtp[24077]: D766682115B: to=<miho@egarant.local>, relay=zimber.egarant.local[192.168.199.101]:7025, delay=1.7, delays=0.09/0.12/0.03/1.5, dsn=2.1.5, status=sent (250 2.1.5 Delivery OK)
Nov 2 18:13:24 zimber postfix/qmgr[10421]: D766682115B: removed

Здесь я сначала пытался отправить письмо, получается, как бы во внеху: с несуществующего ящика на ящик  miho@test.example.ru -- система меня отфутболила. А потом, с этой же несуществующей учётки, отправляю письмо на локальный ящик miho@egarant.local -- и письмо дошло.

Щас кое-что обясню по поводу miho@test.example.ru и miho@egarant.local. На самом деле -- это один и тот же ящик. Просто, на зимбре у меня в generic_maps прописано  @test.example.ru @egarant.local, а на почтовом шлюзе наоборот: @egarant.local @test.example.ru. Это специально так сделано, чтоб все, кто извне, писали на  @test.example.ru и пиьсма проходили через почтовый шлюз на зимбру. И уже на зимбре хвостик @test.example.ru меняется обратно @egarant.local. 

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

убери свою локальную подсеть из доверенных сетей агентов передачи сообщений и проверь работоспособность smtp-авторизации

Все привет! Проблема та же! Но не много друга, сервер в нутри сети, проброшены порты к серверу. Трафик SNATится в сети. Так вот, внутри сети авторизацию требует, а вот с наружи нет! Уже третий день не могу разобраться!!!

Настройки пробывал все которые тут советовались, помогите!

Посмотри, может поможет

http://www.opennet.ru/base/net/sasl_postfix.txt.html