Зачем регистрироваться как root?

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

Он может быть широко известен специалистам Linux, но я действительно не знаю, почему. Я помню, что всегда работал под управлением root, когда я впервые попробовал Linux несколько лет назад (Redhat и Mandrake) и не помню, чтобы в них возникали проблемы.

На самом деле есть некоторые дистрибутивы с ярко-красным фоном с предупреждающими знаками по всему миру в качестве обоев для пользователя root (SuSe?). Я по-прежнему использую учетную запись «Администратор» для регулярного использования в моей установке Windows и никогда не сталкивался с такими проблемами.

1
задан 13 September 2017 в 20:04

19 ответов

Только одно слово: security.

Вы зарегистрированы как root = все приложения запущены с привилегиями root - каждая уязвимость в Firefox, Flash, OpenOffice и т. д. теперь может уничтожить вашу систему, потому что возможно вирусы теперь имеют доступ повсюду. Да, для Ubuntu / Linux существует только несколько вирусов, но это также из-за хорошей безопасности и непривилегированного пользователя по умолчанию. Речь идет не только о вирусах - небольшая ошибка в приложении может стереть некоторые системные файлы или ... Когда вы зарегистрированы как пользователь root, вы можете сделать все - система не спросит! Вы хотите отформатировать этот диск? Хорошо, всего один клик, и все сделано, потому что вы root, и вы знаете, что делаете ...
71
ответ дан 26 May 2018 в 00:07
  • 1
    Файлы данных, принадлежащие моей учетной записи пользователя, являются гораздо более ценными для меня , чем системными файлами. Все приведенные выше примеры по-прежнему являются проблемами при входе в систему как пользователь, за исключением того, что сохраняются легко заменяемые системные файлы. – kbeta 30 April 2013 в 02:02
  • 2
    @kbeta, вы предполагаете, что работаете на компьютере, где единственными ценностями являются ваши данные и системные файлы. На самом деле linux часто используется в системе, где многие пользователи используют систему одновременно. В этом случае стабильность системы (и, следовательно, системных файлов) гораздо более ценна, и важны другие пользовательские файлы. – Eric Pauley 28 February 2017 в 19:11
  • 3
    @kbeta Достаточно честный, но поврежденная конфигурация системы также может представлять риск для ваших данных ... и, конечно, наличие резервных копий было бы хорошей идеей, существует ли ваша система в настоящее время или нет. Реализация текущего резервного копирования с планом аварийного восстановления будет еще лучше. – Pryftan 22 February 2018 в 00:14

Выполняется как root, потому что:

Глупость: ничто не мешает вам делать что-то глупое. Если вы попытаетесь изменить систему в любом случае, что может быть вредным, вам нужно сделать sudo, что в значительной степени гарантирует паузу, когда вы вводите пароль, чтобы понять, что вы собираетесь сделать возможное крупное / дорогостоящее изменение. Безопасность. Об этом уже упоминалось уже несколько раз в этом вопросе, но в основном это одно и то же, сложнее взломать, если вы не знаете учетную запись пользователя администратора. root означает, что у вас уже есть одна половина рабочего набора учетных данных администратора. Вам это действительно не нужно: если вам нужно запустить несколько команд с правами root, и вас раздражает необходимость ввода пароля несколько раз, когда sudo истек, все, что вам нужно сделать, это sudo -i, и теперь вы root. Хотите запустить некоторые команды с помощью труб? Затем используйте sudo sh -c "comand1 | command2". Вы всегда можете использовать его в консоли восстановления: консоль восстановления позволяет вам попытаться восстановить что-то глупое или устранить проблему, вызванную приложением (которое вы все еще должны запускать как sudo :)) Ubuntu не имеет пароля для учетной записи root в этом случае, но вы можете искать в Интернете для ее изменения, это сделает труднее для всех, у кого есть физический доступ к вашему ящику, чтобы иметь возможность причинить вред.

Причина, по которой вы не могли найти информацию о том, почему это плохо, потому что, ну, есть слишком много данных в Интернете :) и что многие люди, которые долгое время использовали Linux время думаю подобный сделав. Этот способ мышления о корневом аккаунте довольно новый (возможно, десятилетие?), И многие люди все еще раздражаются тем, что нужно использовать sudo. Особенно, если они работают на сервере, что означает, что они вошли с намерением внести изменения в систему. Вероятно, из предыдущих неудачных опытов и стандартов безопасности большинство системных администраторов знают лучше, но им все равно не нравится:).

