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

Исходное сообщение
"Maildrop - неправильно раскладывает почту"

Отправлено emv , 16-Июл-09 17:04 
Добрый день!

При настройке maildrop столкнулся с такой проблемой.
Maildrop доставляет почту не в домашнюю директорию пользователя /var/spool/mail/user/Maildir а в /var/spool/mail

При запуске от имени пользователя vmail

vmail@gw:/> /usr/bin/maildrop -V 10 -d user@domain.com
maildrop: Changing to /var/spool/mail/user/Maildir
test
Message start at 0 bytes, envelope sender=user@domain.com
maildrop: Attempting .mailfilter
maildrop: Delivering to /var/mail/user@domain.com
maildrop: Flock()ing /var/mail/user@domain.com.
maildrop: Appending to /var/mail/user@domain.com.
maildrop: Delivery complete.

В каталоге /var/spool/mail создаётся файл user@domain.com

Никаких конфигурационных файлов для maildrop нет.
В LDAP атрибут homeDirectory = /var/spool/mail/user/Maildir
Именно его и использует Maildrop
maildrop: Changing to /var/spool/mail/user/Maildir
Однако письмо кладёт упорно в /var/spool/mail


Логи authdaemon показывают mail=(default)
Хотя здесь должно быть как раз путь до почтовой папки пользователя.
Пробовал задавать в файле
/etc/maildroprc

$DEFAULT="$HOME"
$MAILDIR="$HOME"

Но это не даёт никакого результата.
Вопрос в том откуда authlib берёт mail=(default)

vmail@gw:/etc> /usr/bin/maildrop -V9 -d user@domain.com
maildrop: authlib: groupid=3
maildrop: authlib: userid=1001
maildrop: authlib: logname=user@domain.com, home=/var/spool/mail/user/Maildir, mail=(default)
maildrop: Changing to /var/spool/mail/user/Maildir
Test
Message start at 0 bytes, envelope sender=user@domain.com
maildrop: Attempting .mailfilter
maildrop: Delivering to /var/mail/user@domain.com
maildrop: Flock()ing /var/mail/user@domain.com.
maildrop: Appending to /var/mail/user@domain.com.
maildrop: Delivery complete.

Заметил следующее при тестировании значение
Maildir: (none)

В файле authldaprc прописано
LDAP_MAILDIR<--><------>mailbox

В LDAP mailbox = ./Maildir
И даже когда я вовсе удаляю файл authldaprc, ничего не меняется.
Вопрос откуда courier-authlib берёт атрибуты для Home Directory и Maildir

gw:/usr/sbin # ./authtest user@domain.com
Authentication succeeded.

Authenticated: user@domain.com (system username: user@domain.com)
Home Directory: /var/spool/mail/user/Maildir
Maildir: (none)
Quota: (none)
Encrypted Password: *
Cleartext Password: (none)
Options: (none)

Буду признателен за полезные советы


Содержание

Сообщения в этом обсуждении
"Maildrop - неправильно раскладывает почту"
Отправлено emv , 17-Июл-09 16:20 
>[оверквотинг удален]
>
>Authenticated: user@domain.com (system username: user@domain.com)
>Home Directory: /var/spool/mail/user/Maildir
>Maildir: (none)
>Quota: (none)
>Encrypted Password: *
>Cleartext Password: (none)
>Options: (none)
>
>Буду признателен за полезные советы

Решение проблемы

1. В файле authdaemonrc                                                                      

authmodulelist="authldap"
authmodulelistorig="authldap"

!Только authldap!  
Если ставишь первым authpam то авторизация проходит, но игнорируется файлик authldаprc со всеми вытекающими проблемами.
Если вторым ставишь authpam, то authdaemon по очереди авторизуется первый раз authldap второй раз  authpam.                                                                                                      

2. Настройки  authldаprc                                                                        

LDAP_URI<------><------>ldaps://gw.domain.com
LDAP_PROTOCOL_VERSION<->3
LDAP_BASEDN<---><------>ou=people,dc=domain,dc=com
LDAP_BINDDN<---><------>cn=administrator, dc=domain, dc=com
LDAP_BINDPW<---><------>XXXXXX
LDAP_TIMEOUT<--><------>5
LDAP_AUTHBIND<-><------>0
LDAP_MAIL<-----><------>mail
LDAP_FILTER           (objectClass=CourierMailAccount)
LDAP_DOMAIN<--><------>domain.com
LDAP_GLOB_UID<-><------>vmail
LDAP_GLOB_GID<-><------>vmail
LDAP_HOMEDIR<--><------>homeDirectory
LDAP_MAILDIR<--><------>mailbox
LDAP_DEFAULTDELIVERY<-->defaultDelivery
LDAP_MAILDIRQUOTA<----->quota
LDAP_FULLNAME<-><------>cn
LDAP_CLEARPW<--><------>clearPassword
LDAP_CRYPTPW<--><------>userPassword
LDAP_UID<------><------>uidNumber
LDAP_GID<------><------>gidNumber
LDAP_DEREF<----><------>never
LDAP_TLS<------><------>0

В итоге

gw:/etc/authlib # /usr/sbin/authtest user@domain.com      

Authentication succeeded.
Authenticated: user@domain.com  (uid 1001, gid 3)
Home Directory: /var/spool/mail/user
Maildir: /var/spool/mail/user/Maildir
Quota: 50000
Encrypted Password: {md5}XXXTRbrSaet2C8797S3XXX==
Cleartext Password: (none)
Options: (none)


gw:/etc/authlib # /usr/bin/maildrop -V10 -d user@domain.commaildrop: authlib: groupid=3
maildrop: authlib: userid=1001
maildrop: authlib: logname=user@domain.com, home=/var/spool/mail/user, mail=/var/spool/mail/user/Maildir
maildrop: Changing to /var/spool/mail/user
Test
Message start at 0 bytes, envelope sender=user@domain.com
maildrop: Attempting .mailfilter
WARN: quota string '50000' not parseable
maildrop: Delivery complete.