Для упрощения управления корневым доступом есть программа sudo (superuser do). На самом деле это не сам root. Вместо этого он поднимает связанную команду до корневого уровня. При этом управление «корневым» доступом на самом деле означает управление пользователями, которые могут получить доступ к «sudo». Само судо можно использовать по-разному.
Давайте узнаем больше о root и sudo в Arch Linux.
Осторожность: Поскольку корень всемогущ, игра с ним может привести к неожиданным повреждениям. По своей конструкции Unix-подобные системы предполагают, что системный администратор точно знает, что он / она делает. Таким образом, система позволит выполнять даже самые небезопасные операции без дополнительных запросов.
Поэтому системным администраторам следует проявлять особую осторожность при работе с «root-доступом». Пока вы используете «root» доступ для выполнения определенной задачи, будьте осторожны и несут ответственность за результат.
Sudo в Arch Linux
Судо - это не просто программа. Скорее, это структура, которая управляет «корневым» доступом. Когда в системе присутствует sudo, есть также определенные группы пользователей, у которых есть доступ к «root». Группировка позволяет упростить контроль над разрешениями пользователей.
Начнем с sudo!
Установка sudo
Когда вы установили Arch Linux, он должен поставляться с установленным по умолчанию sudo. Однако выполните следующую команду, чтобы убедиться, что sudo действительно присутствует в системе.
pacman -S sudo
Выполнение команды с привилегиями root
Sudo следует следующей структуре команд.
судо
Например, используйте sudo, чтобы сообщить pacman об обновлении всей системы.
sudo pacman -Syyu
Текущие настройки sudo
Sudo можно настроить в соответствии с требованиями ситуации. Чтобы проверить текущие настройки, используйте следующие команды.
sudo -ll
Если вас интересует проверка конфигурации для определенного пользователя, используйте следующую команду.
sudo -lU
Управление sudoers
Когда вы устанавливаете sudo, он также создает файл конфигурации с именем «sudoers». Он содержит конфигурацию для различных групп пользователей, таких как wheel, sudo и другие настройки. Доступ к судоэрам ВСЕГДА должен осуществляться с помощью команды «visudo». Это более безопасный способ, чем прямое редактирование файла. Он блокирует файл sudoers, сохраняет отредактированный во временный файл и проверяет грамматику перед тем, как он будет навсегда записан в «/ etc / sudoers».
Давайте посмотрим на sudoers.
sudo visudo
Эта команда запустит режим редактирования файла sudoers. По умолчанию редактор будет vim. Если вы хотите использовать что-то еще в качестве редактора, используйте следующую структуру команд.
sudo РЕДАКТОР =
Вы можете навсегда изменить редактор visudo, добавив следующую строку в конце файла.
Редактор по умолчанию = / usr / bin / nano, !env_editor
Не забудьте проверить результат.
sudo visudo
Группы
«Sudoers» диктует разрешение «sudo» пользователям и группам одновременно. Например, группа wheel по умолчанию имеет возможность запускать команды с правами root. Для той же цели существует еще одна группа sudo.
Узнайте, какие группы пользователей в настоящее время присутствуют в системе.
группы
Проверьте sudoers, для каких групп есть доступ к привилегиям root.
sudo visudo
Как видите, учетная запись «root» имеет доступ к полным привилегиям root.
- Сначала «ВСЕ» означает, что правило действует для всех хостов
- Второе «ВСЕ» говорит о том, что пользователь в первом столбце может выполнять любую команду с привилегиями любого пользователя
- Третье «ВСЕ» означает, что доступна любая команда
То же самое и с колесной группой.
Если вы заинтересованы в добавлении какой-либо другой группы пользователей, вы должны использовать следующую структуру
%Для обычного пользователя структура будет такой:
Разрешение пользователю с доступом sudo
Это можно сделать двумя способами - добавить пользователя в колесо group или, упоминая пользователя в sudoers.
Добавление в группу колес
Использовать usermod добавить существующего пользователя в колесо группа.
sudo usermod -aG wheel
Добавление sudoers
Запуск sudoers.
sudo visudoТеперь добавьте пользователя с соответствующим корневым разрешением.
Если вы хотите удалить пользователя из доступа sudo, удалите запись пользователя из sudoers или используйте следующую команду.
sudo gpasswd -d
Права доступа к файлам
Владелец и группа для «sudoers» ДОЛЖНЫ быть 0 с разрешением файла 0440. Это значения по умолчанию. Однако, если вы попытались изменить, сбросьте их до значений по умолчанию.
chown -c корень: корень / etc / sudoerschmod -c 0440 / и т. д. / sudoers
Передача переменных среды
Всякий раз, когда вы запускаете команду от имени пользователя root, текущие переменные среды не передаются пользователю root. Это довольно болезненно, если ваш рабочий процесс сильно зависит от переменных среды или вы передаете настройки прокси через «export http_proxy =»… »», вам нужно добавить флаг «-E» с помощью sudo.
sudo -E
Редактирование файла
Когда вы устанавливаете sudo, есть также дополнительный инструмент под названием «sudoedit». Это позволит редактировать определенный файл как пользователь root.
Это лучший и более безопасный способ разрешить определенному пользователю или группе редактировать определенный файл, требующий привилегий root. С sudoedit пользователю не нужно иметь доступ к sudo.
Это также можно сделать, добавив новую запись группы в файл sudoers.
% newsudo ALL =Однако в приведенном выше сценарии пользователь фиксируется только с помощью определенного редактора. Sudoedit позволяет гибко использовать любой редактор по выбору пользователя для выполнения работы.
% newsudo ALL = sudoedit / путь / к / файлуПопробуйте отредактировать файл, для которого требуется доступ sudo.
sudoedit / etc / sudoers
Примечание: Sudoedit эквивалентен команде «sudo -e». Однако это лучший путь, поскольку он не требует доступа к sudo.
Последние мысли
его краткое руководство демонстрирует лишь небольшую часть того, что вы можете делать с помощью sudo. Я настоятельно рекомендую проверить справочную страницу sudo.
человек судо
Ваше здоровье!