Как использовать PAM с MySQL (в Xenial)?

Как использовать PAM с MySQL (в Xenial)?

Я использую Ubuntu 16.04 и установил libpam-mysqlи pamtester. Чтобы протестировать модуль, я попробовал запустить следующую команду:

pamtester --item user=X --item passwd=X --item host=127.0.0.1 --item db=X --item table=X --item usercolumn=X --item passwdcolumn=X --item crypt=1 mysql branja authenticate

Но всегда возвращается сообщение об ошибке:

pamtester: Unknown item type "passwd"

Я могу вас заверить, что вся информация о подключении, которую я указал, действительна, но аутентификация терпит неудачу еще до того, как доходит до этого. Я не могу найти никакой информации о том, какие параметры требуются, если не те, которые я указал.


Я также попробовал ввести следующее /etc/pam.d/mysql:

auth required pam_mysql.so user=X passwd=X host=127.0.0.1 db=X table=X usercolumn=X passwdcolumn=X crypt=1
account sufficient pam_mysql.so user=X passwd=X host=127.0.0.1 db=X table=X usercolumn=X passwdcolumn=X crypt=1

Но это всегда приводит к сбою аутентификации, вероятно, по той же причине, что и в примере выше?

решение1

Ух ты.

Просмотрев информацию /var/log/auth.logи увидев следующее сообщение, я наконец понял, что это связано с ошибкой в libpam-mysql​​пакете.

PAM unable to dlopen(pam_mysql.so): /lib/security/pam_mysql.so: undefined symbol: make_scrambled_password
PAM adding faulty module: pam_mysql.so

Решение для тех, кому это интересно, — удалить официальную версию libpam-mysqlи перейти нанеофициальный пакеткоторый исправляет эту ошибку.

[Источник]

Связанный контент