45
ответ дан 26 May 2018 в 00:07
  • 1
    может быть, десять лет? Гораздо намного дольше, чем когда вы написали это. Даже без sudo можно не упомянуть, например. группа колес (например). Разделение привилегий всегда важно и всегда было важно и всегда будет иметь важное значение. Otoh не так много людей использовали ОС на базе Unix, которые много лет назад, и многие из тех, кто это делает, привыкли всегда быть администратором. – Pryftan 22 February 2018 в 00:44

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

На рабочем столе редко используется учетная запись root. Фактически, Ubuntu отправляется с отключенным доступом root. Все изменения, требующие привилегии суперпользователя, выполняются через sudo и его графические символы gksudo и kdesudo. Учитывая, что легко установить пароль root, однако, почему люди этого не делают?

Одна из причин заключается в том, что он дает вам дополнительный уровень безопасности. Если вы запускаете программу как root, а уязвимость безопасности используется, злоумышленник имеет доступ ко всем данным и может напрямую управлять оборудованием. Например, он может установить троянец или ключ-регистратор в ваше ядро. На практике, однако, атака может нанести большой урон даже без привилегий суперпользователя. В конце концов, все пользовательские данные, включая документы и сохраненные пароли, доступны без корневого доступа.

Более допустимая точка в однопользовательской системе заключается в том, что пользователю не удается случайно отключить систему , Если пользователь непреднамеренно выдает команду, которая удаляет все файлы, они все равно смогут загружать систему, даже если данные будут потеряны.

Кроме того, большинство приложений, ориентированных на пользователей (X11), сегодня построены на предположение, что они выполняются как обычная учетная запись пользователя и без прав администратора. Таким образом, некоторые программы могут ошибочно работать при запуске как root.

В многопользовательской системе с неграфическим доступом к оболочке многие из этих причин не применяются. Тем не менее, Ubuntu по-прежнему по умолчанию по умолчанию имеет недоступную учетную запись root. Во-первых, существует реальная разница между получением доступа к учетной записи пользователя (с правами sudo) через отверстие безопасности и получением доступа к root, так как в первом случае сбой других пользователей потребует запуска sudo и будет по-прежнему запрашивать пароль учетной записи в качестве дополнительного шага безопасности. Для другого полезно выполнить многие административные задачи из учетной записи пользователя и только вызвать sudo, когда привилегии суперпользователя абсолютно необходимы. Таким образом, при установке программы из источника рекомендуется создать исходный - запуск configure и make - внутри каталога пользователя и только с помощью sudo make install на последнем шаге. Опять же, это затрудняет съемку себя (и других пользователей многопользовательской системы) в ноге, и это уменьшает вероятность создания скриптов, разрушающих систему. Таким образом, даже на сервере это хороший совет придерживаться администрирования Ubuntu на основе sudo.

36
ответ дан 26 May 2018 в 00:07
  • 1
    he will still be able to boot the system, even if the data will be lost. - В чем смысл этого? Если мои данные потеряны, мои данные потеряны и все. Системное программное обеспечение Linux можно переустановить, если оно удалено, почему я должен заботиться о потере данных в таких руководствах? С другой стороны, потеря данных в ~ плоха. И sudo не защищает меня от этого. – Blauhirn 9 March 2016 в 04:52
  • 2
    Другая хорошая практика заключается в том, чтобы сохранить важные данные. Если вы уничтожили домашний каталог, вы все равно можете загрузить и просто скопировать файлы из резервной копии. Или, допустим, у вас есть небольшой ноутбук для путешествий. У него могут быть фото, путевые заметки, расписание поездов, но ничего не слишком важно. Если вы уничтожите пользовательские файлы, вы все равно можете загрузить систему и проверить свой рейс или узнать, какой автобус взять. – Richlv 7 January 2018 в 04:21
  • 3
    Резервные копии @Blauhirn. И есть шанс на выздоровление, даже если он выглядит мрачным. – Pryftan 22 February 2018 в 00:15

