Страница 1 из 1

Sendmail+procmail+dovecot. Проблема с правами

Добавлено: 2010-11-07 20:30:15
mr. brightside
Добрый день, всем!

Система FreeBSD 7.2.
Весь софт установлен из портов.

Sendmail - MTA. Procmail - LDA. Dovecot - pop3/imap server.

Почту переконвертировал в maildir формат и, соответственно, складывается она по одному письмишку в каталог cur пользователя.

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

В логе dovecot я, соответственно, получаю:

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

Error: open(/usr/home/spam/.maildir/cur/1289147747.8685_0.my.server.ru:2,) failed: Permission denied (euid=1017(spam) egid=1001(mailusers) missing +r perm: /usr/home/spam/.maildir/cur/1289147747.8685_0.my.server.ru
Sendmail запущен от рута, соответственно procmail вызывается тоже от рута - в этом проблема?

Можно ли решить трабл правкой конфига dovecot'a?

Куски конфига dovecot:

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

login_dir = /var/run/dovecot/login
login_chroot = yes
login_user = dovecot
....
auth_default {
  mechanisms = plain login
  userdb passwd {
    #args =
  }
...
  #user = root
...
}
Как понимается из конфига - пользователи у меня системные и поэтому юзаю базу passwd. Для этой базы не нужен рут для авторизации, - он используется для shadow и pam авторизации.

Я не знаю, как заставить письма создаваться с правами действительных владельцев... =(

Помогите разобраться, плиз...

Re: Sendmail+procmail+dovecot. Проблема с правами

Добавлено: 2010-11-08 10:34:51
skeletor
Причём тут база паролей? Он не может получить доступ к письму (/usr/home/spam/.maildir/cur/1289147747.8685_0.my.server.ru:2) и явно об этом пишет: missing +r perm
Другими словами юзер, от которого работает dovecot не может получить доступ к письму.

Re: Sendmail+procmail+dovecot. Проблема с правами

Добавлено: 2010-11-08 10:50:09
mr. brightside
Блин) я опять убедился в том, что плохо объясняю...

Это понятно, что я не могу получить доступ к письму, так как у меня нет прав на чтение (r permision)

Понятно, также, что, так как пользователи системные, каждый из них забирает почту под своим пользователем:

vasia - почту vasia
petia - почту petia

но, права на чтение нового письма есть только у рута.

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