Скрипт для временного удаления прав администратора

Я создаю инструмент самоконтроля для администраторов. Скрипт, выполняемый администратором, добровольно откажется от прав администратора. Администратор может восстановить привилегии администратора, снова запустив скрипт, но сталкивается с преднамеренной задержкой (скажем, 20 минут).

Что было бы хорошим способом сделать это?

Мое решение

Скажем, администратор называется my-admin . Мое текущее решение следующее:

  • Добавьте файл в /etc/sudoers.d который позволяет my-admin запускать скрипт под названием /usr/local/bin/delayed-admin как root.
  • Сценарий /usr/local/bin/delayed-admin делает следующее: Если my-admin является частью группы admin , он удаляет его из группы. И если my-admin не входит в группу admin тогда он спит в течение 20 минут, а затем добавляет его в группу admin .

Кажется, это работает, но мне не нравится идея возиться с файлом sudoer каждый раз.

One Solution collect form web for “Скрипт для временного удаления прав администратора”

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

Предоставить альтернативу вокруг sudoers и конфигурации suders.d. Я бы рекомендовал проверить скрипт, чтобы убедиться, что вы являетесь частью группы admins и просто запустите chmod -aG admins my-admin чтобы добавить учетную запись или gpasswd -d my-admin admins чтобы удалить учетную запись.

  • как: Пожалуйста, sudo, do _not_ настроить любую среду, особенно $ SUDO_USER?
  • sudo с оригинальным профилем
  • Почему редактирование core_pattern ограничено?
  • Как создать новый файл и отредактировать его как root?
  • Как я могу запустить setfacl -m group: group2: rwx / dev / video0 / dev / snd / * при входе в систему?
  • Разрешить пользователю использовать команды brclt-like без sudo
  • Судо не работает в chroot
  • Есть ли инструмент, чтобы узнать общее состояние машины?
  • Команда, чтобы заставить пользователя вводить пароль - RHEL / Centos
  • Как предполагается использовать sudo?
  • Операторы печати в реальном времени с тройником в интерактивном скрипте
  • Interesting Posts

    Создание и форматирование exFAT-раздела из Linux

    Помогите мне понять владельца переменной места для команды curl в Dockerfile

    настроить ошибку при попытке создать OpenSSL на CentOS

    Экран GNU: не может возобновить экран с разбитого удаленного сеанса

    в то время как (1) на /etc/rc.local

    В чем разница между командами link и ln?

    Блокировка в сценарии оболочки

    С помощью «find /» пропустите каталоги, такие как «/ proc», «/ sys» и аналогичные

    Почему lfs не может использовать исходные переменные среды хоста?

    Grep / awk / sed для строк, состоящих только из двух букв, и строк, начинающихся с буквы и встречающих определенную длину

    Тар и загрузка за один шаг по ssh / scp

    Странная проблема с ловушкой и SIGINT

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

    Linux-диски не отображаются при двойной загрузке – проблема интеллектуального ответа Intel

    Странные изменения в файлах

    Linux и Unix - лучшая ОС в мире.