Я знаю, как включить su без пароля для всех пользователей группы колес, добавив соответствующую строку конфигурации в /etc/pam.d/su
.
Я не хочу включать это для всех пользователей колес, а только для одного конкретного пользователя.
Я использую FreeBSD 8.1. Как мне это сделать?
ОБНОВЛЕНИЕ в ответ на комментарии ниже
Это ящик pfSense. В основе ОС лежит FreeBSD 8.1, но, как обычно, в pfSense отсутствует большая часть функциональности, в частности, вся коллекция портов. Я хочу, чтобы один привилегированный пользователь (в группе wheel) мог вызывать su - без необходимости вводить пароль root. Включить это для всех пользователей, использующих PAM, очень просто. Я не знаю правильную конфигурацию PAM, позволяющую обходить пароль для одного конкретного пользователя. Я ограничен политикой компании в том, сколько изменений я могу внести. Это работающая критически важная машина, и я не могу рискнуть случайно ее сломать. Я унаследовал управление этой машиной, но радикальные изменения ее конфигурации в настоящее время нецелесообразны или недопустимы. У меня есть ПАМ; У меня нет sudo. Хотел бы я, но не знаю.
Я предлагаю использовать sudo
сделать это. Это простой и проверенный метод.
Пожалуйста, обратитесь к странице руководства sudo для получения дополнительной информации.
Есть ли во FreeBSD частные группы пользователей? Если нет, создайте группу и поместите в нее только этого пользователя. Затем в /etc/pam.d/su
добавить что-то вроде
auth sufficient pam_group.so no_warn group=foo
где foo
это название группы.
Марк Вагнер предложил решение, за которое огромное спасибо. Я создал группу nopw
и добавил к нему привилегированного пользователя. Затем я создал «достаточное» правило no_warn для этой группы, используя только модуль pam_group.so. Сейчас auth
раздел моего /etc/pam.d/su
файл выглядит так:
auth sufficient pam_rootok.so no_warn
auth sufficient pam_self.so no_warn
auth sufficient pam_group.so no_warn group=nopw root_only fail_safe
auth requisite pam_group.so no_warn group=wheel root_only fail_safe
auth include system
Что плохого в том, чтобы поместить в группу wheel только одного пользователя?