直接在MySQL資料庫中更改postfix用戶帳戶的密碼

直接在MySQL資料庫中更改postfix用戶帳戶的密碼

我需要直接在MySQL資料庫中更改postfix用戶帳戶郵箱的密碼;但是我不知道使用的格式。

這是表格:

SELECT username,password FROM mailbox LIMIT 1;
+------------------+------------------------------------+
| username         | password                           |
+------------------+------------------------------------+
| [email protected] | $1$60Dgu9vc$T7vaQfTKgxUpci0TTnsyO0 |
+------------------+------------------------------------+

它是什麼格式?如何改變呢?

答案1

$1$密碼欄位開頭的 暗示它是 MD5 雜湊值。

要在 MD5 雜湊中加密密碼,您可以使用該openssl passwd命令。

人openssl

passwd 產生雜湊密碼。

和來自openssl passwd --help

-1 基於MD5的密碼演算法
-stdin 從stdin讀取密碼

因此,要產生 MD5 雜湊值,請使用一個簡短的 bash 範例:

#/bin/bash
PASSWORD="test123"
MD5=`echo $PASSWORD | openssl passwd -1 -stdin`

運行它,您將得到預期的加密密碼作為輸出:

$1$EaYOC8n4$04LSDBtt4A8GPVRUkzBXG/

因此,要將 MySQL 資料庫中的密碼變更為“test123”,請在 MySQL 提示字元中執行下列操作:

USE postfix UPDATE mailbox SET password="$1$EaYOC8n4$04LSDBtt4A8GPVRUkzBXG/" WHERE username="[email protected]";

變更立即生效,使用者將在下次造訪郵箱時注意到變更。

相關內容