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

Я сталкивался с временами, когда я случайно запускал опасные команды и потерял все свои данные. Как установить Linux для запроса текущего пароля пользователя или пароля пользователя root при запуске потенциально опасных команд, таких как rm -rf . или rm -rf / и многие другие?

  • Unix - поиск имен с egrep
  • Oneliner для нарезки изображения?
  • Преобразование между форматами нормализации Unicode в командной строке unix
  • Копировать процесс вывода нескольких строк в файл
  • Как отсортировать список файлов по времени, учитывая только имена файлов
  • как запустить rm в фоновом режиме в терминале
  • Как удалить текстовые блоки в файле журнала?
  • Что означает `{\} {}` в команде `find`?
  • 2 Solutions collect form web for “Как настроить Linux на проверку подлинности при запуске потенциально опасных команд?”

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

    Другой совет, который вы часто будете использовать, – это обертывание деструктивных команд, таких как rm так что вам будет предложено «вы уверены»? или с rm вы можете использовать ключ -i который заставит rm быть интерактивным по своей природе, запрашивая подтверждение перед удалением каждого файла.

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

    Основная проблема заключается в том, чтобы надежно идентифицировать «опасную команду». Но предположим, что у вас есть список опасных команд.

    Вы можете «перезаписать» каждый двоичный файл функцией (аналогичной псевдониму оболочки, но более мощным):

     rm () { if is_dangerous rm "$@"; then echo "This is a dangerous command!" echo -n "Think well and type uppercase YES to really execute it: " read answer if [ YES = "$answer" ]; then executing rm "$@" command rm "$@" else echo "not executed" fi } 

    is_dangerous будет скриптом или функцией, которая проверяет пройденную командную строку на список.

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