Intereting Posts
Как сопоставить соответствие шаблону и остановить его после последнего совпадения Связанная с SSL «неопределенная ссылка» на libssh2 и libcurl libs при компиляции C на OpenSUSE Как написать сценарий для автоматической оптимизации всех PNG в моей директории изображений MediaWiki? Как вытащить файл из awk? Есть ли инструмент, который подключается к двум каталогам и синхронизирует их, как только что-то меняется? В чем разница между запуском «bash script.sh» и «./script.sh»? «Не удалось создать собственное расширение gem» при установке xively-rb для малины Pi как `echo` 'отформатировал' man-страницу некоторой команды в текстовый файл Ubuntu 16.04 не может распознать HDMI-монитор, но Ubuntu 17.10 может при синхронизации времени выполнения команды с помощью sudo `time` должно быть до` sudo` или после `sudo`? Добавление двух стандартных шлюзов в файл интерфейсов Debian читать файлы напрямую VS getent rpm – обновление не обновляется? Файлы, созданные в текущем сеансе оболочки Установка репозитория Epel на CentOS не выполняется

Как вы получаете `pam_succeed_if.so` для распознавания пользователя` service`?

У меня есть система Linux с именем пользователя service . Я использую модуль pam_succeed_if.so для соответствия этому имени пользователя. Например:

 auth required pam_succeed_if.so user = service 

Но это не будет соответствовать имени пользователя service , по-видимому, потому что это также поле, принятое pam_succeed_if.so . На странице руководства (отредактирован для акцента):

Доступные поля: пользователь, uid, gid, shell, home, ruser, rhost, tty и сервис

Как избежать значений, соответствующих именам полей?

Другие способы устранения неполадок:

Я включил опцию debug для pam_succeed_if.so и конвертировал service имени пользователя для login :

 login: pam_succeed_if(login:auth): 'user' resolves to 'login' 

И это как раз и есть конфигурация PAM для входа в систему, /etc/pam.d/login .

pam_succeed_if.so преобразует переданного user в значение field , если это значение существует. Например, используя пользовательскую shell :

 login: pam_succeed_if(login:auth): 'user' resolves to '/bin/bash' 

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

Просто проверьте значение разрешенного значения вместо фактического значения.

Примеры

Чтобы соответствовать пользователю service в конфигурации PAM login в login :

 auth required pam_succeed_if.so user = login 

Чтобы соответствовать пользователю service в конфигурации sshd PAM:

 auth required pam_succeed_if.so user = sshd 

Чтобы соответствовать пользователю shell , чья настроенная оболочка /bin/bash :

 auth required pam_succeed_if.so user = /bin/bash