因此,我已在 Ubuntu 18.04 VPS 上设置了 postfix 和 dovecot,虚拟用户存储在 postgresql 数据库中。我决定在 VPS 上根据相同的设置进行新的设置(我主要遵循本指南中的设置)https://123qwe.com/tutorial-debian-10/) 但使用 Ubuntu 20.04。接收邮件工作正常,但我无法使用任何邮件客户端登录,并且 doveadm auth test 说 passdb 上的身份验证失败。
test123
我使用argon2
带有盐的密码创建了一个测试帐户12345678
,并将其存储在数据库中,但在 /var/syslog 中(在打开更多 dovecot 调试日志之后)我收到以下消息:
ARGON2ID(test123) != '$argon2i$v=19$m=4096,t=3,p=1$c2FsdD0xMjM0NTY3OA$jppnL4/+/mHkh2kx8SHoXcv65u0yf5p2HIRDPXe93ZM'
但是运行echo test123 | argon2 salt=12345678
(我用来生成哈希并将其存储在数据库中的命令)显示完全相同的哈希。
我真的很困惑!有人知道发生了什么吗?
编辑忘记提及版本 Postfix 是 3.4.13 Dovecot 是 1:2.3.7.2 Postgresql 是 12+214
答案1
通过使用 doveadm pw -s ARGON2ID 生成哈希,我注意到结果与 argon2 工具略有不同。将其存储在数据库中后,登录成功!