Почему Ubuntu имеет отключенную корневую учетную запись?

Ubuntu отключает корневой вход в систему из "соображений безопасности". Однако мне кажется, что это не помогает с безопасностью вообще.

Если злоумышленнику удается получить Ваш пароль входа в систему для Ubuntu, то у него также есть пароль суперпользователя, так как это совпадает с паролем входа в систему.

Однако, если пароль root будет требоваться, то просто наличие входа в систему не поможет злоумышленнику очень - правильно не так ли?

Так в основном то, что я хочу знать: Почему Ubuntu принимала решение отключить пароль root? Каковы соображения безопасности?

Не отвечайте согласно тому, что Вы "думаете", была причина - я ищу ответ из официальных источников, или связанный с ними.

57
задан 3 December 2015 в 10:18

2 ответа

Mitch отправил хорошую ссылку в комментарии: Почему это плохо для входа в систему как корень? и сайт Debian обладает основными преимуществами, перечисленными в их Wiki:

Почему sudo?

Используя sudo лучше (более безопасно), чем открытие сессии, как поддерживают много причин, включая:

  • Никто не должен знать пароль root (sudo подсказки для пароля текущего пользователя). Дополнительные полномочия можно предоставить отдельным пользователям временно и затем устранить без потребности в изменении пароля.

  • Легко выполнить только команды, которые требуют специальных полномочий через sudo; остальная часть времени, Вы работаете непривилегированным пользователем, который уменьшает ущерб, который могут нанести ошибки.

  • Аудит/вход: когда a sudo команда выполняется, исходное имя пользователя и команда зарегистрированы.

По причинам выше, переключаясь на корневое использование sudo -i (или sudo su) обычно удерживается от использования, потому что это отменяет вышеупомянутые функции.

Относительно Ubuntu преимущества и недостатки перечислены на нашей Wiki:

Преимущества использования sudo

Существует много преимуществ для Ubuntu, оставляя корневые логины отключенными по умолчанию, включая:

  • Установщик имеет меньше вопросов спросить. Пользователи не должны помнить дополнительный пароль за случайное использование (т.е. пароль root). Если бы они сделали, то они, вероятно, забыли бы это (или записали бы его небезопасно, позволив любому легко расколоться в их систему).

  • Это избегает, "Я могу сделать что-либо" интерактивный вход в систему по умолчанию. Вам предложат пароль, прежде чем существенные изменения смогут произойти, который должен заставить Вас думать о последствиях того, что Вы делаете.

  • sudo добавляет запись в журнале выполненной команды (команд) (в /var/log/auth.log). Если Вы портите, можно возвратиться и видеть, какие команды были выполнены.

  • На сервере каждый взломщик, пробующий к "в лоб", их путь в будет знать, что имеет учетную запись, названную корнем, и попробует это сначала. То, что они не знают, - каковы имена пользователей Ваших других пользователей. Так как корневой пароль учетной записи заблокирован, это нападение становится чрезвычайно бессмысленным, так как нет никакого пароля, чтобы взломать или предположить во-первых.

  • Позволяет легкую передачу для прав администратора путем добавления и удаления пользователей из групп. При использовании единственного пароля root единственный путь к de-authorize пользователям состоит в том, чтобы изменить пароль root.
  • sudo может быть установкой с намного более мелкомодульной политикой безопасности. Корневой пароль учетной записи не должен быть совместно использован со всеми, кто должен выполнить некоторый тип задачи (задач) администрирования в системе (см. предыдущий маркер).

  • Аутентификация автоматически истекает после короткого времени (который может быть установлен на так мало как желаемый или 0); таким образом, если Вы убежите от терминала после выполнения команд как корень с помощью sudo, то Вы не будете оставлять корневой терминал открытым неограниченно долго.

Оборотные стороны использования sudo

Хотя для рабочих столов преимущества использования sudo являются большими, существуют возможные проблемы, которые должны быть отмечены:

  • Перенаправление вывода команд, выполненных с sudo, требует другого подхода. Например, рассмотрите sudo ls > /root/somefile не будет работать, так как это - оболочка, которая пытается записать в тот файл. Можно использовать ls | sudo tee -a /root/somefile добавлять, или ls | sudo tee /root/somefile перезаписывать содержание. Вы могли также передать целую команду процессу оболочки, выполненному под sudo, чтобы записать файл в с корневыми полномочиями, такой как sudo sh -c "ls > /root/somefile".

  • В большом количестве офисных сред ЕДИНСТВЕННЫЙ локальный пользователь в системе является корнем. Все другие пользователи импортируются с помощью методов NSS, таких как nss-ldap. Чтобы установить рабочую станцию или зафиксировать ее, в случае отказа сети, где nss-ldap повреждается, корень требуется. Это имеет тенденцию оставлять систему неприменимой, если не взломано. Дополнительный локальный пользователь или включенный пароль root необходимы здесь. Учетная запись локального пользователя должна иметь свой $HOME на локальном диске, не на NFS (или любая другая сетевая файловая система), и .profile/.bashrc, который не ссылается ни на какие файлы на NFS, монтируется. Это обычно имеет место для корня, но при добавлении некорневой спасательной учетной записи, необходимо будет принять эти меры предосторожности вручную. Однако преимущество использования локального пользователя с sudo состоит в том, что команды могут быть легко прослежены, как упомянуто в преимуществах выше.

И у нас всегда был он (от очень 1-го выпуска).


Самая старая ссылка, которую я нашел, говорит приблизительно 4,10, который имеет "sudo"

SHUTTLEWORTH ЗАПУСКАЕТ ОСНОВАННУЮ НА DEBIAN UBUNTU LINUX

... Находящаяся в Debian Ubuntu Linux включает Gnome 2.8, ядро 2.6.8.1, OpenOffice.org 1.1.2 и идет с основанным на тексте, но легким, процессом установки. Ubuntu отключила пользователя root, предпочитающего использовать sudo во многом как MAC OSX, делает...

81
ответ дан 22 November 2019 в 23:42

Я полагаю, что то, что написано на странице справки , достаточно ясно и достаточно цели.

Ubuntu «для всех» и хотя, если Вы достаточно хороши, Вы не должны внедрять доступ, чтобы повредить Ваш компьютер, одновременно Вам не нужен он почти вообще (и Вы знаете, как легко позволить его).
, Таким образом, проблема не с людьми, которые «достаточно хороши», а для всех других, которые могут прийти к Linux от другого мира вычислений, и первое воздействие с Ubuntu (и мы - многие).

, Если Вы не эксперт и не знаете точно, что root и как правильно обращаться с ним, Вы ни хочет, ни должен иметь его, позволил (и риск, например, сделать графический логин с ним).
намного лучше изучить, как сделать вещи на безопасной стороне и затем идти дальше к тяжелее и более опасный путь, чем начало непосредственно с твердым путем и затем повредить Вашу установку/автоматизированное рабочее место, будьте расстроены и возможно неспособные возвратить полностью рабочую систему.
В целом, чтобы предотвратить намного лучше, чем вылечить.

6
ответ дан 22 November 2019 в 23:42

Другие вопросы по тегам:

Похожие вопросы: