Фон
Я знаю разницу между su -
, sudo su -
и sudo <command>
:
su -
- переключает пользователя в root, требует пароль rootsudo su -
- переключает пользователя в root, требует только пароль текущего пользователяsudo <command>
- предоставляет root-доступ только для определенной команды; требуется только пароль текущего пользователя
Мой вопрос о том, является ли использование sudo su -
безопасным способом в производственной среде.
Некоторые мысли:
Похоже, разрешение
sudo su -
создает угрозу безопасности, поскольку доступ к учетной записи root зависит от паролей отдельных пользователей. Конечно, это может быть смягчено путем применения строгой политики паролей. Я не думаю, чтоsu -
это лучше, так как это потребует от администратора предоставить действительный пароль root.Разрешение пользователям полностью переключаться на корневую учетную запись затрудняет отслеживание того, кто вносит изменения в систему. Я видел случаи на моей повседневной работе, когда нескольким пользователям предоставляется
sudo su -
доступ. Первое, что делают пользователи при входе в систему, это запускаютsudo su -
перед началом работы. Затем однажды что-то ломается, и нет возможности проследить, кто бежалrm -rf *
в неправильном каталоге.
Вопросов
Учитывая вышеупомянутые проблемы, действительно ли это хорошая идея, чтобы позволить пользователям использовать sudo su -
или даже su -
вообще?
Существуют ли какие-либо причины, по которым администратор настраивал учетные записи пользователей вместо sudo su -
или без (кроме лени)?su -
sudo <command>
Примечание. Я игнорирую случай, когда пользователь работает sudo su -
или su -
администратор должен внести изменения в систему, когда прямой доступ ssh был отключен для пользователя root.
sudo bash
просто, чтобы избежать некоторых накладных расходов при входе в систему. Однако, если подумать, этого может избежать не так много, как я себе представляю.
sudo -s
.
sudo su -
довольно глупо, так какsudo -i
делает по существу то же самое, с меньшим количеством нажатий клавиш.