Фон
Я знаю разницу между 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делает по существу то же самое, с меньшим количеством нажатий клавиш.