Dovecot - rcpt [email protected]:无法初始化用户

Dovecot - rcpt [email protected]:无法初始化用户

我有一个 SMTP 服务器:

  • Dovecot 作为其 IMAP 服务器
  • Postfix 作为其 MTA
  • OpenDKIM 签署电子邮件。

当我发送邮件时,它会引发此错误:

Jan 01 10:46:01 example.com dovecot[211047]: lmtp(219823): Error: lmtp-server: conn unix:pid=219911,uid=113 [10]: rcpt [email protected]: Failed to initialize user: Mail access for users with UID 114 not permitted (see first_valid_uid in config file, uid from userdb lookup).

我应该注意,我可以连接到我的服务器来阅读电子邮件,但无法发送。这与之前的问题有关:Postfix 不发送邮件;example.com 循环回到我自己并且连接超时

答案1

您需要提高您的诊断技能,因为错误消息直接指向相关配置并告诉您其中可能存在什么问题。

  • dovecot[211047]

    这部分表明日志消息来自该dovecot进程;Dovecot 的配置可能有问题。

  • Mail access for users with UID 114 not permitted

    由于某些原因,具有 UID 的用户114不被允许登录 Dovecot。这是一个系统用户:您可以使用命令id 114来显示它是哪个用户,以决定它是否可以登录 Dovecot。

  • (see first_valid_uid in config file, uid from userdb lookup)

    这里告诉您应寻找什么。相关Dovecot 配置使用的系统用户说:

    默认情况下,Dovecot 仅允许用户使用 UID 号及以上登录500。此检查旨在确保没有人能够以守护进程或其他系统用户身份登录。如果您使用的 UID 低于500,则需要更改first_valid_uid设置。

    dovecot-imapd在 Ubuntu 22.04 上全新安装:

    $ doveconf -a | grep "first_valid_uid"
    first_valid_uid = 500
    

    作为默认设置,它在配置文件中被注释掉:

    $ grep "first_valid_uid" /etc/dovecot/conf.d/*.conf
    /etc/dovecot/conf.d/10-mail.conf:# be done even if first_valid_uid is set to 0.
    /etc/dovecot/conf.d/10-mail.conf:#first_valid_uid = 500
    

    /etc/dovecot/conf.d/10-mail.conf根据需要通过取消注释行 add set is 进行编辑,例如,

    first_valid_uid = 114
    

    请记住,这允许所有具有 UID114及以上的系统用户登录 Dovecot。用户数据库可用于更精细的级配配置。

相关内容