Как сделать PAM-заменитель «реквизитом»?

Для раздела auth моей конфигурации PAM, login и mdm и т. Д. mdm common-auth . У меня есть common-auth вызывающий следующее в качестве подкласса (как auth substack krb5ldap-cache-auth ):

 auth optional pam_echo.so Trying UNIX # Try UNIX, empty passwords OK auth sufficient pam_unix.so nullok auth optional pam_echo.so Checking UID # If the uid < 500 and UNIX didn't work, then die. auth requisite pam_succeed_if.so uid >= 500 quiet_success auth optional pam_echo.so Trying Kerberos # Try Kerberos, using the same password # If the password is correct (success), then skip next lines # If the password is wrong (auth_err), then die # If Kerberos can't connect (?), then ignore auth [success=2 auth_err=die default=ignore] pam_krb5.so debug use_first_pass # Try the cache, using the same password # Last chance. auth optional pam_echo.so Trying cache auth [success=done default=die] pam_ccreds.so action=validate use_first_pass # Kerberos validated our password. auth optional pam_echo.so Kerberos validated # Store the password hash. auth optional pam_ccreds.so action=store use_first_pass # See if we can mount user drives, since we have a Kerberos token. auth optional pam_mount.so auth optional pam_echo.so Done. 

(Использование pam_echo.so только для отладки.)

Это, похоже, отлично подходит для успешной аутентификации. Механизм подстановки удобен, потому что я могу использовать «достаточный» и «сделанный», чтобы завершить подставку, не заканчивая большой стек.

Но для отказа от аутентификации больший стек продолжается (например, mdm бесполезно вызывает pam_gnome_keyring.so , login будет бесполезно вызывать pam_group.so ), когда он должен умереть.

Есть ли способ вызвать подвал так, чтобы, если подстановка не удалась, стек умрет? Я попробовал auth requisite substack krb5ldap-cache-auth но это просто плохой синтаксис PAM.

  • Отключить учетную запись PAM, но сохранить ландшафт-sysinfo y motd
  • Как я могу автоматически установить принципал kerberos в среде на удаленном хосте?
  • не переходить в одну и ту же определяемую пользователем цепочку дважды
  • Почему sudo -i не устанавливает XDG_RUNTIME_DIR для целевого пользователя?
  • Сервер ldap 389 с sssd-клиентом, не может изменять пароль
  • Сообщение об ошибке на несуществующем домашнем каталоге (настройки pam.d / *)
  • Предупреждать о истечении срока действия пароля без изменения
  • Как сообщить текущее использование для пользователя на ulimits aka pam_limits и т. Д.?
  • One Solution collect form web for “Как сделать PAM-заменитель «реквизитом»?”

    Из руководства администратора PAM:

    substack

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

    Читая свой вопрос, мне кажется, что вы ищете include а не substack . Поэтому вы, вероятно, должны заменить …

     auth substack krb5ldap-cache-auth 

    с…

     auth include krb5ldap-cache-auth 

    Однако в системе Debian вам, возможно, придется использовать это:

     @include krb5ldap-cache-auth 

    Кроме того, в системах и деривативах RedHat вам может pam_stack использовать pam_stack , который часто считается устаревшим (я полагаю, из-за проблем с обработкой включают рекурсии):

     auth requisite pam_stack.so service=krb5ldap-cache-auth 

    В этих случаях, если что-либо вызывает действие done или die в krb5ldap-cache-auth , PAM положит конец всему стеку , а не только подстановку.

    Interesting Posts

    Почему и как выполняются некоторые общие библиотеки, как если бы они исполнялись?

    Как «yum localinstall» из результата поиска «yum search»?

    Зачем нужны индексы?

    Настройка сшивания OCSP – проверьте сертификаты CA

    Текстовый редактор, который позволяет раскрасить произвольный текст (и экспортировать его)?

    Как захватить головную часть сайта с помощью команды curl и grep?

    Aptitude удалила нагрузку модулей, когда я пытался установить Imagemagick, как мне отменить это?

    Использование файла CIFS crendentials с OpenELEC

    Как автоматически «Запустить в терминале» для скрипта в CentOS linux

    вставить текст буфера обмена плюс строку с .inputrc

    почему / dev / dsp исчез из SUSE

    FedUp, не может перейти на Fedora 20

    LVM заполняет все оставшееся место на диске, но недостаточно места на корневом разделе

    Возможно ли, чтобы nohup записывал выходные данные как в файл nohup.out AND, так и на экран / терминал?

    Интернет-ключ Huawei E303 с Linux CentOS?

    Linux и Unix - лучшая ОС в мире.