Одна из причин не запускать как root, которая до сих пор не была идентифицирована другими ответами, - это трассируемость. На машинах, которые в первую очередь работают на однопользовательском компьютере (на вашем рабочем столе или ноутбуке), вероятно, меньше всего, но на серверных машинах, если кто-то зарегистрирован как root, вы не знаете, кто виноват в предпринятых действиях. Поэтому большинство профессиональных организаций с несколькими системами и несколькими администраторами, которым необходимы привилегии root, требуют от пользователей входа в систему, используя свой собственный идентификатор пользователя (и пароль), а затем использовать sudo или подобные программы для работы с привилегиями root, когда это необходимо.

В противном случае основными причинами не запускать с правами root являются:

Свести к минимуму риск повреждения от несчастных случаев. Если вы запустили rm -fr / home/me/my-subdir в качестве пользователя root, то вы просто резко устранили все важное значение своей машины из-за этого пространства после (первой) косой черты - потому что материал, который идет первым, - это материал, который был добавлен первым - маленькие вещи, такие как ядро, каталог /bin и /etc. Unix расстраивается, если вы их потеряете. Минимизируйте риск повреждения от вредоносных внешних сайтов. Если вы просматриваете root, вы более уязвимы для загрузки вредоносных материалов.

Я использую MacOS X больше, чем Ubuntu, но там root отключен по умолчанию, и он все еще находится на моей машине. Я регулярно обновляю ядро ​​и другие подобные операции - используя sudo (за кулисами). Подобные методы применимы к Linux вообще.

В принципе, вы должны использовать всемогущие привилегии root для сокращенных периодов работы, чтобы избежать риска ошибок.

30
ответ дан 26 May 2018 в 00:07
  • 1
    Дело не в том, чтобы обвинять кого-то, а в том, что он может выяснить , почему кто-то внес изменения. – jippie 18 April 2012 в 02:18
  • 2
    @jippie: Я имею в виду «вину» таким же образом, что и VCS отслеживает, кто сделал то, чтобы правильный человек был отнесен к ответственности за изменение, за хорошее или плохое, и одно из имен для команды, выполняющей это отслеживание «виноват». Это дает вам возможность поговорить, чтобы узнать, почему что-то произошло. Это не всегда «ошибка» (хотя удручающе часто, причина, по которой нужно знать, - это то, что что-то работает не так, как ожидалось, и нужно знать, почему нет). Таким образом, речь идет о подотчетности и удобочитаемости, а не о том, что нужно для того, чтобы лишить человека того, что они сделали. – Jonathan Leffler 18 April 2012 в 02:44
  • 3
    В Ubuntu команды, подобные rm -fr / home/me/my-subdir, на самом деле не пытаются рекурсивно удалить /, потому что / обрабатывается специально для защиты от таких ошибок. Подробнее см. Документацию параметров --preserve-root и --no-preserve-root в man rm . Но принцип звучит: существуют односимвольные опечатки do , которые приводят к rm удалению всего. Например, если вы хотите удалить все в текущем каталоге, запустив rm -r *, но вы случайно положили / до *, это было бы плохо. – Eliah Kagan 3 May 2015 в 20:18
  • 4
    @EliahKagan Но все же, если вам нужно ... chown -R nobody:nobody ../ от say / etc защитит вас? Если вы будете делать это на / etc, это вызовет у вас мир боли. Аналогично это .* при рекурсивном запуске команды. – Pryftan 22 February 2018 в 00:48

ТЛ;др: делать вещи, как корень только тогда, когда нужно. [Ф1] делает это довольно легко. Если вы включите корень Логинов, вы все равно можете следовать этому правилу, вы просто должны быть осторожны, чтобы сделать это. Хотя позволяя входить в систему как root, это на самом деле не небезопасно, если все сделано правильно, вам не нужно, чтобы входить в систему как root, потому что у вас есть [Ф2].

есть действительно два взаимосвязанных вопросов.

почему это плохо, чтобы войти в систему в качестве корневого для повседневного использования компьютера (веб-серфинг, Электронная почта, обработка текста, игры и т. д.)? Почему в Ubuntu по умолчанию вообще отключить вход под root и с помощью [Ф3] и polkit на позволяют администраторам выполнять определенные команды, как корень?

почему бы не запустить все root, все время?

большинство других ответов покрыть это. Это сводится к:

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

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

[dиода d17]конечно, как корень, существуют дополнительные способы, чтобы случайно не уничтожить те же данные. Например, можно указать неправильно [Ф4] аргумент команды [ф5] и написать исходные данные, за файлы (что делает их намного, намного сложнее восстановить, чем если бы вы просто удалили их).[!dиода d17]

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

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

почему не дают возможность войти в систему как root?

мысль о том, что возможность входа в систему как пользователь root является небезопасной, является мифом. Некоторые системы имеют учетную запись root по умолчанию включен; другие системы используют [ф7] по умолчанию, и некоторые из них настроены оба.

почему это плохо, чтобы войти в систему в качестве корневого для повседневного пользования компьютером (веб-серфинг, Электронная почта, обработка текста, игры и т. д.)? других уважаемых операционки, что этого включают в rhel, CentOS и Fedora. почему в Ubuntu по умолчанию вообще отключить вход под root и с помощью [Ф3] и polkit на позволяют администраторам выполнять определенные команды, как корень?

это не объективно неправильно, чтобы иметь систему, при которой корневой учетной записи, при условии, что

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

часто новички спрашивают, как включить учетную запись root в Ubuntu. Мы не должны скрывать эту информацию от них, но обычно, когда люди спрашивают это потому, что они находятся под ошибочным впечатлением, что они плохо чтобы включить учетную запись root. при условии, что включение учетной записи root также легко становятся самодовольными и выполнять действия под root, которые не требуют привилегий суперпользователя. Но это не значит, включение учетной записи root является самой небезопасной.

[ф8] поощряет и сама по себе пользователям выполнять команды как root только тогда, когда им нужно. Чтобы запустить команду как root, введите [ф9], пробел, а затем команду. Это очень удобно, и многие пользователи всех уровней предпочитают этот подход.

короче, вам не надо включить вход под root, потому что у вас есть [ф10]. Но так долго, как вы используете его только для административных задач, которые в ней нуждаются, это примерно одинаково безопасно, чтобы включить и войти в систему как root, так долго, как это только таким образом:

других уважаемых операционки, что этого включают в rhel, CentOS и Fedora. с [Ф3][!команда д8], при входе в систему с другой учетной записью.

тем не менее, существенной дополнительной безопасности риски возникают, если Вы зарегистрировались как root одним из следующих способов:

с
[Ф3][!команда д8], при входе в систему с другой учетной записью. удаленно. В [ф14] счета могут фактически сделать что-нибудь, и он имеет то же имя на практически любой Unix-подобной системе. Войдя в систему как root через [ф15] или других удаленных механизмов, или даже настройка удаленного обслуживания, чтобы разрешить его, вы сделаете ее намного проще для злоумышленников, в том числе автоматизированных скриптов и программ, работающих на бот-сетей, чтобы получить доступ с помощью грубой силы, атака по словарю (и, возможно, некоторых ошибок). Возможно, риск не очень высок, если вы позволите ключ, а не пароль root от входа.

по умолчанию в Ubuntu, ни графический вход под root, ни удаленного входа в систему через SSH не включен, в этих способов. То есть, даже если вы включите корень входа, он до сих пор включен только такими способами, которые достаточно безопасной.

удаленно. В [ф14] счета могут фактически сделать что-нибудь, и он имеет то же имя на практически любой Unix-подобной системе. Войдя в систему как root через [ф15] или других удаленных механизмов, или даже настройка удаленного обслуживания, чтобы разрешить его, вы сделаете ее намного проще для злоумышленников, в том числе автоматизированных скриптов и программ, работающих на бот-сетей, чтобы получить доступ с помощью грубой силы, атака по словарю (и, возможно, некоторых ошибок). Возможно, риск не очень высок, если вы позволите ключ, а не пароль root от входа. хотя по умолчанию должен защищать вас, я думаю, это все еще хорошая идея, чтобы проверить вашу конфигурацию SSH, если вы собираетесь включить учетную запись root. И если вы используете другие сервисы, которые предоставляют удаленного входа в систему, такие как FTP, вы должны проверить их.

в заключение:

