Как сделать 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
  • Отключение сохранения для сеанса и сохранение в брелок по методу LXDE
  • Домашние каталоги и pam.d с использованием LDAP
  • Вход SSH с внешней аутентификации
  • ulimit vs /etc/security/limits.conf
  • открытие ошибки kcheckpass / var / log / faillog
  • Как получить статус проверки подлинности с последнего запуска модуля PAM
  • Как заставить пользователя сменить пароль при первом входе в систему с помощью ssh?
  • 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

    kvm guest Сетевой интерфейс no Аутентификация

    Серия вопросов по скриптам ebuild. Учитывая исходный отрывок и вопросы

    Есть ли графический инструмент sudo (kdesudo, gksudo, su-to-root, …), который работает без пароля?

    Нельзя вводить заглавные буквы с помощью клавиши shift

    Преобразование операторов XML в SQL INSERT с использованием командной строки

    Как слить ключи или обработать ключи с тем же именем?

    Современное распределение на старом оборудовании

    Как сообщить размер очереди приема для сокетов AF_UNIX

    Почему я не могу отключить некоторые службы в системах-config-сервисах?

    Хотя цикл для целых чисел с пользовательским вводом

    меньше всегда без учета регистра

    Почему я продолжаю получать файл wget-log в ~ на Arch Linux?

    Отсутствует 32-битная библиотека на 64-битной установке Linux

    Изменение переменной $ HOME в сценарии запуска сеанса: Gnome игнорирует его?

    Общие сведения о Linux Perf sched-switch и контекстных переключателях

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