URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 60861
[ Назад ]

Исходное сообщение
"Postfix как шлюз для Exchange с авторизацией в АД"

Отправлено xlino , 12-Окт-05 15:45 
Тема уже обглодана и обсосана со всех сторон, но почему-то все же не работает :(

Исходные такие: есть внутренний домен c названием local.ru, в котором установлен AD и Exchange с SMTP коннектором для реального домена real.ru, есть ДМЗ в которой установлен Postfix, который должен при приеме почты проверить наличие юзверя в AD и если таковой имеется переправить почту Exchange. Система FreeBSD 5.4, POstfix 2.2.5 собран с поддержкой LDAP из портов.

Что работает: Изнутри почта бегает наружу.

Что не работает: когда снаружи пытаюсь послать письмо для user@real.ru, говорить, что юзер не может быть найден в локальной таблице получателей (Recipient address rejected: User unknown in local recipient table). Если посылаю root, то все ОК.

Вот конфиг:
queue_directory = /var/spool/postfix
command_directory = /usr/local/sbin
daemon_directory = /usr/local/libexec/postfix
mail_owner = postfix
#default_privs = nobody
myhostname = mail.real.ru
mydomain = real.ru
myorigin = $mydomain
inet_interfaces = all
mydestination =  $myhostname, localhost.$mydomain, localhost, $mydomain
unknown_local_recipient_reject_code = 550
mynetworks = 127.0.0.0/8, 192.168.146.0/24, 192.168.147.0/24
relay_domains = $mydestination

ldapmap_server_host = 192.168.146.5
ldapmap_server_port = 3268
ldapmap_search_base = dc=local, dc=ru
ldap_timeout = 60
ldapmap_query_filter = (&(proxyAddresses=smtp:%s)(|(objectClass=user)(objectClass=group)(objectClass=contact)))
ldapmap_result_filter = %s
ldapmap_result_attribute = canonicalName
ldapmap_special_result_attribute =
ldapmap_scope = sub
ldapmap_bind = yes
ldapmap_bind_dn = postquery@local.ru
ldapmap_pind_pw = password
ldapmap_cache = no
ldapmap_dereference = 0
ldapmap_domain = local.ru
ldapmap_debuglevel = 0

virtual_mailbox_maps = ldap:ldapmap
virtual_mailbox_domains = real.ru

virtual_transport = hash:/usr/local/etc/postfix/transport
transport_maps = hash:/usr/local/etc/postfix/transport

alias_maps = hash:/etc/mail/aliases
alias_database = dbm:/etc/mail/aliases.db

Очень надеюсь на помощь, голова уже на грани полураспада


Содержание

Сообщения в этом обсуждении
"Postfix как шлюз для Exchange с авторизацией в АД"
Отправлено jonatan , 12-Окт-05 15:57 
AD на Windows 2003? В каком режиме работает?
>virtual_mailbox_maps = ldap:ldapmap
Не используйте старый синтаксис для ldap.
>ldapmap_domain = local.ru
ldapmap_domain = real.ru

"Postfix как шлюз для Exchange с авторизацией в АД"
Отправлено xlino , 12-Окт-05 16:05 
>AD на Windows 2003? В каком режиме работает?
Смешанный
>>virtual_mailbox_maps = ldap:ldapmap
>Не используйте старый синтаксис для ldap.
????
>>ldapmap_domain = local.ru
>ldapmap_domain = real.ru
Все равно не хочет: Recipient address rejected: User unknown in local recipient table


"Postfix как шлюз для Exchange с авторизацией в АД"
Отправлено jonatan , 12-Окт-05 16:11 
>????
http://www.postfix.org/LDAP_README.html
http://www.postfix.org/ldap_table.5.html
После этого проверьте ручками
postmap -q "user@real.ru" ldap:/etc/postfix/filename
Что в логах postfix? firewall не блокирует?

"Postfix как шлюз для Exchange с авторизацией в АД"
Отправлено xlino , 12-Окт-05 16:37 
>>????
>http://www.postfix.org/LDAP_README.html
>http://www.postfix.org/ldap_table.5.html

если правильно понял по новому будет:
alias_maps = hash:/etc/mail/aliases, ldap:/etc/postfix/ldap-aliases.cf
virtual_mailbox_maps = ldap:/etc/postfix/ldap-aliases.cf

Правда они забыли в доке написать что нужно потом сделать еще и
postmap /etc/postfix/ldap-aliases.cf
и дорисовать:
alias_database = hash:/etc/mail/aliases.db, ldap:/etc/postfix/ldap-aliases.cf.db

>После этого проверьте ручками
>postmap -q "user@real.ru" ldap:/etc/postfix/filename
Все молча, но и без ругани

>Что в логах postfix? firewall не блокирует?
В логах ОК (кстати а как повысить количество инфы выводимой в логи)
Firewall открыт полностью это тестовая сеть.

Все заработало на УРА!

Блин нашел свой косяк в конфиге за который надо к теплой стенке ставить:
ldapmap_!!!pind_pw!!! = password
Это ж надо было так облажаться :(

Премного вам благодарен за помощь, всегда рад помочь если смогу


"Postfix как шлюз для Exchange с авторизацией в АД"
Отправлено xlino , 12-Окт-05 16:41 
>>>????
>>http://www.postfix.org/LDAP_README.html
>>http://www.postfix.org/ldap_table.5.html
>
>если правильно понял по новому будет:
>alias_maps = hash:/etc/mail/aliases, ldap:/etc/postfix/ldap-aliases.cf
>virtual_mailbox_maps = ldap:/etc/postfix/ldap-aliases.cf
>
>Правда они забыли в доке написать что нужно потом сделать еще и
>
>postmap /etc/postfix/ldap-aliases.cf
>и дорисовать:
>alias_database = hash:/etc/mail/aliases.db, ldap:/etc/postfix/ldap-aliases.cf.db
>
Сорри описочка alias_database = dbm:/........
>>После этого проверьте ручками
>>postmap -q "user@real.ru" ldap:/etc/postfix/filename
>Все молча, но и без ругани
>
>>Что в логах postfix? firewall не блокирует?
>В логах ОК (кстати а как повысить количество инфы выводимой в логи)
>
>Firewall открыт полностью это тестовая сеть.
>
>Все заработало на УРА!
>
>Блин нашел свой косяк в конфиге за который надо к теплой стенке
>ставить:
>ldapmap_!!!pind_pw!!! = password
>Это ж надо было так облажаться :(
>
>Премного вам благодарен за помощь, всегда рад помочь если смогу



"Postfix как шлюз для Exchange с авторизацией в АД"
Отправлено jonatan , 12-Окт-05 16:41 
>Правда они забыли в доке написать что нужно потом сделать еще и
>
>postmap /etc/postfix/ldap-aliases.cf
Для ldap этого делать не нужно.
>В логах ОК (кстати а как повысить количество инфы выводимой в логи)
http://www.postfix.org/DEBUG_README.html
>Блин нашел свой косяк в конфиге за который надо к теплой стенке
>ставить:
>ldapmap_!!!pind_pw!!! = password
>Это ж надо было так облажаться :(
Бывает.

"Postfix как шлюз для Exchange с авторизацией в АД"
Отправлено xlino , 12-Окт-05 16:52 
>>Правда они забыли в доке написать что нужно потом сделать еще и
>>
>>postmap /etc/postfix/ldap-aliases.cf
>Для ldap этого делать не нужно.
Странно. А у меня проругался что не может найти ldap-aliases.cf.db
Как только сделал все стало ОК
Еще раз спасибо за помощь!

"Postfix как шлюз для Exchange с авторизацией в АД"
Отправлено jonatan , 12-Окт-05 17:03 
>Странно. А у меня проругался что не может найти ldap-aliases.cf.db
>Как только сделал все стало ОК
>Еще раз спасибо за помощь!
Читайте внимательно man 5 postconf
...
alias_database (default: see postconf -d output)
       The  alias  databases  for  local(8)  delivery  that  are  updated with
       "newaliases" or with "sendmail -bi".

       This is a separate configuration parameter because not all  the  tables
       specified with $alias_maps have to be local files.
...

Т.е. этот параметр определяет, для каких таблиц из $alias_maps нужно создавать локальные файлы данных (*.db). LDAP к ним не относится.