[кадрах, снятых D80] хотя по умолчанию должен защищать тебя, я думаю, это все еще хорошая идея, чтобы проверить вашу конфигурацию SSH, если вы собираетесь включить учетную запись root. И если вы используете другие сервисы, которые предоставляют удаленного входа в систему, такие как FTP, вы должны проверить их. если вы понимаете, как работает Рут и вреде злоупотребление, включение учетной записи root не является очень проблематичным с точки зрения безопасности. Но если вы понимаете, что, вы знаете, что вы почти наверняка не нужно, чтобы включить учетную запись root. [!кадрах, снятых D80]

для получения дополнительной информации о корень и [зг19], включая некоторые дополнительные преимущества [20 фунтов], что я не здесь, я настоятельно рекомендую RootSudo в Ubuntu помочь Вики.

20
ответ дан 26 May 2018 в 00:07
  • 1
    «Если вы единственный человек, который использует ваш компьютер, вред, который вы можете сделать только как root, на самом деле не может быть выше, чем вред, который вы можете причинить своим обычным пользовательским привилегиям. Но это по-прежнему не является основанием для расширения вашего риска. «Не говоря уже о том, что это ставит вас в привычку ... тогда вы идете в другую систему и что происходит? То же самое с абсурдной идеей заставить людей привыкнуть к rm -i с помощью псевдонима оболочки. Вы идете в систему, которая этого не имеет, а затем что? Ребенок, сидящий на ошибках, подобный этому, никогда не является хорошей идеей, когда вы считаете, что люди - очень много привычек. – Pryftan 22 February 2018 в 00:51

Корневая учетная запись отключена по умолчанию - это значит, что она существует, но она не используется (кроме режима восстановления). Это означает, что злоумышленник знает вашу учетную запись root, но не мог использовать его, даже если у него / нее был пароль root. Таким образом, злоумышленник должен угадать как имя пользователя с правами администратора, так и пароль пользователя (что намного сложнее, чем просто пытаться выработать пароль root). В XP, если у вас установлена ​​консоль восстановления, любой, кто физический доступ к вашему ящику может загрузиться в него (RC) - пароль не требуется. То же, что и в режиме восстановления в Ubuntu.

В Ubuntu, когда говорят, что root отключен, на самом деле это означает, что учетная запись заблокирована. Учетная запись заблокирована путем изменения пароля до значения, которое не соответствует возможному зашифрованному значению. Это эффективно предотвращает возможность входа в систему с правами root, поскольку невозможно было ввести пароль. Так как еще есть время, когда необходим корневой доступ - ядро ​​Ubuntu было изменено, чтобы разрешить корневой локальный вход только в однопользовательском режиме.

Также см. Эту Корневую учетную запись

13
ответ дан 26 May 2018 в 00:07
  • 1
    Um. Не обижайтесь, но вы можете прочитать заголовок вопроса, а затем снова прочитать детали. – Mussnoon 4 December 2010 в 21:24
  • 2
    Это очень полезно - и имеет отношение к вопросу. Это связано с последствиями безопасности для включения учетной записи, что является предварительным условием для запуска с правами root. – Stefano Palazzo♦ 5 December 2010 в 00:24
  • 3
    @Stefano Palazzo: Хотя предоставленная информация может быть полезна, я искренне не могу видеть, в какой части лежит ответ на то, что мне нужно знать. Я читал его несколько раз. – Mussnoon 5 December 2010 в 08:32
  • 4
    Не мешает людям входить в root. – Chad 19 September 2016 в 04:49

Его как вооружение маленького ребенка с AK47, в то время как он может с удовольствием играть с его пейнтбольным оружием. ;)

