Можно ли использовать шифрование паролей MD5 для шифрования паролей при использовании Postfix / SASL и MySQL? В настоящее время в моей настройке используется функция MySQL CRYPT (), которая по разным причинам не идеальна.
Да, это возможно.
Я думаю, вы используете libpam-mysql. Есть опция, которую вы можете установить с именем crypt.
auth optional pam_mysql.so user=username passwd=password verbose=0 db=thedb table=user usercolumn=userName passwdcolumn=userPassword crypt=3
account required pam_mysql.so user=username passwd=password verbose=0 db=thedb table=user usercolumn=userName passwdcolumn=userPassword crypt=3
вы также можете использовать auth required
Затем зашифруйте свои пароли с помощью MD5 в mysql.
Вы можете найти документ в файле readme и / usr / share / doc / libpam-mysql
Цитирую часть:
склеп (простой)
The method to encrypt the user's password: 0 (or "plain") = No encryption. Passwords stored in plaintext. HIGHLY DISCOURAGED. 1 (or "Y") = Use crypt(3) function. 2 (or "mysql") = Use MySQL PASSWORD() function. It is possible that the encryption function used by PAM-MySQL is different from that of the MySQL server, as PAM-MySQL uses the function defined in MySQL's C-client API instead of using PASSWORD() SQL function in the query. 3 (or "md5") = Use plain hex MD5
В файле конфигурации saslauthd в debian вы должны установить,
MECHANISMS="pam"
не знаю, как установить его в другом дистрибутиве, но процесс нужно запускать вот так.
/ usr / sbin / saslauthd -a pam
Но я думаю, у вас это уже есть.