Выдать пользователю sudo
Конфигурация службы · Лёгкое · 10 мин · 100 баллов
Выдать пользователю sudo
В команду пришёл новый администратор. Пользователь deploy уже создан, но не может
выполнять команды через sudo — система отвечает отказом.
Задача
Сделай так, чтобы:
- пользователь
deployмог выполнять команды черезsudo; - права выдавались штатно — через группу или файл в
/etc/sudoers.d/, а не правкой/etc/passwdи не сменой UID на 0; - конфигурация sudoers оставалась синтаксически корректной (
visudo -cпроходит).
Подсказки по подходу
- В Debian/Ubuntu право
sudoдаёт членство в группеsudo(в RHEL —wheel). - Группы пользователя смотри через
id deploy, добавляй черезusermod -aG— обязательно с-a, иначе перезапишешь весь список групп! - Точечные правила правильно класть отдельным файлом в
/etc/sudoers.d/, проверяя его черезvisudo -cf. - Членство в группе применяется при новом входе — учти при проверке (
newgrpили перелогин).
Всё нужное уже установлено. Интернет на машине отсутствует — и не понадобится.
Подсказки
Подсказка 1
Посмотри текущие группы пользователя: id deploy. Группы sudo среди них нет — отсюда
и отказ.
Подсказка 2
Добавь в группу, не затирая остальные: sudo usermod -aG sudo deploy. Ключ -a
(append) здесь обязателен, иначе usermod -G заменит все дополнительные группы.
Подсказка 3
Проверь: id deploy — должна появиться группа sudo. Альтернатива для точечных прав —
файл /etc/sudoers.d/deploy со строкой deploy ALL=(ALL:ALL) ALL, созданный через
sudo visudo -f /etc/sudoers.d/deploy (он проверит синтаксис при сохранении).
Поднимет вашу личную эфемерную Linux-ВМ для задания — обычно пара секунд. После работы её можно остановить.