Я имею в виду, что это неправильно, потому что у вас и ваших приложений будет больше привилегий, чем они нужны, и тогда, когда что-то может и когда-нибудь пойдет не так: (

12
ответ дан 26 May 2018 в 00:07
  • 1
    более умная аналогия. (^_^) – kit.yang 5 December 2010 в 13:36
  • 2
    Это совершенно неуместная аналогия. Ребенок с AK47 может убить себя и других людей. Unix-пользователь с правами доступа root может в большинстве случаев временно отключить свою систему. (Всегда можно переустановить операцию os и восстановления). – kbeta 30 April 2013 в 01:54
  • 3
    @kbeta. Вы правы, моя аналогия немного несоразмерна и преувеличена. пожалуйста, двигайтесь дальше. – omeid 12 May 2013 в 15:49
  • 4
    @kbeta аналогична. риск не является неработоспособной системой, а данными и потерей конфиденциальности. пользователь root может удалить данные. используйте свою фантазию, чтобы связать убийство и потерю данных. – n611x007 9 January 2016 в 23:12

Очень хороший вопрос ... Позвольте мне ответить на это с практической точки зрения:

Когда я начал использовать Linux, который более 10 лет назад, основные дистрибутивы не рекламировали использование не- как и сегодня. Поскольку я был использован для Windows, я также не видел смысла использовать ограниченную учетную запись пользователя. В частности, потому, что мне приходилось очень часто вводить «su», тогда судо не было тогда популярным. ;-) Поэтому я всегда входил в систему как root, потому что у меня было много технического обслуживания, чтобы настроить мою систему. Но предположим, что любая новая установленная система быстро стала нестабильной.

Одна конкретная проблема, например: у меня не было столько зарезервированного для Linux жесткого диска, так что это случилось со мной несколько раз, что у меня было 0 байты, оставшиеся на моем разделе. Возможно, я не совсем точен, потому что я не знаю точного механизма, но когда вы заполняете диск с учетной записью, отличной от root, всегда осталось несколько килобайт. Но если у вас действительно осталось 0 байт, ваша система делает странные ошибки, и вы можете получить некоторые исправления в вашей системе, потому что в фоновом режиме работает много системного программного обеспечения ...

Другое дело: то, что разделение между корневым и не-root поддерживает вашу систему хорошо организованной. Как root-пользователь, у вас может возникнуть соблазн не чистить ваши новые приложения, которые оставят вас с грязной и жесткой поддерживаемой системой.

Но хорошо: современные дистрибутивы выполняют большинство задач администрирования для вас, поэтому редко вам приходится возиться в кишки вашей Linux-системы с учетной записью root. Ввод пароля время от времени является достаточным, остальные выполняются скриптами дистрибьютора.

Но я сомневаюсь, что у вас не было проблем в вашей системе Windows с этим, если вы использовали 95 или 98. ( По крайней мере, у меня были проблемы с этим ...) Из-за отсутствия четкого разделения между администратором и обычными пользовательскими «традиционными» приложениями Windows предполагают, что они могут делать что угодно. установите Spyware, если они захотят, даже не сообщая вам. Microsoft занималась этой проблемой при выпуске Vista. (Эффективно реализуя механизм sudo.) Таким образом, люди получили очень раздражающие диалоги, в которых говорилось: «Вы не можете этого сделать». Для некоторых несовместимых с Vista программ вам понадобились грязные хаки для его установки, даже как администратор ...

11
ответ дан 26 May 2018 в 00:07
  • 1
    «Возможно, я не совсем точен, потому что я не знаю точного механизма, но когда вы заполняете диск с учетной записью, отличной от root, всегда осталось несколько килобайт». Возможно, вы ссылаетесь на каталог lost + found? Если это так, вы можете как администратор указать, сколько зарезервировать. Я хочу сказать, что стандартное значение по умолчанию - 5%, но я могу ошибаться и его можно изменить. Это очень полезно, хотя и редко требуется. По-видимому, здесь есть больше (я помню это из моих лет использования): unix.stackexchange.com/questions/18154/… – Pryftan 22 February 2018 в 01:00
  • 2
    По-видимому, это не ограничивается ext файловыми системами: unix.stackexchange.com/questions/7950/… – Philip 22 February 2018 в 18:00
  • 3
    Ага. Я знал это :) Но спасибо за это. – Pryftan 23 February 2018 в 20:53

Есть много аспектов этого подхода. Некоторые из них: Корень очень мощный. В Unix и Unix-подобных системах привилегии системного администрирования - все или ничего. У пользователя либо есть root-доступ, либо нет, а root-доступ подразумевает полный контроль над машиной. Если рассматриваемая машина используется более чем одним человеком или root имеет доступ к другим системам или пользовательским файлам, более приемлемым является предоставление некоторым пользователям привилегий с частичным root.

