尝试访问邮箱时出现 Dovecot 错误

尝试访问邮箱时出现 Dovecot 错误

我无法让 DoveCot 在多个域和用户中的一个域上运行。其他所有域都运行正常。尝试连接到此用户的邮箱时,我收到服务器错误“发生内部错误”,并在系统邮件日志中发现以下消息:

4 月 14 日 08:57:30 服务器 dovecot[902917]: imap(@<domain.com>)<908694>: 错误: chdir(/home/<unix_user>/imap/<domain.com>//) 失败: 权限被拒绝 (euid=1004(somename) egid=12(mail) 缺少 +x perm:/home/<unix_user>, 我们不属于组 1001(access), 目录归 1007:1001 拥有模式=0710)

我使用 DirectAdmin 创建了 Unix 用户、域和邮箱。

我已经尝试过 $ sh /usr/local/directadmin/scripts/set_permissions.sh all(以 root 身份运行),但无济于事。我与另一个用户比较了所有邮件相关文件(/home/<unix_user>/imap/... 和 /etc/virtual/...)的所有权限,一切正常。没有发现任何差异。

我使用的是 Almalinux 8.9 和 DirectAdmin 1.661。

有什么建议我应该如何找到这个问题的原因?

答案1

我不知道 dovecot 安装如何工作,以及它正常运行时使用哪些用户,因此请注意,下面建议的更改可能会产生安全后果或破坏您的服务器。

failed: Permission denied (euid=1004(somename) egid=12(mail) missing +x perm: /home/<unix_user>, we're not in group 1001(access), dir owned by 1007:1001 mode=0710)

因此,用户1004:12( somename:mail) 尝试将目录切换到/home/<unix_user>属于 的目录1007:1001

为什么somename( ) 与( )1004不一样对我来说是个谜。但如果这是正确的,那么你就有 2 个解决方案。unix_user1007

要么将 的组所有权更改为/home/<unix_user>( mail) 12,要么使其成为( ) 组somename的成员。后者似乎是可行的,因为“ ”表明我们应该加入该组。access1001we're not in group 1001(access)

usermod -a -G access somename

您可能必须重新启动 dovecot,或者重新启动您的邮件服务器。


然后我与另一个用户比较了所有邮件相关文件 (/home/<unix_user>/imap/... 和 /etc/virtual/...) 的权限,发现一切正常。没有发现任何差异。

错误消息仅提到/home/unix_user不是/home/unix_user/imap。检查imap无关紧要。

相关内容