Пользователь root может иметь все привилегии. Но обычный пользователь может получить доступ как root с помощью команды su или sudo и своего собственного пароля.
Так в чем же разница?
Пользователь root может иметь все привилегии. Но обычный пользователь может получить доступ как root с помощью команды su или sudo и своего собственного пароля.
Так в чем же разница?
su
(и sudo) традиционно требуется пароль root . Однако вы можете настроить sudo
чтобы обычные пользователи могли получить права root с помощью своего собственного пароля, изменив /etc/sudoers
(как root, предпочтительно с помощью visudo
).
Современные дистрибутивы Linux предварительно настраивают первого пользователя, который сможет использовать sudo со своим собственным паролем. Это предотвращает случайное неправильное конфигурирование системы пользователем и позволяет ему получить полный контроль без необходимости использования отдельного пароля root.
Обычный пользователь может получить root-доступ с помощью sudo только в том случае, если он находится в файле sudoers (это означает, что ему достаточно доверия, чтобы получить права администратора по требованию). В производственной среде почти никто не должен быть жертвой.
Команда su
дает ему временное имя для изменения любого пользователя в системе и запускает множество программ с его / ее / ее разрешениями. Это не должно быть корнем. Если пользователь, выполняющий su
, не является пользователем root, он должен ввести пароль пользователя, которому он хочет получить личность.
Команда sudo
предназначена для выполнения одной команды с разрешениями любого пользователя. Это не должно быть корнем тоже. Команда очень настраиваема и обеспечивает некоторый точный контроль доступа. Ввод собственного пароля не является обязательным и настраивается. Некоторый дистрибутив позволяет первому пользователю системы выполнить с sudo
все.
Чтобы добавить к ответам выше,
su user1
с паролем пользователя будет переключать ваши учетные данные на user1 до тех пор, пока вы не введете команду exit, просто su
по умолчанию примет root.
sudo
как упоминалось в других ответах, может быть предоставлено доверенным пользователям и ограниченному набору команд. кроме того, sudo
может быть настроен для регистрации выполненных команд. Это хороший способ отследить злоупотребление привилегиями.
Не все обычные пользователи могут использовать sudo, они должны быть в файле sudoers, и вы можете контролировать, какие команды или типы команд может выполнять пользователь. Кроме того, только определенные пользователи могут использовать su для переключения на пользователя root. Обычно вы имеете права sudo только для ограниченного набора команд и полные права su в течение ограниченного периода времени.
Только пользователи с привилегиями суперпользователя могут sudo или su, обычные пользователи не могут. Это настраивается в /etc /sudoers, который всегда должен редактироваться с помощью visudo.
Преимущества этой системы:
root
это будет первое имя для входа в систему).