Если единственный пользователь на *Никс (особенно Linux и macOS) иметь две учетные записи, одна с правами sudo и без? Лет назад я читал, что на вашем персональном компьютере, вы должны сделать ваши ежедневные задачи в качестве непривилегированного пользователя и переключитесь в привилегированный пользователь для задач администрирования. Это правда?
Примечание: Я не ссылаясь на Ли или не вы должны войти в систему как пользователь root для ежедневного использования. Что'ы, очевидно, плохая идея, но должна ежедневного использования счета иметь возможность использовать sudo?
Второе примечание: конкретно я имею в личные устройства, которые не используется в качестве сервера или для размещения какой-либо функциональности для удаленных пользователей.
Во-первых, позвольте'поговорим о модели угроз: что вы пытаетесь остановить потенциального злоумышленника от этого?
Как правило, для конечного пользователя систем модели de опасный facto-это кражи / вымогателей. Если злоумышленник имеет доступ к вашим документам и/или может выполнять команды оболочки, как вы, это's игра окончена. С этой точки зрения, root доступ не'т получить злоумышленник ничего; они могут сделать то, что они хотят без него.
Если кражи и вредоносных программ-это единственная вещь, которую вы're беспокоит, то это не'т, кажется, нравится значение, является ли пользователь судо
полномочия, или всегда ли браузер работает как root.
(Я должен также отметить, что вредоносные программы / подключения к бот-сети может произойти без root доступа, так как сценарии входа / планирование хрон не требует root).
Рэндалл Манро в XKCD кажется, согласны с этой точкой зрения:
Наконец, я'будете добавлять этот отказ от ответственности: да, я'м курсе, что это идет против общественности мнение, что "больше безопасности всегда лучше и". Это's просто не справедливо. Иногда больше безопасности хуже, как и слишком сложной политики паролей, которые в конечном итоге заставляют людей записывают свои пароли. Вы всегда должны смотреть на риски и решите, сколько безопасности-это на самом деле уместно. В этом случае там'ы без вреда для блокировки корневой доступ, но вы делаете свою жизнь сложнее, и это's не ясно, что вы'вновь набирая что-то из него.
Если у вас есть модель угроз, когда злоумышленник хочет что-то, что только root имеет доступ, или есть более одной учетной записи Пользователя на компьютере, то ответ на самом деле зависит от того, какой Никс вы'вновь говорю. Это быстро уходит от дел, персональный компьютер и в случаях сервере, но я'МР все равно обсудить. Для Linux, из-за ошибки (*функция кхм\) в оконную систему xorg, ваши повседневной счет, вероятно, не должны судо
полномочия. Для операционных систем, что Дон'т использовать X, это's наверное ОК.
Здесь'ы большой статьи, который показывает вам, как войти все нажатия клавиш на GUI Linux-машине, используя простой пользователь-земля (не-root) командной оболочки. В резюме:
список$ сравнению с XInput
покажет вам все подключенные человека-устройства ввода
тест$ сравнению с XInput <ИД>
начинается вторя все нажатия клавиш на выбранном устройстве.
Я тестировал и я вам логи пароль, что я тип в судо
в другом окне терминала. Если я запру мой компьютер потом, когда я снова войти в систему, я вижу логи пароль, я набрал на экране блокировки. Видимо это не баг в X, это'характеристика С. Право, я'м собираюсь прятаться под кровать.
Так что да, это поддерживает идею, что любой пользователь вы войти в GUI с не должно быть судо
полномочия, потому что он'ы тривиальные для входа пароль и потом root-права. Небось вы должны иметь специальный счет для судо-Джея и переключиться на терминал tty (сочетание клавиш Ctrl+АЛТ+#
), когда вы хотите использовать sudo
. Действительно ли это стоит беспокоиться о том, что до вас лично, все данные, что меня волнует, это уже есть в моей учетной записи, но я, вероятно, изменить Мои настройки ноутбука, потому что я'м ботан безопасности.
Обратите внимание, что в моих тестах я не смогла личных данных пользователей. Делаем "и только" в GUI, или запущен
в новый терминал tty похоже, чтобы запустить единичный экземпляр Х.
Спасибо @MichaelKjörling за это наблюдение:
и GT; что's одна из вещей, которые Вэйланд]4 [оконная система, предназначенная для замены х] на самом деле пытается исправить (см. пункт о безопасности). Помните, что X11 возникла в то время, когда модель угроз был очень отличается от того, что она является сегодня.
Администратора: это укрепляет привычку только взаимодействуя с вашей коробки в Linux через SSH, никогда не использовать GUI.
Я'м не стыдно эксперт, но я знаю, что он не использует xorg-сервера, так что я предполагаю, что Яблоко'ы Гуй обрабатывает это правильно, но я бы хотел, чтобы кто-то больше специалист, чем я, чтобы взвеситься.
Я'м не Окна эксперт, но я считаю, что контроль учетных записей (UAC) функция введенная в Windows 7, решали эту проблему, имея админ попросит оказать в безопасный рабочий стол, чьи входные шины изолированы от обычного рабочего стола.
В большинстве ситуаций, требующих пароль с sudo-это достаточно защиты.
Основное различие между Су-Джея и
судо ING для получения прав заключается в том, что с sudo вы введите тот же пароль, который вы использовали для входа на сайт. Если ваша модель угроз предполагает, что злоумышленник имеет свой пароль от аккаунта, затем вы'вновь, уже в довольно серьезные проблемы, больше, чем другой пароль на учетную запись root будет защищать вас от.
Я обнаружил, что имея два аккаунта на мой UNIX-систем необходимо по следующей причине:
Если я когда-нибудь испортишь .bashrc или другие логин / настройка терминал файлы я могу попасть ситуция, где я не могу даже войти. Так что я совершенно неправильно. Это худшая ситуация только можно вообразить, что вы можете'т сделать многое, если вы можете'т войти.
Единственный способ я был в состоянии исправить это на пару машин был другой логин, который позволяет мне пойти и с помощью sudo, исправить файлы запуска для моего основного счета. Я тогда выйдите из моего счета'2' и обратно в мою обычную учетную запись.
Иногда я might сможете использовать загрузку с USB опция, но если честно я считаю возможность войти в другую учетную запись, использовать sudo и исправить свою .bashrc и затем выйти из системы и обратно в другой учетной записи все можно сделать за несколько секунд со второго входа и гораздо менее страшных и незнакомых, чем загрузочный USB исправить для меня вариант. Конечно, YMMV (у вас может быть и очень)
Я'м, используя эту установку, но причина выходит за рамки одной системы.
Если вы хотите резервного копирования, который обеспечивает некоторую защиту против приложений позволяет (и вы Don'т, как считать, никто не напишет приложений позволяет для Linux), вы должны быть резервное копирование на внешние системы, которая хранит несколько версий.
Однако, я не'т получил выделенной рабочей станции/терминала для администрирования сервера резервного копирования. Входа в качестве отдельного пользователя для этого (не используя команду su
) содержит один слой защиты. Если мой нормальный логин у судо
привилегии, там'd по-прежнему быть "лежачим полицейским", но это будет довольно тонкий (небытия, и обеспечением придется захватить судо
пароль).
В чем преимущества судо
?
Вы Don'т необходимость поделиться пароль root с каждого пользователя выполнять некоторые виды административных задач на собственную систему.
Аутентификация автоматически истекает через короткое время (15 мин) и вы можете установить timestamp_timeout=0
при /и т. д./пользователям использовать sudo?
делает пароль судо истекает через 0 (ноль) секунд. Это означает, что каждый раз, когда вы использовать sudo, вам будет предложено ввести пароль.
Что такое недостатки от судо
:
Когда пользователь использует слабый пароль это позволит злоумышленнику быстро взломать пароль пользователей и поднять преимуществом, чтобы получить корневой доступ
Корень
пароль может быть заблокирован по умолчанию в некоторых дистрибутивах Linux, например, Ubuntu. Почему?
Потому что в присутствии пользователь root
, злоумышленник будет пробовать в первый раз перебрать пароль. Это будет сложнее, если учетная запись root отключена .
Пользователь может сменить владельца системные файлы, зная пароль root или нанести вред вашей системе при выполнении вредоносных программ.
Все пользователи ПК должны иметь по крайней мере локального администратора, но здравый смысл говорит, что этого быть защищен паролем (Android пользователи, обратите внимание, этот.). В зависимости от использования я не вижу причин, почему там не может быть только одной учетной записи. Это дело для Puppy Linux и была достаточно успешной в течение многих лет. Однако хорошо иметь два уровня защиты и отдельную папку директории /sbin для тех времен мы неуклюжи и/или глупо. Одно дело бодаться набрать кого-то, это еще бодаться удалять каталоги. Ленивые пользователи будут только добавлять все, что им нужно на файлами sudoers. Эскалация привилегий, как правило, опирается на имеющие доступ к учетной записи в первую очередь, поэтому мы контролируем этого. Учетные записи на серверах и техника должны быть оправданы, и мы заботимся о нашей станции используется в качестве де-факто прибор против нас. Суть в том, что для многих ПК's там нет других реальных пользователей.
Каждая машина нуждается в учетной записи администратора, независимо от операционной системы. ОК, большинство ароматов в Linux скрыть пользователь root, дав ему пароль незначителен - в том смысле, что любой вклад будет возвращать false, но корень действительно существует и имеет ID пользователей 0.
Что учетная запись администратора может ничего изменить в системе, в том числе и то, что не позволено обычным пользователям. Линию обороны здесь, заключается в том, что если злоумышленник получает доступ к пользователю root случайно (*) он может легко установить программу, чтобы иметь возможность снова обрести его на волю. И вы не заметите его, если вы подальше анализировать безопасность вашей системы (логи, изменения в системные файлы, ...) на регулярной основе.
Если злоумышленник получает доступ к учетной записи root случайно, он будет вносить изменения в то, что доступно на этот счет. Ок, он может изменить пароль, если он сумел достать снаряд, но вы обязательно заметите следующий раз, когда вы пытаетесь войти!
Это означает, что линия обороны не используя корень только против дальних атак - если кто-то имеет физический доступ к машине, он может читать все, что не так сильно шифроваться и писать/стереть абсолютно все - в том числе и пароль базы данных, чтобы добавить другие учетные записи администратора. Единственным исключением здесь является то, что если весь диск зашифрован, единственное возможное действие-стереть все и свежую переустановите.
Но я допускаю, что даже если я знаю, что sudo-это отличное программное обеспечение и может использоваться, чтобы позволить мелкозернистые разрешения. Я не очень люблю Linux по умолчанию путь, где суда могут делать что угодно, потому что в этой уязвимой:
В следующий раз вы попробуйте для входа, вы заметите, что вы не можете, используйте процедуру восстановления, чтобы обнаружить, что мастер-пароль нарушен, восстановить его или повторно установите его из архива версию, и если вы не внимательно анализировать систему, никогда не видеть заднюю дверь.
Когда я сказал получите доступ случайно, я имею в виду не воспроизводимый способ, например, если он использует уязвимости при подключении к вредоносный сайт. Если злоумышленник установить бэкдор, он только снова получить доступ, когда вы вернетесь на этот сайт, который может или не произойти.
ТЛ/ДР: мое мнение, что любая машина должна иметь как минимум 2 аккаунта: один важный для нормального использования, и административный для решения административных задач.
Разве'т резервных копий решения этой проблемы? Резервное копирование всего жесткого диска на регулярной основе, выглядит как хорошая идея в целом по разным причинам, возможности облажаться .bashrc является одним из них.