Корень является мощным . sudo регистрирует каждую команду, выполняемую через sudo. Имея отчет о том, что делается с помощью sudo, мы можем диагностировать проблемы с отдельными системами / процессами и проблемами общей конфигурации, а также помогать нам выявлять необходимые улучшения.

Корень очень мощный. [!d2 ] Через свой файл конфигурации sudo может предоставить пользователю root доступ для определенного набора команд. Это также позволяет избежать эффекта «всего или ничего», позволяя нам предоставлять отдельным пользователям больше контроля над своими машинами и помогать себе в решении общих проблем.

вот хорошая статья: http: // cf. stanford.edu/policy/root

10
ответ дан 26 May 2018 в 00:07
  • 1
    Но когда у вас есть полное sudo, вы можете sudo su и скрыть свои действия. – Wilhelm Erasmus 28 November 2015 в 02:47
rm /*

Допустим, вы очистили административную зону. Вы устали от пароля, поэтому вы sudo su. Вы отвлекаетесь только на секунду и забудете cd к /. Тогда вы rm *. Я сделал это. Вы можете вернуть все, но это PITA. О, и он тоже спустился в /media!

8
ответ дан 26 May 2018 в 00:07
  • 1
    Мы всегда жалуемся на то, что наш компьютер слишком медленный, но он как бы оптимизирован для быстрого запуска rm. – jippie 18 April 2012 в 02:37
  • 2
    @jippie Поскольку RM просто уничтожает ссылку inode на файл. Не требуется много времени, чтобы удалить ссылку и отметить пробел как «бесплатно». – Kaz Wolfe 21 January 2014 в 02:30
  • 3
    @jippie, он должен иметь сборку за 10 секунд обратного отсчета – HopefullyHelpful 4 March 2018 в 15:26

Почему у вас нет корневого входа?

Пока вы можете создать пароль для учетной записи суперпользователя, позволяющий войти в систему под именем root, стоит упомянуть, что это не способ Ubuntu делать вещи , Ubuntu специально выбрала не для того, чтобы по умолчанию получить пароль root и пароль по умолчанию. Вместо этого установка по умолчанию Ubuntu будет использовать sudo.

Sudo - это альтернатива предоставлению людям пароля root для выполнения обязанностей суперпользователя. При установке по умолчанию Ubuntu лицу, установившему ОС, предоставляется разрешение «sudo» по умолчанию.

Любой, у кого есть разрешение «sudo», может выполнить что-то «как суперпользователь», предварительно ожидая sudo к их команда. Например, чтобы запустить apt-get dist-upgrade в качестве суперпользователя, вы можете использовать:

sudo apt-get dist-upgrade

Преимущества подхода sudo

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

Sudo упрощает выполнение одной команды с привилегиями суперпользователя. При входе в корневой каталог вы навсегда остаетесь в оболочке суперпользователя, которая должна быть завершена с помощью exit или logout. Это может привести к тому, что люди, остающиеся в оболочке суперпользователя, дольше, чем это необходимо, просто потому, что это более удобно, чем выходить из системы и позже.

С помощью sudo у вас все еще есть возможность открыть постоянный (интерактивный) суперпользователь shell с командой:

sudo su

... и это все равно можно сделать без пароля root, потому что sudo предоставляет привилегии суперпользователя команде su.

может

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

Чтобы уточнить, вы можете, если захотите, предоставить корневому пользователю пароль, позволяющий входить в систему как root, если вы специально хотите сделать это таким образом. Я просто хотел сообщить вам о соглашении Ubuntu о предпочтении sudo и попытаться объяснить некоторые причины, по которым Ubuntu поддерживает этот подход по умолчанию.

Преимущества подхода sudo [ ! d7]

Даже если ваш пользователь root может иметь пароль, позволяющий вам войти в систему с правами администратора, по-прежнему хорошая практика безопасности отключать прямой вход root извне, например как в SSH. Пользователям будет разумно su - или sudo после первоначального входа в систему.

Потенциальные преимущества этого в основном связаны с безопасностью:

С sudo , вы выбираете заранее, какие пользователи имеют доступ к sudo. Им не нужно помнить пароль root, поскольку они используют свой собственный пароль.

С помощью sudo вы заранее выбираете, какие пользователи имеют доступ к sudo. Им не нужно помнить пароль root, поскольку они используют свой собственный пароль.

7
ответ дан 26 May 2018 в 00:07

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

6
ответ дан 26 May 2018 в 00:07

Слишком просто испортить работу с правами root. Вы можете clobber всей системы, как одна команда ...

5
ответ дан 26 May 2018 в 00:07

Я могу добавить, что существует разница между Администратором в Windows и root в Unix. Администратор все еще имеет некоторые ограничения в системах, где root не имеет никаких ограничений. Правильный аналог корня в Windows - это пользователь системы.

Плохая вещь для использования ПК под root / System - это то, что вы можете случайно уничтожить все без предупреждения из ОС.

5
ответ дан 26 May 2018 в 00:07

Если приложения запускаются с правами администратора, нет гарантии, что никто из них не выполнит

rm -rf /

(Это пример команды, которая не должна запускаться.)

3
ответ дан 26 May 2018 в 00:07
  • 1
    @StefanoPalazzo Это сообщение не имеет смысла с удаленной командой, поэтому я отбросил ваше редактирование - вы могли бы также удалить сообщение. Обратите внимание, что, вопреки распространенному заблуждению, эта команда, как написано, фактически не удаляет файлы при запуске в системе Ubuntu, но похожа на команды, которые делают. Поэтому, если вас беспокоит, кто-то может бездумно скопировать команду и уничтожить их систему, это маловероятно. Подробнее см. Документацию параметров --preserve-root и --no-preserve-root в man rm . – Eliah Kagan 3 May 2015 в 18:59
  • 2
    Solaris рассматривает эту команду как неопределенное поведение в соответствии с широкой интерпретацией POSIX (и Bryan Cantrill) и выдает ошибку – Jeremy Hajek 18 July 2016 в 18:23

Учитывая знающий и внимательный пользователь, я не уверен, что правильный ответ существует. Я не видел этого ответа, поэтому я подумал, что буду звонить.

Мне не нравятся непреднамеренные изменения разрешений на многопользовательские системы, которые мне нужны для chmod позже. Фиксация через chmod после факта гораздо более раздражает, чем необходимость в sudo, но это зависит от того, что я запланировал.

3
ответ дан 26 May 2018 в 00:07

Нет никакой опасности при регистрации в качестве корня, если его использовать осторожно.

Хотя я считаю, что отключение root является предпочтительным решением, потому что злоумышленник не мог его принудительно использовать.

чтобы создать пользователя в группе sudo с неясным именем, например gamer, и использовать sudo для выполнения административных задач.

Следовательно, злоумышленник должен не только угадывать пароль этого административного пользователя, но и его имя входа. Что не очевидно, если пользователь, использующий sudo, имеет логин, такой как kitty или gamer или что-то подобное.

3
ответ дан 26 May 2018 в 00:07

Программное обеспечение основано на общих библиотеках, зависимостях, конфигурационных файлах и т. д. В большинстве случаев один клик в приложении вызывает «цепную реакцию» нескольких изменений не только там, где вы думаете, вероятно. Когда эти изменения могут повлиять на критически важные параметры системы, вам полезно - как пользователь - знать. Вот почему root-доступ - хорошая модель безопасности: если что-то важно для вашей системы, вы будете уведомлены о том, что вас попросят повысить привилегию.

2
ответ дан 26 May 2018 в 00:07

Причины против использования root:

Возможно случайно уничтожить системные файлы. Может ли заразиться. Не регистрирует действия

Причины использования root:

] Может случайно уничтожить системные файлы GUI, без использования терминалов для управления системными файлами / каталогами

Мне кажется, что учетная запись без полномочий root может стать жертвой этих причин против использования root, он добавляет подтверждение ваших действий. Я думаю, что, пока вы знаете, что делаете, вы совершенно безопасно используете root. Там я сказал это.

2
ответ дан 26 May 2018 в 00:07
  • 1
    Хотя технически существует способ регистрации действий, включая каждую команду. Это касается каждого пользователя. См. Учет процесса, например. здесь: linuxjournal.com/article/6144 И это действительно безопасно, если вам нужно быть root; в противном случае это не совсем безопасно (эксплоит и т. д.), даже если команда должна быть безопасной. – Pryftan 22 February 2018 в 01:07

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

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