Проблема аутентификации PAM

Я использую этот модуль для аутентификации с помощью pam: http://code.google.com/p/web2py/source/browse/gluon/contrib/pam.py

Я могу вызвать аутентификацию ('имя пользователя', 'пароль'), и он возвращает True/False. Он работает для любого «имени пользователя», кроме «root». Я предполагаю, что в PAM есть ограничение безопасности, которое не позволяет проверить пароль root.

Мне нужно иметь возможность проверить пароль root. Могу ли я что-нибудь изменить в pam.conf или где-то еще, чтобы снять это ограничение?


person mdipierro    schedule 30.04.2010    source источник


Ответы (3)


Нашел ответ на свой вопрос, проблема в сервисе по умолчанию.

когда вы вызываете функцию аутентификации ('имя пользователя', 'пароль'), убедитесь, что вы также передаете соответствующую службу. например, authentication('username','password', 'passwd') или вы можете добавить свою пользовательскую конфигурацию в /etc/pam.d/

вот пример из проекта webmin

#%PAM-1.0
auth    required    pam_unix.so nullok
account required    pam_unix.so
session required    pam_unix.so

напишите предыдущие строки в файле под /etc/pam.d/ и назовите его, например, «myconfig», затем передайте его имя функции, и она будет работать (у меня это сработало): D

person user330371    schedule 03.05.2010

У меня была такая же проблема, как root, не проходил аутентификацию. Вот исправление.

Если вы используете сервис «логин», он не будет работать для root. Использовать,

#authenticate('username','password',service='system-auth')
person Vysa    schedule 25.11.2012
comment
Спасибо, у меня это сработало, наша аутентификация не основана на локальном файле. - person Deep Saurabh; 18.09.2017

Вы можете использовать конфигурацию sshd, если это система с работающим сервером ssh, которая должна работать для root.

аутентификация('root','пароль',service='sshd')

person johnk    schedule 25.09.2018