Как проверить конфиг sudo с помощью visudo

Перевод: Use visudo to Check SUDO Config Syntax

visudo syntax check visudo syntax check

Проверка правильности конфигов sudo с помощью visudo

Я как раз скоро опубликую более подробный взгляд на решение и отладку проблем с sudo, а пока вот такая небольшая заметка про полезный функционал команды visudo.

ВАЖНО: всегда старайтесь редактировать sudoers из интерактивной оболочки – то есть у вас есть root шелл, и если даже sudoers испытывает проблемы – не нужно на него полагаться, чтобы что-то выполнить или исправить с правами супер-пользователя.

Два основных метода работы visudo

Основной метод работы visudo – интерактивный: запускаем команду, она открывает редактор файла /etc/sudoers, потом применяет наши изменения в основную конфигурацию sudo.

А во второй метод – тоже очень полезный! Файлы мы не редактируем, а только проверяем на синтаксическую правильность – вот об этом я сегодня и расскажу.

Проверка /etc/sudoers с помощью visudo

Запускаем команду visudo с опцией -c и получаем отчёт о главном конфиге – /etc/sudoers и всех других файлах, которые он может подгружать из /etc/sudoers.d:

greys@becky:~ # visudo -c
/etc/sudoers: parsed OK
/etc/sudoers.d/010_at-export: parsed OK
/etc/sudoers.d/010_pi-nopasswd: parsed OK
/etc/sudoers.d/README: parsed OK

Как выглядит ошибка, найденная visudo

Вот так она выглядит:

root@becky:~ # visudo -c
/etc/sudoers: syntax error near line 10 <<<
       parse error in /etc/sudoers near line 10

Как видно из этого примера, я запускаю visudo уже из активной сессии root. Так что, видя ошибку, я могу её попытаться исправить прямым редактированием файла /etc/sudoers (или какой там ещё файл найдёт visudo) – именно потому, что мы уже являемся супер-пользователем и не зависим от работоспособности sudo.

В этом примере, что-то неправильно в основном файле /etc/sudoers, в 10й строке.

ВАЖНО: после исправления ошибок, снова запустите visudo -c, чтобы убедиться: больше ошибок нет. Финальной проверкой должен стать отдельный логин в систему и попытка использования sudo. НИ В КОЕМ СЛУЧАЕ не закрывайте текущую сессию root, потому что она по-прежнему может быть единственным способом что-то исправлять.

Ссылки




Давайте учиться вместе!

Заходите на страницу Facebook или присоединяйтесь к чату в Telegram:
Я использую браузер Brave
Попробуйте сами: Brave Browser
IT Консалтинг
У меня есть консалтинговая компания: Tech Stack Solutions. Я помогаю планировать и создавать облачные решения на базе AWS и помогаю с развёртыванием и поддержкой сервисов на Unix/Linux. Свяжитесь со мной тут.
Последние заметки
19 Sep 2022

Linux Mint как OS для десктопа

08 Jul 2021

rsync over SSH

18 Jun 2021

Вышла CentOS 8.4

Recent Tweets