& ldquo; И оператор & rdquo; в PAM

В соответствии с FAQ KVM, когда можно запустить 32-битных гостей поверх 64-битного хоста, «единственная неподдерживаемая комбинация - это 64-разрядная гостевая версия на 32-разрядном хосте». Таким образом, виртуализация, вероятно, не поможет вам в этом случае.

Расширения PAE действительно помогают только в том случае, если вы запускаете много процессов, каждый из которых требует менее 4 ГБ адресного пространства. Хотя расширение позволяет операционной системе управлять большей памятью, оно все еще ограничено 32-разрядным адресным пространством.

Если у вас есть голодный процесс с одной памятью, вам действительно нужно большее адресное пространство, которое вы получаете через 64-битное ядро.

2
задан 7 April 2012 в 02:02

1 ответ

Я не знаю ни одного оператора AND для PAM, но вы можете добиться такого же эффекта с помощью управляющих операторов.

В вашем скрипте проверки верните конкретный код ошибки PAM (возможно, PAM_SYSTEM_ERR), затем используйте управляющие операторы в своем common-auth например:

auth    required                        pam_group.so use_first_pass
auth    [success=ok default=1]          pam_exec.so /etc/security/check_ecryptfs
auth    [success=2 default=ignore]      pam_krb5.so minimum_uid=1000 try_first_pass
auth    [success=1 default=ignore]      pam_unix.so nullok_secure try_first_pass

Операторы управления для модуля pam_exec должны заставить PAM перейти к следующему модулю (pam_krb5) при успешном завершении и пропустить pam_unix, если pam_exe возвращает любой другой код возврата. Однако вам нужно убедиться, что ваш модуль действительно возвращает код успеха. См. Источник.

Дальнейшая ссылка:

страница пользователя pam.d (особенно раздел инструкций управления) Руководство пользователя модуля PAM
1
ответ дан 25 May 2018 в 12:55
  • 1
    Спасибо, я попробую это сейчас. exit 4, когда ecryptfs не установлен, и exit 0, когда он установлен. – d_inevitable 7 April 2012 в 23:22
  • 2
    Хорошо, он почему-то не работает. Похоже, что pam_unix почему-то пропускает пользователей kerberos. Любая идея, почему это может быть? Я прокомментировал всю строку krb5, все еще могу войти в систему. – d_inevitable 7 April 2012 в 23:42
  • 3
    Хорошо, я думаю, что это потому, что пэд обходит sshd, когда передается билет kerberos. – d_inevitable 7 April 2012 в 23:47
  • 4
    Вы отвечаете на вопросы, насколько мой вопрос. Но по какой-то причине ssh обходит PAM, когда представлен билет kerberos, и поэтому этот кирпич не решает проблему, которую я пытаюсь решить. Но это не вина вашего ответа, поэтому я принял его. – d_inevitable 8 April 2012 в 01:00
  • 5
    Спасибо за принятие :) sshd может использовать другой метод, но я уверен, что он использует PAM - см. Пример /etc/pam.d/sshd. Вы можете проверить журнал /var/log/auth.log, чтобы узнать, как обрабатывается аутентификация. Большинство модулей PAM также имеют аргумент debug, который может предоставить дополнительную информацию о том, как они обрабатывают запросы аутентификации. – cqcallaw 8 April 2012 в 05:49

Другие вопросы по тегам:

Похожие вопросы: