我尝试让邮件服务器在 PostgreSQL 上运行,但出现以下错误:
Apr 16 20:48:57 alm authdaemond: PGSQL_CONNECTION could not be established
Apr 16 20:48:57 alm authdaemond: FATAL: database "mail_admin" does not exist.
我遵循该手册并尝试以某种方式使其在 PostgreSQL 而不是 MySQL 中工作: https://www.howtoforge.com/virtual-users-and-domains-with-postfix-courier-mysql-and-squirrelmail-ubuntu-14.04-lts
是的,我有数据库邮件,它的用户是 mail_admin,并且该用户可以访问邮件数据库。
这里有更多错误日志。
Apr 16 20:58:35 alm imapd: LOGIN FAILED, [email protected], ip=[::ffff:91.154.218.57]
Apr 16 20:58:36 alm postfix/smtpd[21430]: warning: SASL authentication failure: Password verification failed
Apr 16 20:58:36 alm postfix/smtpd[21430]: warning: unknown[78.128.113.99]: SASL PLAIN authentication failed: authentication failure
Apr 16 20:58:37 alm postfix/smtpd[21430]: lost connection after AUTH from unknown[78.128.113.99]
Apr 16 20:58:37 alm postfix/smtpd[21430]: disconnect from unknown[78.128.113.99] ehlo=1 auth=0/1 commands=1/2
答案1
我终于明白了这一点。
用户表几乎不需要改变,因为 authpgsql Courier 在 MySQL authmysql 中的工作方式不同。
就像它需要这些列:
email crypt quota name uid gid clear home auxoptions
在 crypt 列中加密密码存储为 crypt:https://xnode.org/page/Crypt_Generator可以在前面提到的地址生成
然后必须按您托管的每个域像这样设置主页:/home/vmail/domain1.com/ /home/vmail/domain2.com/
并且文件 authpgsqlrc 需要这个:
PGSQL_MAILDIR_FIELD split_part(email,'@',1)