我今天早些时候刚刚在我的服务器(centos 5.5/apache)上设置好 dovecot 和 postfix。到目前为止,我能够通过 webmin 使电子邮件正常工作(可以向外部域发送/接收邮件)。但是,尝试 telnet xxx.xxx.xx.xxx 110 会返回以下错误:
已连接到 xxx.xxx.xx.xxx。 转义字符是‘^]’。 +OK Dovecot 已准备就绪。 用户 mailtest +确定 经过 ********* +OK 已登录。 -ERR [正在使用] 无法打开 INBOX:发生内部错误。请参阅服务器日志以获取更多信息。[2011-02-11 22:55:48] 外部主机关闭连接。
进一步记录以下错误
dovecot:2 月 11 日 21:32:48 信息:pop3-login:登录:用户=,方法=PLAIN,rip=::ffff:xxx.xxx.xx.xxx,lip=::ffff:xxx.xxx.xx.xxx,TLS dovecot:2 月 11 日 21:32:48 错误:POP3(mailtest):stat(/home/mailtest/MailDir/cur)失败:权限被拒绝 dovecot:2 月 11 日 21:32:48 错误:POP3(mailtest):stat(/home/mailtest/MailDir/cur)失败:权限被拒绝 dovecot:2 月 11 日 21:32:48 错误:POP3(mailtest):无法打开 INBOX:发生内部错误。请参阅服务器日志以获取更多信息。[2011-02-11 21:32:48] dovecot:2 月 11 日 21:32:48 信息:POP3(mailtest):无法打开 INBOX top=0/0、retr=0/0、del=0/0、size=0
此外,当尝试登录 squirrelmail 或通过 thunderbird/live mail 等访问帐户时,显然也会因类似的问题而失败。
任何建议或外部想法都会有很大帮助!我几乎用尽了所有资源,并尝试了针对我的 dovecot.conf 文件的所有建议,但到目前为止似乎没有任何效果 :( 我觉得这可能是权限/所有权问题,但我不知道具体细节。
答案1
问题似乎是“stat(/home/mailtest/MailDir/cur) 失败:权限被拒绝”。确保运行 Dovecot 进程的任何用户都可以读取该目录。
答案2
dovecot: Feb 11 21:32:48 Error: POP3(mailtest): stat(/home/mailtest/MailDir/cur) failed: Permission denied
表示 /home/mailtest/MailDir/cur 无法被 dovecot pop3 服务器进程读取/写入。
ls -lah /home/mailtest/MailDir
显示目录的权限吗?
还要检查/var/log/messages/maillog
一下 dovecot 报告了什么错误消息。
squirrelmail 和 thunderbird 也可能使用通过 dovecot 连接到机器。
请注意,dovecot pop3 进程以访问它的用户的身份运行,因此这可能意味着 mailtest 用户不是 /home/mailtest/MailDir 或类似的所有者。