- Получение прав суперпользователя (root)
- Вход через login
- Управление доступом к командам перехода в режим суперпользователя
- Краткое сравнение команд su и sudo
- Вход через su —
- Вход через sudo
- Всякое-разное о многопользовательской Linux и администраторском аккаунте Root
- Послесловие
- Шаг 1
- Шаг 2
- Шаг 3
- Шаг 4
- Предназначение root-прав в Linux
- Безопасность использования прав суперпользователя
- Команда sudo и примеры ее использования
- Переключение на суперпользователя
- Предоставление и отзыв прав суперпользователя
- Создание нового пользователя с root
- Для существующей учетной записи
- Откат прав суперпользователя
- Стань одним из тех, кто может отслеживать этого исполнителя
- Лучшие композиции
- Альбомы
- Статистика скробблинга
- Последние тенденции слушателей
- Предстоящие события
- Фотографии
- Похожие исполнители
- Absu
Получение прав суперпользователя (root)
- локальный вход с консоли;
- локальный/удалённый вход по ssh с ключом;
- повышение привилегий при помощи su/sudo (небезопасно).
Вход через login
- Самый правильный способ — это переключиться в виртуальную консоль и зайти через login
Виртуальная консоль Linux организована на основе текстовых возможностей графического контроллера, в том числе работы через фреймбуфер.
Как описано в Глава 7. Основы работы в Linux Справочника пользователя ALT Linux 2.4 Master
В процессе работы Linux активно несколько виртуальных консолей. Каждая виртуальная консоль доступна по нажатию Alt и функциональной клавиши с номером этой консоли. Так, в ALT Linux после загрузки системы функции системной консоли берёт на себя 12-я виртуальная консоль (Alt-F12). Если запущена графическая подсистема X11, она занимает седьмую консоль, а для переключения в текстовый режим описанные клавиши нужно нажимать вместе с Ctrl: Ctrl-Alt-F1, Ctrl-Alt-F2 и т. д.
Если вы переключитесь в виртуальную консоль, то увидите приглашение на вход вида:
где Lada — имя вашего компьютера.
Вводите имя root и пароль root:
Lada login: root Password:
при вводе пароля ничего не высвечивается — это сделано специально, для безопасности.
Далее, например, вызываем mc (файловый менеджер с текстовым интерфейсом) и работаем в нём, если нет предпочтений вроде zsh.
Управление доступом к командам перехода в режим суперпользователя
В дистрибутивах ALT для управления доступом к важным службам используется подсистема control. Для получения текущего состояния войдите через login в root и дайте команду без параметров, например:
# control | grep su su wheelonly (public wheel wheelonly restricted) sudo wheelonly (public wheelonly restricted) sudoers relaxed (strict relaxed)
Для того чтобы посмотреть что значит та или иная политика, дайте команду control имя_службы help, например
# control su help public: Any user can execute /bin/su wheel: Any user can execute /bin/su, but only "wheel" group members can switch to superuser wheelonly: Only "wheel" group members can execute /bin/su restricted: Only root can execute /bin/su
Для задания новой политики можно задать control имя_службы новая_политика, например:
что запретит использовать команду sudo всем, кроме root (а самому root уже в настройках sudo по умолчанию запрещено её использовать).
Примечание: Как видно из приведённых выше команд, команды su и sudo по умолчанию позволено использовать только пользователям, входящим в группу wheel.
Краткое сравнение команд su и sudo
1. Режим работы по умолчанию:
su -
Далее все команды до команды exit выполняются в режиме суперпользователя.
sudo команда
Выполняется только одна конкретная команда.
2. Запрашиваемый пароль по умолчанию:
— запрашивает пароль root;
— запрашивает пароль пользователя для первой команды, для следующих в течение определённого времени вообще не запрашивает пароль.
3. Каждая команда самостоятельна и настраивается отдельно.
По умолчанию в большинстве дистрибутивов ALT sudo запрещено
Вход через su —
- получение прав через su —
Описание su —
Вход через sudo
- получение прав через sudo
- или отправляем символ «конец потока» нажатием Ctrl-D
Здравствуйте, уважаемые посетители, читатели, други и недруги, случайные личности, постоянные клиенты и прочие, так сказать, человеки. Мы продолжаем знакомить Вас с Linux-системами, и эта статья из цикла, посвященного Linux, попытается продолжить базовое знакомство и потихоньку погружать Вас в реальность опытного линуксоида, которая (реальность) таки не всегда сурова, особенно, когда есть знания и материалы на нашем ресурсе, но не всегда бывает и добра.
Сразу оговоримся, что в каком бы дистрибутиве Вы не работали (будь то , , , , , и т.д. и т.п. – сейчас различных дистрибутивов линукса насчитывается порядка 600 или даже больше, если не считать совсем уж мелкие проекты), суть этой работы не изменится. Отличаться могут команды, потому как используются разные менеджеры пакетов. Сегодня мы более подробно затронем такие понятия как:
- Кто же такой суперпользователь,
- Что такое пользователи и группы в системах.
Прежде чем начать повествование, надо себе представлять, что это таки многопользовательская операционная система. Что такое многопользовательская система, думаю, знает каждый, но все же повторюсь для тех, кто не совсем знаком с этим понятием.
Всякое-разное о многопользовательской Linux и администраторском аккаунте Root
1. Многопользовательская система
Итак, еще раз. является многозадачной многопользовательской (сколько много мног’ов :)) операционной системой. Это означает, что одновременно с системой могут работать несколько пользователей, да и каждый из них может запускать несколько приложений. И при этом, например, Вы можете зайти в систему локально, а другой пользователь – удаленно, воспользовавшись протоколами удаленного доступа (telnet, ssh, ftp).
В системах несколько пользователей могут работать с системой и даже не подозревать о существовании друг друга, пока не воспользуются командой (например, изначально разрабатывалась как многопользовательская система с возможностью удаленного подключения как в текстовом, так и в графическом режиме. в основе своей всегда была (и, наверное, долго останется) системой персонального, ни с чем совсем сильно не связанного компьютера, а средства взаимодействия по локальной сети всегда шли в виде своего рода «довеска». Кроме того, всегда опиралась на открытые протоколы, большая часть которых является стандартом в мире -систем. , напротив, делает ставку на собственные протоколы, естественно, закрытые и не всегда совместимые со своими предыдущими версиями.
2. Суперпользователь (root)
Вот мы выяснили (точнее говоря, немного прояснили), что представляет из себя многопользовательская система. Теперь поговорим о том, кто же такой в системах пользователь .
Условно и «сленгово» говоря — это царь и бог :). Пользователь обладает полномочиями в системе, вплоть до её полного и безвозвратного удаления, т.е. это, так сказать, системный администратор в отдельно взятой операционной системе.
Любая команда, введенная в терминале, таки будет выполнена безоговорочно и бесповоротно. Так что работать под -ом в любых ()-системах не приветствуется и даже, можно сказать, не принято. Например, кто-то решил «подшутить» и выложил в интернете вредоносную программу, а Вы взяли и скачали её, да еще и начали устанавливать ее на своем компьютере (трудно представить себе таких экстремалов, но все же — а вдруг найдутся такие 🙂 ). Если запуск этой программы будет произведен через суперпользователя, то Ваша система может быть легко уничтожена, а вот запуск этой программы от имени простого пользователя ни к чему не приведет — система просто откажется выполнять ее, сославшись на то, что у Вас не хватает полномочий. Это лишний повод присмотреться, а нужно ли Вам вообще это устанавливать. Вот поэтому в (unix)-системах вход под именем пользователя запрещен.
Давайте начнем с . Эта команда позволяет запустить любую команду с привилегиями . Но использовать эту команду могут не все пользователи, а только те, которые внесены в файл / (в этом файле в доступной форме расписывается — каким пользователям или группам можно выполнять команду , а это значит, что рядовой пользователь, не внесенный в этот файл, даже при сильном своем желании не сможет воспользоваться правами ).
О каталоге мы поговорим в другой раз — потому что это отдельная тема. Но хочется сказать, что в этом каталоге содержатся почти все настройки системы (кроме пользовательских, пользовательские настройки хранятся в домашнем каталоге пользователя ), при этом в каталоге находится множество текстовых файлов. А поскольку файлы текстовые, то их можно редактировать любым текстовым редактором, что очень упрощает работу с системными файлами и повышает надежность системы. К слову, даже если удалить один из конфигурационных файлов каталога , система продолжит работу как ни в чем не бывало! Конечно, она будет работать не так, как до удаления этого файла, но все же она, в отличие от , будет работать.
Теория это, конечно, хорошо, но давайте немного попрактикуемся. Например, вам нужно отредактировать файл, для чего заходим в терминал и вводим:
sudo gedit /etc/sudoers
Откроется окно программы :
..Где мы производим нужное редактирование, сохраняем и закрываем этот файл. В системах очень много текстовых редакторов, с помощью которых можно редактировать файлы, — это и вышеупомянутый , и , и , и много других, — посему Вы можете воспользоваться любым. Вот как будет выглядеть открытие файла через редактор :
Если мы введем без ту же команду:
..то файл откроется, но сохранить изменения, внесенные Вами, не получится, поскольку у Вас не будет тех полномочий, которые требуются для редактирования.
Видите, кнопка «» неактивна.
Теперь о команде .
Команда позволяет получить доступ к консоли (терминалу) ЛЮБОМУ пользователю (даже если этот пользователь не внесен в список файла ), но при условии, что он знает пароль . Разницу прочувствовали?
:
Команда предназначена для администраторов системы, а — для остальных пользователей, которым только иногда нужны права root.
И, тем не менее, заходить в систему под суперпользователем можно всегда, даже если эта учетная запись ограничена или отключена, например, в нужно просто задать пароль для пользователя командой . Сначала система запросит ваш пользовательский пароль, затем новый пароль и его подтверждение. Учетную запись в можно потом отключить командой , но.. После закрытия учетной записи могут быть проблемы с входом в систему в режиме восстановления. На мой взгляд, в суперпользователя лучше не включать, а пользоваться командой
Немного практики.
Давайте добавим нового пользователя в систему. Для этого нужно от суперпользователя ввести всего команды:
(задает/изменяет пароль)
Обратите внимание на знак перед командой. Таким знаком обозначается, что команду отдает суперпользователь (он же , он же бог и властелин, если перед командой стоит значок — то команда будет выполняться от простого пользователя).
Вот он, наш новый пользователь системы . Мы его создали и завели пароль на эту учетную запись.
Если пароль задан слишком простой, то Вам выдастся предупреждение, что пароль слишком доступный:
И так будет до бесконечности, пока Вы не создадите нормальный и таки взломоустойчивый пароль.
При создании нового пользователя для него в системе создастся каталог /home <имя пользователя>, куда скопируется содержимое каталога (в нем находится весь «джентльменский» набор, который должен быть в любом пользовательском каталоге).
Помимо этого в файле создается запись, короче, наш новый пользователь будет полноправным пользователем системы.
Удалить пользователя из системы так же просто, как и завести его. Достаточно набрать команду:
Еще раз вернитесь к рисунку, где мы удаляли пользователя из системы. В системе остался один пользователь – Выделите его, нажмите на кнопку «» и Вы узнаете много интересного :). Например, обратите внимание на вкладку «», где можете включить пользователя в ту или иную группу, просто поставив галочку:
С каждым новым пользователем создаются и новые группы. Если у пользователя на вкладке «» поставить галку на группе «», то у будет доступ к домашнему каталогу пользователя (а вот у таких полномочий не будет).
Хочу обратить Ваше внимание на один момент — с каждым новым выходом релиза конфигураторы из системы потихоньку пропадают (что, на мой взгляд, печально). Их или заменяют на другие, или вообще убирают из дистрибутива за ненадобностью. Некоторые из них могут быть установлены по умолчанию, некоторые надо устанавливать самим, это зависит от Ваших потребностей. Если при вводе команды запуска конфигуратора система скажет, что такой команды нет, скорей всего этот конфигуратор у Вас не установлен и можно попробовать установить его.
Давайте попробуем потренироваться на другом дистрибутиве (все предыдущие картинки относятся к дистрибутиву ), например, на (этот дистрибутив тоже популярен среди населения). Отвлекусь и напомню, что в каком бы дистрибутиве Вы не сидели, смысл работы будет идентичен, отличаться будут только команды. В данном конкретном случае в есть конфигуратор , и он по умолчанию не установлен в системе. Чтобы воспользоваться всеми прелестями этого конфигуратора, для начала установите его командой:
sudo apt-get install gnome-system-tools.
Пошел процесс установки данной утилиты:
Обратите внимание, что для установки данного пакета требуется разрешить зависимости (о зависимостях мы уже говорили в предыдущей статье, а теперь наглядно это продемонстрируем), т.е. будут установлены дополнительные пакеты для того, чтобы утилита корректно работала.
Потом в поиске можно набрать «группы» или «пользователи» и появится иконка утилиты
И нашему взору представляется графический интерфейс настроек пользователей и групп в :
Все современные дистрибутивы неплохо русифицированы, а поэтому более подробно останавливаться на рассмотрении этой утилиты мы не будем, но главные моменты осветим.
Понятно, что чтобы добавить нового пользователя, нужно нажать кнопку , чтобы удалить созданного пользователя – нажать кнопку . Чтобы изменить тип учетной записи – нужно щелкнуть по кнопке , напротив поля «». Существуетвида учетной записи:
- Администратор () – пользователь может администрировать систему
- Пользователь – пользователь может работать в системе, но не может администрировать её (использовать команду , устанавливать программы, управлять пользователями и т.д., т.п.)
- Другое – эта учетная запись с особыми параметрами доступа, которые устанавливаются вручную. Для этого нужно воспользоваться вкладкой « ». На вкладке « » можно задать, какие операции может выполнять пользователь, а какие – нет.
На вкладке «» Вы можете отключить учетную запись, изменить группу, пользователя, можете даже выбрать другой интерпретатор и домашний каталог.
Если Вам необходимо разрешить пользователю использовать , то в окне « » выделите учетную запись пользователя, нажмите кнопку « » и на вкладке « » разрешите « ».
Чтобы управлять группами – нужно воспользоваться кнопкой «».
Вы увидите список групп и кнопки «» (ну понятно же, что эта кнопка добавляет новую группу), «» (удаляет группу) и «» (с помощью этой кнопки Вы легко добавите/исключите членов группы). Все очень просто и интуитивно понятно.
На этом мы закончим нашу очередную лекцию :). Надеюсь, что я Вас не утомил? Согласитесь, что в принципе не так уж и страшна эта система, как о ней говорят. Если есть что дополнить (добавить), милости прошу, добавляйте в своих комментариях.
Послесловие
Вот такая вот получилась полутеоретическая и немножко практическая, но таки важная статья для тех, кто постигает линукс и кому он интересен.
Мало-помалу будем двигаться дальше. Оставайтесь на связи, читайте статьи в этой рубрике, комментируйте, предлагайте темы и всё такое прочее.
За существование данной статьи спасибо члену команды Pantera
Шаг 1
local$ ssh root@server_ip_address
Комьюнити теперь в Телеграм
Подпишитесь и будьте в курсе последних IT-новостей
Шаг 2
Используйте команду passwd для того, чтобы назначить пароль для созданного пользователя:
Задайте и подтвердите новый пароль в командной строке. Настоятельно рекомендую придумать сложный пароль!
Set password prompts: Changing password for user username. New password: Retype new password: passwd: all authentication tokens updated successfully.
Шаг 3
# usermod –aG wheel username
В данной группе все пользователи по умолчанию обладают возможностью использовать команду sudo.
Шаг 4
Проверьте, обладает ли новый пользователь sudo-правами. Для этого:
- Введите команду su (смена пользователя), чтобы перейти в аккаунт созданного пользователя:
- Напишите sudo перед командой, которую вы хотите запустить (command_to_run), пользуясь правами суперпользователя.
Username$ sudo command_to_run
- К примеру, вы можете запросить список содержимого корневой директории /root – данная информация обычно доступна только root-пользователю.
username$ sudo ls -la /root
- Когда вы в первый раз будете использовать команды sudo в данной сессии, у вас запросят пароль для входа в аккаунт данного пользователя. Для того, чтобы продолжить, вам необходимо ввести пароль.
Output: [sudo] password for username:
Если пользователь в правильной группе, и вы правильно ввели пароль, то команда, которую вы запросили, будет выполнена с административными привилегиями.
В дистрибутивах Linux пользовательские привилегии предоставляются путем открытия доступа к root. Наличие таких прав позволяет использовать функциональность операционной системы более широко и выполнять необходимые действия в корневом каталоге.
Давайте детально обсудим, что может суперпользователь в Linux, как настроить root и для чего нужна команда
Предназначение root-прав в Linux
Права обычного пользователя в Linux крайне ограничены. Он может управлять только своим каталогом и открывать для чтения определенные файлы из корня. Доступ для их изменения или установки программ отсутствует, что делает привилегии суперпользователя крайне важными при настройке ОС и решении разных проблем. Обычный пользователь ограничивается следующим набором прав:
- чтение, запись и изменение любых атрибутов пользовательской папки;
- то же самое и для каталога
- выполнение программ в любом месте, где нет ограничений;
- чтение файлов с соответствующим атрибутом для всех пользователей.
При наличии рут-прав у юзера появляется гораздо больше возможностей и расширяются границы взаимодействия с операционной системой. Становятся доступными любые действия со всеми папками и файлами.
Комьюнити теперь в Телеграм
Подпишитесь и будьте в курсе последних IT-новостей
Безопасность использования прав суперпользователя
Если с предназначением root-прав в Linux все понятно, то вот к безопасности их использования есть вопросы. В основном, относится это к серверным машинам, поскольку риск взлома домашнего компьютера очень мал, да и кому нужны файлы обычного пользователя, чтобы ради этого затевать процедуру взлома. Если вы используете Linux как обычную операционную систему, работаете с документами и стандартными программами, используйте root для установки приложений и защиты системы от случайных изменений, которые могут внести другие пользователи компьютера.
С серверной частью все гораздо сложнее, поскольку рут как таковой не предоставляет полной защиты. Часто используемые пароли взламываются путем перебора или поиском бэкдора. Поэтому не стоит полагаться исключительно на защиту паролем, если вы владеете файлами сайтов или используете сервер для других целей. Займитесь настройкой файрвола, если это повысит уровень защиты.
Команда sudo и примеры ее использования
тесно связана с root в Linux, поскольку отвечает за передачу прав суперпользователя и позволяет от его имени выполнять команды в Терминале. Существует несколько ее вариаций, использующихся при разных обстоятельствах. Подходит эта команда как для выполнения всего одного действия, так и для передачи прав на всю текущую сессию.
Самый простой пример использования – запуск программы от имени суперпользователя. Для этого вводится:
sudo program \\ program – название приложения, которое вы хотите запустить
применяется для установки софта, команда в таком случае обретает вид:
sudo apt install program
В следующем разделе статьи речь пойдет о передаче прав суперпользователя, что тоже реализуемо при помощи . Я рассмотрю два полезных аргумента. Советую ознакомиться с ними, если хотите упростить выполнение действий через Терминал.
Переключение на суперпользователя
Еще раз уточню, что команда идеально подходит для получения необходимых привилегий без переключения учетной записи. Ее можно использовать как для выполнения одного действия, так и нескольких. Если вы желаете временно получить рут-права через эту команду, введите . В первом случае домашний каталог остается текущим, а во втором меняется на /root.
Примерно так же работает и команда , но она обладает дополнительными аргументами, которые следует уточнить:
- -c – позволяет выполнить команду;
- -g – устанавливает группу для пользователя;
- -G – дополнительные группы для юзера;
- — -l —login – один из режимов входа, при котором происходит переключение домашнего каталога;
- -p – сохранение переменных окружения;
- -s – выбор оболочки для выхода.
Вы уже сами решайте, какой вариант хотите использовать, и готовы ли смириться со всеми ограничениями и недостатками, которые накладывает каждый из них.
Предоставление и отзыв прав суперпользователя
Каждому пользователю в Linux можно предоставить root-права, добавив его в соответствующую группу. Точно так же их можно и отнять, если вдруг это понадобится. Рассмотрю три варианта действий.
Создание нового пользователя с root
Допустим, что вы, единственный юзер в Linux, хотите создать еще одну учетную запись с правами суперпользователя. В таком случае алгоритм действий обретет следующий вид:
- Откройте Терминал и введите команду
- В консоли появятся инструкции по созданию нового пользователя. Присвойте пароль и подтвердите действие, чтобы завершить создание.
- Добавьте новую учетную запись в группу sudo, введя user здесь тоже понадобится заменить).
- Проверьте выполненные действия, переключившись на новую учетную запись через . Для подтверждения введите пароль (при вводе символы не отображаются на экране).
- Выполните любую команду с и убедитесь, что все прошло успешно.
Для существующей учетной записи
Если учетная запись уже добавлена, в консоли остается ввести только одну команду, чтобы добавить пользователя в группу sudo и разрешить ему получение рут-прав. Сама команда представлена ниже, вам остается только скопировать ее и поменять имя юзера.
Используйте предыдущую инструкцию для проверки внесенных изменений.
Откат прав суперпользователя
Если вдруг вы решили, что одна из учетных записей больше не должна состоять в группе sudo, отзовите права, введя команду:
Это была вся основная информация о правах суперпользователя в Linux. Вы знаете, что дают такие привилегии, как их правильно использовать и управлять пользователями. В качестве рекомендации скажу, что всегда нужно читать текст ошибок, появляющихся в Терминале, если что-то пошло не так. Это позволит вам быстрее решить проблему без траты времени на поиски в Google.
Стань одним из тех, кто может отслеживать этого исполнителя
Отслеживай, ищи и открывай по-новому музыку в аккаунте Last.fm
Лучшие композиции
Альбомы
Статистика скробблинга
Последние тенденции слушателей
Предстоящие события
Фотографии
Добавить изображение
еще 19 фотографий
Добавить изображение
еще 31 фотография
Похожие исполнители
-
Absu
Показать всех похожих исполнителей