Привилегии завершения работы FreeBSD

Вопрос или проблема

Мне нужно создать пользователя и запретить ему возможность выключить машину.

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

Использование shutdown требует привилегированного аккаунта. Цитата из документации FreeBSD.org:

Необходимо быть root или членом operator, чтобы выполнить shutdown(8).

Сравните владение и режим файла /sbin/shutdown (в частности, бит suid), чтобы понять почему.


Если вы установили порт security/sudo и у пользователя есть права sudo, вы можете запретить доступ к shutdown, reboot, poweroff и halt, изменив /etc/sudoers на что-то вроде этого:

username     ALL=(ALL:ALL) ALL, !SHUTDOWN

или

%groupname   ALL=(ALL:ALL) ALL, !SHUTDOWN

чтобы запретить группе.

Ответ или решение

Чтобы ограничить привилегии пользователя на отключение машины в FreeBSD, необходимо рассмотреть несколько ключевых моментов, связанных с управлением правами доступа. В системе FreeBSD только пользователь с правами суперпользователя (root) или член группы operator может выполнять команды, связанные с завершением работы системы, такие как shutdown, reboot, poweroff и halt.

Основные шаги для ограничения доступа к командам отключения системы:

1. Создание нового пользователя

Сначала необходимо создать нового пользователя, которому вы хотите запретить возможность отключать систему. Это можно сделать с помощью команды:

adduser имя_пользователя

Следуйте инструкциям, чтобы установить параметры нового пользователя.

2. Проверка привилегий

Убедитесь, что ваш новый пользователь не принадлежит группе operator. Это можно сделать с помощью команды:

id имя_пользователя

Если пользователь является членом группы operator, вы можете удалить его из этой группы с помощью следующей команды:

pw groupmod operator -d имя_пользователя

3. Управление правами через sudo

Если на вашей системе установлен пакет sudo, у вас есть возможность контролировать, какие команды может выполнять пользователь. Откройте файл конфигурации sudoers, используя команду:

visudo

Добавьте следующие строки для ограничения доступа к командам отключения:

имя_пользователя ALL=(ALL:ALL) ALL, !SHUTDOWN

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

%имя_группы ALL=(ALL:ALL) ALL, !SHUTDOWN

4. Проверка настроек

Убедитесь, что внесенные изменения применены корректно. Чтобы проверить, что пользователь действительно не может выполнять команду shutdown, вы можете выполнить следующую команду от лица этого пользователя:

sudo shutdown now

Если настройки были удачно применены, вы получите сообщение об ошибке, что у вас нет разрешений для выполнения этой команды.

Заключение

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

Для получения дополнительной информации обратитесь к официальной документации FreeBSD или к мануалам соответствующих команд.

Оцените материал
Добавить комментарий

Капча загружается...