Postfix путь доставки почты или мои заморочи.......... [SOLVED]

Допустим у меня постфикс доставляет почту в:
/mail/domains/DOMAIN_NAME/mailboxes/USERNAME/Maildir/
В конфиге прописано для путей доставки почты:
..........
virtual_mailbox_base = /mail/domains/
### mail paths
virtual_mailbox_maps = ldap:ldapmaildrops
ldapmaildrops_server_host = ldaps://ldap.xxx.yyy
ldapmaildrops_search_base = ou=Users,ou=Main,dc=xxx,dc=yyy
ldapmaildrops_query_filter = (&(mail=%s)(uid=%u)(mailHost=%d))
ldapmaildrops_result_attribute = mailbox
ldapmaildrops_bind = yes
ldapmaildrops_version = 3
ldapmaildrops_bind_dn = cn=postfix,ou=SysUsers,ou=Main,dc=xxx,dc=yyy
ldapmaildrops_bind_pw = XXXXXX
....................

У пользовательской записи соответственно в атрибуте "mailbox" находится следующее: "DOMAIN_NAME/mailboxes/USERNAME/Maildir/"

Собственно вопрос: Можно ли настроить его так, чтобы в из лдапа он вытягивал путь к ящику вида: "mailboxes/USERNAME/Maildir/", а "DOMAIN_NAME" брал скажем из адреса пользователя или ещё откуда-нибудь????

можно. В main.cf

можно. В main.cf указываешь transport_map и прописываешь откуда ты хочешь брать домены.
Соотвественно, переделки потребуют правки атрибутов mailbox пользователей и настройки почтовых агентов - нужно им явно указывать, где имя домена, а где домашний каталог, и из него лепить полный путь. courrier-imap это делать умеет.
_______________________
From Siberia with Love!

А, то что

winterheart написал(а):
можно. В main.cf указываешь transport_map и прописываешь откуда ты хочешь брать домены.
Соотвественно, переделки потребуют правки атрибутов mailbox пользователей и настройки почтовых агентов - нужно им явно указывать, где имя домена, а где домашний каталог, и из него лепить полный путь. courrier-imap это делать умеет.
_______________________
From Siberia with Love!

А, то что он буит вытягивать из транспортмапа- это будут папка с названием домена или полный путь, до папки домена?
Не мог бы ты привести пример конфига?

Как раз с

Как раз с постфиксом никаких проблем не было.
Автоматом создавались папки с виртуальными доменами и пользователями внутри. Вот с courier не заладилось, не хотела эта программа понимать, что надо искать в папке domain/user/.maildir
А жаль. Пришлось все домены и пользователей в одно место сваливать, благо, что у меня это дозволено сделать.
_______________________________________________________________________
Intel Core2Duo E6600 / 2 Gb RAM / NV GF 8800 GTX / x86_64-pc-linux-gnu

Скинь конфиг,

Скинь конфиг, плз, если можешь или скажи что в конфиге вписать, потомучто у меня автоматом-то создаются папки, но только папки пользователей из virtual_mailbox_maps, а вот сделать чтобы домены создавались не получается, хотя переменная virtual_mailbox_domains указана.

Смотри

В файле /etc/postfix/main.cf

# транспорты
transport_maps = hash:/etc/postfix/transport.cf
virtual_transport = maildrop
# где хранится почта
virtual_mailbox_base = /home/vmail
# откуда брать пользователей (из LDAP, конечно же)
virtual_mailbox_maps = ldap:/etc/postfix/ldap/users.cf
# откуда брать алиасы
virtual_alias_maps = hash:/etc/postfix/aliases
# UID и GID владельца на доставляемую почту.
# Пользователи у нас виртуальные, поэтому - права postfix (207), группа mail (12)
virtual_uid_maps = static:207
virtual_gid_maps = static:12
relay_domains = $transport_maps
#local_recipient_maps = $virtual_mailbox_maps $virtual_maps
local_recipient_maps = $virtual_mailbox_maps $virtual_alias_maps

