Задать вопрос
@alpi_bel

Как дать права root с ограничением?

Доброго дня.
Необходимо создать пользователя с root права, но с некоторыми ограничениями.
Например:
1) созданный пользователь имел root права, но не мог удалить выше стоящего пользователя(первого пользователя или главного пользователя root) или не смог забрать у него root права.
2) созданный пользователь с root права не, смог отменить созданное выше стоящего(первого сощданногр пользователя с root)
3) созданный пользователь не смог бы создавать нового пользователя без согласования с вышестоящим пользователем root.
4) созданный пользователь не смог бы остановить или удалить критически важные программы/сервисы.
Я понимаю, кто то может сказать просто не давай такому пользователю root права и все. Но ситуация такова, что все же необходимо создать такого пользователя
Как говориться, сегодня он хороший пользователь, а завтра ему что то в голову влезет и начнёт пакостить. Вот и хочу обезопасить себя..
Подскажите, как лучше все это сделать?
  • Вопрос задан
  • 62 просмотра
Подписаться 1 Средний 4 комментария
Пригласить эксперта
Ответы на вопрос 3
@iiiopot
root на то и root
root в Linux по определению имеет неограниченные права на систему.
Вместо этого можно создать нового пользователя и редактируя sudo (/etc/sudoers) ограничить те вещи, к которым новый пользователь не должен иметь доступ.

newuser ALL=(ALL) /bin/systemctl restart *, /bin/systemctl start *, !/bin/systemctl stop *, !/bin/systemctl disable *, !/usr/sbin/useradd, !/usr/sbin/userdel, !/usr/sbin/usermod

В этом случае пользователь может запускать и перезапускать сервисы, но не может останавливать или отключать их.

Но, в любом случае нужно понимать, что давая кому то привилегии, вы перманентно даете ему доступ к системе.
Потому, что если скажем, он все же запустит sudo bash, он сможет обойти ограничения.

Есть другие решения, например использование SELinux или AppArmor. Или контейнеров или виртуализации, но лучше просто не повышать привилегии. Обычному пользователю root не нужен.
Ответ написан
Комментировать
NeiroNx
@NeiroNx
Программист
Лучше не давать вообще права рут.
Ответ написан
Комментировать
@SunTechnik
По идеологии Linux - все есть файл.
Поэтому, если у меня появилась возможность запустить любой текстовый редактор с правами root (не важно через sudo или ещё как), я могу все перекроить в системе. Может потребоваться правка других файлов, но джина уже не остановить.

Можно через sudo дать повышенные привелегии на запуск конкретных команд, но если роль пользователя не формализована, а описана словами: админить, всего не предусмотреть. И очень быстро в список команд попадает текстовый редактор.

Включённый Selinux может усложнить жизнь злоумышленнику, но сначала попьет Вашей крови..
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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