1

Я пытаюсь ограничить доступ SSH для определенных групп, а также пользователей, указанных в файле. Группы перечислены в /etc/ssh/user.allow, а группы в /etc/ssh/group.allow. Я попытался использовать следующие строки в /etc/pam.d/sshd:

auth sufficient /lib/security/pam_listfile.so onerr=fail item=user sense=allow file=/etc/ssh/user.allow 
auth required /lib/security/pam_listfile.so onerr=fail item=group sense=allow file=/etc/ssh/group.allow

Я не могу понять, как организовать линии, и где использовать "требуется" и "достаточно". Какие-нибудь советы?

РЕДАКТИРОВАТЬ: я думаю, мой вопрос, есть ли способ "ИЛИ" два заявления pam.d? Похоже, что PAM настроен только на операторы "И".

1 ответ1

3

"Это зависит". У вас есть несколько вариантов, каждый из которых имеет смысл, зависит от того, где они находятся в стеке и какой эффект вы хотите получить. Так как вы публикуете только фрагмент, а не весь свой конфиг, я могу думать о двух из них:

  • Вы можете пометить их обоих "достаточно". Этот тег означает, что сопоставление остановит оценку (более поздние строки не будут обрабатываться вообще - поэтому любые проверки пароля или ключа должны были выполняться выше). Вот что значит "достаточно", достаточно впустить вас. С другой стороны, неудача не состоится против вас; поэтому, если первая строка завершается успешно, вы находитесь, если она не проходит, она не будет удерживаться против вас, а вторая строка проверяется.
  • Вы можете использовать расширенный синтаксис, чтобы пометить первый как «хорошо, чтобы потерпеть неудачу, но если это успешно, пропустите следующий», что-то вроде:

    auth [success=1 default=ignore] /lib/security/pam_listfile.so item=user ...
    auth [success=ok default=die] /lib/security/pam_listfile.so item=group ...

    пропустить групповую проверку, если пользовательская проверка прошла успешно, но при неудачной групповой проверке также происходит сбой (и остановить оценку, "плохо" вместо "умереть" для обработки более поздних модулей в любом случае).

Версия расширенного синтаксиса, вероятно, потребует указания большего количества действий (man pam.conf - http://linux.die.net/man/5/pam.conf), и вам определенно нужно быть осторожным при редактировании настроек pam, потому что это Совершенно возможно полностью заблокировать себя в своей системе (обычно, если вы редактируете файл, оставьте его открытым в редакторе и попробуйте войти в систему или выполнить настройку в отдельном терминале). Имейте в виду, что также возможно полностью случайно сконфигурировать вашу систему, чтобы она была чрезмерно допустимой (например, ранняя "достаточная" строка может пропустить как настройку вашей среды, так и проверку вашего пароля или что-то еще).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .