Intereting Posts
CronJob каждые 25 минут экспорт из MYSQL в CSV Быстрый поиск, чем поиск Извлечь дату создания и время изменения файла в Sunos Как создать привязку ключей для повторного поиска конфигурации оболочки без сохранения новой команды в истории? Создание потоков завершается неудачей с «Ресурсом временно недоступным» с ядром 4.3 Могу ли я подключить порт lpt через tcp? Передача файлов с помощью SSH и переключателя Устанавливает ли `dnf upgrade` новые пакеты, если это необходимо? Как заблокировать выбор в Konsole? передавать много похожих файлов по ssh Запуск фоновых процессов в одной группе и последующее их уничтожение Как отслеживается прогресс команды в трубе, если только размер ее ввода известен заранее? Как установить инструменты компилятора с opkg на архитектуру процессора MIPS Насколько надежным является один интервал и один параметр счета в SAR?

Сумерский черный список

Нам нужно добавить несколько пользователей в файл sudoers в Linux. Они должны иметь возможность любого корня, кроме следующего:

  • Не следует изменять, читать, удалять /nfsshare/config
  • Не следует изменять, читать, удалять /etc/passwd
  • Не нужно монтировать ничего
  • Не следует изменять пароль root
  • Не следует редактировать /etc/sudoers или запускать visudo для добавления других пользователей

Это возможно?

Я, в принципе, согласен с Виссамом Аль-Ружьюлой об этом.

Нам нужно добавить несколько пользователей в файл sudoers

Вам действительно нужно это делать? Возможно, есть и другие способы использования acl или регулярных разрешений UNIX.

Как уже указывал Виссам аль-Ружула, попытки «занести в черный список» определенные команды на самом деле представляют собой действительно плохую идею (читайте ниже у man sudoers ,

  Обратите внимание, однако, что использование '!'  в сочетании со встроенным
  ALL, чтобы позволить пользователю запускать команды «все, кроме нескольких», редко 
   работает по назначению 

Вместо этого вы можете указать «белый список», например, фактические команды, которые пользователи могут запускать. Что-то вроде этого:

 user1 ALL=/sbin/shutdown 

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

Подробнее об этом читайте здесь .

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

Главное, что вы не можете добавить пользователя в sudoers и дать ему все разрешения, но некоторые.

Вы должны сделать это в противоположном направлении.

Доступ su / sudo – это отказ, а не отказ. Как только они смогут получить корневую оболочку, они могут обойти любые другие меры защиты, которые вы создали. Если у них есть конкретные вещи, которые необходимо запустить, и управление файлом sudoers слишком сложно (что, вероятно, лучший подход для принятия вообще), подумайте о написании небольших одноцелевых двоичных файлов, которые запускают эту вещь, а затем устанавливают на них флаг setuid вместо.

Вы посмотрели на SELinux? Какое распределение вы используете?

Возможно, можно создать нового пользователя SELinux и предоставить ему только необходимые привилегии (доступ к ролям). Tt будет входить, поэтому вам нужно будет перечислить все, что нужно пользователю.