#### SASL ####
# включаем sasl
smtpd_sasl_auth_enable = yes
# Для ущербных устаревших Outlook Express
broken_sasl_auth_clients = yes

# В заголовок письма вставлять информацию об аутентификации
smtpd_sasl_authenticated_header = yes
# Для каких доменов производить аутентификацию
smtpd_sasl_local_domain = $mydomain
# конфигурационный файл запроса
smtpd_sender_login_maps = ldap:/etc/postfix/ldap/users.cf
# Разрешить Relay авторизовавшимся клиентам
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination
# Разрешения для клиентов
smtpd_client_restrictions = permit_mynetworks, permit_sasl_authenticated
# Разрешения для отправителей
smtpd_sender_restrictions = permit_mynetworks, permit_sasl_authenticated
# Отключить анонимный вход
smtpd_sasl_security_options = noanonymous

Пути и прочее задается в users.cf

# адрес LDAP-сервера
# можно использовать ldaps://
server_host = ldap://192.168.1.201/
# где искать людей
search_base = DC=ph,DC=com
version = 3
# какие записи отфильтровывать
# брать только тех, у кого есть атрибут mail
query_filter = (&(objectClass=user)(samAccountName=%u))
# требуемый атрибут - мы забираем mail
result_attribute = samAccountName
# по каким путям будет создаваться папка для юзера и подпапки (если еще %d/ то будет создаваться подпапка с доменом вида domain.dom/user/.maildir
result_format = %u/.maildir/
# DN-запись для подключения к LDAP
#bind = yes
bind_dn = CN=post,CN=Users,DC=ph,DC=com
bind_pw = 1

# Если нужна SSL-сессия
#tls_ca_cert_file=/etc/ssl/test-net.pem
#tls_cert=/etc/ssl/polushka/test-net.pem
#tls_key=/etc/ssl/polushka/test-net.pem

Ну и сами виртуальные домены в /etc/postfix/transport.cf

domain1.ru virtual:
domain2.ru virtual:

Проверить, как это все работает, можно следующим образом:

#postmap -q "post@ph.com" ldap:/etc/postfix/ldap/users.cf

Должно вывести с такими настройками, как у меня

post/.maildir/

и именно такую папку для этого юзера будет создавать postfix.

Изменяя users.cf и проверяя изменения postmap, ты можешь добиться того, что надо. Если надо усилить вывод этой командой, то используй -v и -vv.

Кстати, буду благодарен, если кто-то расскажет, как можно courier-imap и pop3 заставить залезать в папку вида /base/domain/user/.maildir, где /base/ - это базовый путь. Сейчас у меня работает только как /base/user/.maildir, что печалит. Моя долгая возня с этой программой не дала результата.
_______________________________________________________________________
Intel Core2Duo E6600 / 2 Gb RAM / NV GF 8800 GTX / x86_64-pc-linux-gnu

Спасибо

Спасибо огромное!!!!!!!! Помогло!!!!
Сначала пробовал добавлять "%d" в атрибут "result_format" -не получалось, потом понял(потомучто для того чтобы были переменные %d, %u, %s "result_attribute" должен вида как e-mail, т.е."xxx@yyy.zzz",если же он другого вида, то перменная %u равна полному найденному атрибуту, а остальные переменные пустые).

Цитата:
Кстати, буду благодарен, если кто-то расскажет, как можно courier-imap и pop3 заставить залезать в папку вида /base/domain/user/.maildir, где /base/ - это базовый путь. Сейчас у меня работает только как /base/user/.maildir, что печалит. Моя долгая возня с этой программой не дала результата.

Щас поковыряю, вроде получалось у меня....

Ну вообщем, я

Ну вообщем, я поковырялся, я так и не понял как можно так сделать. Думаю эту тему надо закрыть, и создать новую.

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".