Dovecotconfiguration错误(权限被拒绝) – 电子邮件为根

我已经build立了一个名为postman的本地用户,并使用Thunderbird(IMAP)login到该用户。 以下内容显示在邮件错误日志中。

Dec 14 23:45:18 ams1 dovecot: lda(root): Fatal: Invalid user settings. Refer to server log for more information. Dec 14 23:45:18 ams1 dovecot: lda(root): Error: chdir(/root/) failed: Permission denied (euid=65534(nobody) egid=65534(nogroup) missing +x perm: /root, dir owned by 0:0 mode=0700) Dec 14 23:45:18 ams1 dovecot: lda(root): Error: chdir(/root) failed: Permission denied Dec 14 23:45:18 ams1 dovecot: lda(root): Error: user root: Initialization failed: Initializing mail storage from mail_location setting failed: stat(/root/Maildir) failed: Permission denied (euid=65534(nobody) egid=65534(nogroup) missing +x perm: /root, dir owned by 0:0 mode=0700) 

如何解决它,以及如何排除使用邮件的根?

/etc/dovecot/conf.d/10-mail.conf

 mail_location = maildir:~/Maildir 

/etc/postfix/main.cf中

 home_mailbox = Maildir/ 

有没有更好的方式来存储电子邮件,而不是在/ home?

为根(MTA别名)传送电子邮件

标准的安全build议指出,电子邮件到root应该被redirect到非特权用户 – >在后缀configuration为root创build别名。

http://www.postfix.org/aliases.5.html

BTW AFAIR某些文件系统(NFS?)映射用户root到用户nobody

Dovecot有configuration选项:

 first_valid_uid = 26 last_valid_uid = 0 first_valid_gid = 6 last_valid_gid = 0 

所有低于该值的uids / gids被视为不可接受的,并导致交货错误。 当然,你可以很容易地把第一个有效的uid改成零,但是,正如上面所提到的,把所有的root和系统邮件别名到一些没有权限的帐户,最好是虚拟的。