因此,我使用 postfix 和 dovecot 進行了工作設置,虛擬使用者儲存在 Ubuntu 18.04 VPS 上的 postgresql 資料庫中。我決定根據相同的設定在 VPS 上進行新設定(我主要遵循本指南https://123qwe.com/tutorial-debian-10/)但對於 Ubuntu 20.04。接收郵件運作得很好,但我無法使用任何郵件用戶端登錄,並且 doveadm 身份驗證測試顯示 passdb 上的身份驗證失敗。
test123
我使用argon2
with作為鹽建立了一個帶有密碼的測試帳戶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 工具略有不同。存到資料庫後就登入成功了!