Linux Labs

Пользователи, права, процессы / Ступень 8 из 13

Делегирование команд через sudo

Не запущена Запускается обычно ~20 с
Выйти из урока

Шаг 1 из 8 · на машине · 6 мин

Две строки можно, три — нет

Чему научишься

  • Читать правило sudoers как разрешение конкретному субъекту на конкретную команду.
  • Редактировать отдельное правило через visudo и проверять полную конфигурацию.
  • Проверять разрешённое действие и отказ за его пределами от целевого пользователя.

Дежурному labops разрешили через sudo смотреть хвост журнала /srv/sudo-lab/status.log. Он пишет: «Две последние строки показывает, а на три просит пароль, которого у меня нет».

Проверь от его имени. В командах карточки sudo -u labops запускает команду от дежурного, а она сама — sudo -n: так labops обращается к sudo, не дожидаясь вопроса о пароле.

Упражнение · посмотреть

Проверь жалобу дежурного

От имени labops запроси через sudo две последние строки журнала, потом три, затем попробуй прочитать журнал без sudo.

Сначала предположи

Две последние строки labops получает. Что он получит, когда попросит три?

Теперь начни упражнение, выполни команду и сверь прогноз с выводом.

Войти и начать Машина доступна после входа
Проверь себя 1 вопрос

Почему tail -n 2 прошёл, а на tail -n 3 sudo потребовал пароль?

  • Числа попыток у sudo нет: повтори tail -n 2 — он снова пройдёт.

  • Пароля labops не вводил ни разу — первый вызов прошёл без него. Запоминать было нечего.

  • Число строк для прав файла ничего не значит: журнал закрыт для labops целиком, cat получила Permission denied. Решило правило sudo.

Правило разрешает labops ровно tail -n 2 этого журнала, а другой вызов sudo без пароля не пропускает.

Ubuntu 24.04
Загрузка…