pam_script получить вывод предыдущего модуля - PullRequest
0 голосов
/ 13 марта 2011

Как получить выходные данные предыдущих модулей с помощью pam_script?

Так что, если бы я вставил pam_script между pam_unix и pam_deny, я мог бы выполнить некоторые действия, если аутентификация не удалась?

Редактировать: По-видимому, если вы измените [success=1] на [success=2], Пэм пропустит дополнительную строку.

Это означает, что я могу поставить один скрипт перед pam_deny и увеличить число в случае успеха, затем один скрипт после pam_deny для корректной аутентификации.

Мне все еще нужно знать, как использовать два разных скрипта. Как передать точный скрипт для использования в pam_script.so?

Оригинал:

auth    [success=1 default=ignore]  pam_unix.so nullok_secure
auth    requisite           pam_deny.so
auth    required            pam_permit.so
auth    optional            pam_ecryptfs.so unwrap
auth    optional            pam_cap.so 

Изменен:

auth    [success=2 default=ignore]  pam_unix.so nullok_secure
auth    [default=ignore]            pam_script.so # What goes here?
auth    requisite                   pam_deny.so
auth    [default=ignore]            pam_script.so # And what goes here?
auth    required                    pam_permit.so
auth    optional                    pam_ecryptfs.so unwrap
auth    optional                    pam_cap.so 

1 Ответ

0 голосов
/ 20 марта 2011

pam_script принимает параметры, поэтому ...

auth    [success=2 default=ignore]  pam_unix.so nullok_secure
auth    [default=ignore]            pam_script.so incorrect
auth    requisite                   pam_deny.so
auth    [default=ignore]            pam_script.so correct
auth    required                    pam_permit.so
auth    optional                    pam_ecryptfs.so unwrap
auth    optional                    pam_cap.so 

И в /usr/share/libpam-script/pam_script_auth:

#!/bin/bash
$1
# rest of script
...