У меня есть приложение, работающее как пользователь X. У пользователя X есть первичная группа Y и дополнительная группа Z. Я хочу, чтобы приложение аутентифицировалось с помощью Radius через PAM. Я установил libpam-radius-auth
, и я знаю, что /etc/pam_radius_auth.conf
правильно настроен, так как я могу войти с помощью SSH (который также использует PAM Radius). Мое приложение может также правильно аутентифицироваться, если я установилРазрешения для доступа к приложению в качестве пользователя X для аутентификации с использованием PAM Radius?
chmod 444 /etc/pam_radius_auth.conf
. Очевидно, я не хочу этого делать, поскольку файл содержит общий пароль.
Теперь, насколько я понял, /etc/pam_radius_auth.conf
должен быть доступен для чтения процессом (поскольку вызовы PAM выполняются как пользователь). Что меня удивляет, что
chgrp Z /etc/pam_radius_auth.conf
chmod 440 /etc/pam_radius_auth.conf
не работает, но
chgrp Y /etc/pam_radius_auth.conf
chmod 440 /etc/pam_radius_auth.conf
делает. Может ли кто-нибудь объяснить, почему разрешение файла (группа Z, то есть) не работает? Я могу прочитать его от sudo -u X bash
. Может ли это иметь какое-то отношение к тому факту, что мой (выскоченный) файл инициализации для приложения содержит:
setgid Y
? Кроме того, любое предлагаемое исправление было бы замечательным. Поскольку пользователь Y имеет то же имя, что и пользователь X (то есть syslogd:syslogd
), я бы предпочел не иметь /etc/pam_radius_auth.conf
, принадлежащего группе, а скорее глобальную группу Z.
Редактировать: На всякий случай, я перезапустил процесс после добавления дополнительной группы Z к пользователю X. Все еще не работает.
Edit 2: Похоже, этот процесс не в правильной группе:
[email protected]:/proc/3260# cat status |grep Group
Groups: