How To Enable The Root User (Login & SSH)

Техника
Содержание
  1. Introduction
  2. Introduction
  3. Is there a root user on Debian?
  4. Why is the root user disabled on Debian?
  5. Sudo: a better way to run root commands
  6. What is the root password on Debian?
  7. Enable root login on Debian
  8. Additional Resources
  9. Использование привилегий root
  10. How to Add a Superuser in Fedora
  11. Полезные команды
  12. Похожее
  13. Granting Users Administrative Privileges
  14. Переключение на суперпользователя в терминале
  15. Как включить рута в Ubuntu
  16. Step Three — Granting Administrative Privileges
  17. Тонкая настройка
  18. Step Two — Creating a New User
  19. Получение прав root без переключения
  20. Графически приложения от имени суперпользователя
  21. Step Six — Completing Optional Configuration
  22. Installing man Pages
  23. Changing the Default Editor
  24. Where To Go From Here?
  25. Adding a sudo Account in CentOS
  26. Creating a New Superuser on Arch Linux
  27. Step Five — Enabling External Access for Your Regular User
  28. If the Root Account Uses Password Authentication
  29. If the Root Account Uses SSH Key Authentication
  30. Logging Into Your Server
  31. Adding a New User
  32. Accessing the New User
  33. Установка и настройка
  34. Как зайти под root в Ubuntu Desktop GUI
  35. Даём root-права пользователю
  36. Deleting a User
  37. Права суперпользователя в Linux
  38. Вход под суперпользователем
  39. Step One — Logging in as Root
  40. About Root
  41. Step Four — Setting Up a Basic Firewall
  42. Adding a Superuser on Ubuntu and Debian
  43. 1. The Command-Line Approach
  44. 2. Using the Graphical Interface

Introduction

Introduction

When you first create a new Debian 9 server, there are a few configuration steps that you should take early on as part of the basic setup. This will increase the security and usability of your server and will give you a solid foundation for subsequent actions.

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

Translation(s): العربية — English — Español — Français — Italiano — Русский — Svenska — 简体中文

Root — специальный аккаунт в Debian, владелец которого имеет право на выполнение всех без исключения операций. Root также известен как суперпользователь и администратор. Домашняя папка /root.

Во время установки, вас спросят, хотите ли вы использовать аккаунт root или нет.

Если вы хотите (по умолчанию), вам будет предложено выбрать сложный пароль для root. Используйте надёжный!
Если нет, аккаунт root будет выключен и пароль первого созданного пользователя будет использоваться для административных задач.

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

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

В VirtualBox установил Linux Debian , хотел бы входить в систему сразу с root правами. Через bash root получаю без проблем. Но меня интересует root именно в графической среде. При входе даёт выбрать только созданного мной польователя(не root).

PS мне нужно это для свободного удаления программ и получения доступа к общей папке в графической среде между windows и virtualbox linux. Везде отказано в доступе.. требуют root права.
Когда добавил папку и пользователя в одну группу, то открыть её удалось, но файлы в ней не отобразились(пусто). Хотя в windows они там есть.

задан 19 апр 2022 в 13:32

Виталий's user avatar

Всем спасибо, разобрался. Достаточно было добавить в группу sudo своего пользователя, для получения полного контроля, как у root. А для расшаривания папки требовалось установить заголовки и дополнения из гостевой ОС.

ответ дан 19 апр 2022 в 20:49

Виталий's user avatar

При выборе пользователя нажмите «не в списке» («not listed») введите root и пароль. Но скорее всего вы случайно убьёте систему в течении месяца. введите сюда описание изображения

ответ дан 19 апр 2022 в 18:36

eri's user avatar

3 золотых знака26 серебряных знаков56 бронзовых знаков

ответ дан 21 апр 2022 в 3:00

RandomDice 779's user avatar

Let’s start with a bit of theory, to give you the context, and then I’ll show you how to enable root if you really want it, either in a terminal or even for SSH usage.

Is there a root user on Debian?

The “root” still exists on Debian and most Linux distributions, but can’t be used by default. The account is disabled for security reasons.

Why is the root user disabled on Debian?

<!—
—>

Get My Cheat Sheet!
Grab your free PDF file with all the commands you need to know on Linux!

Sudo: a better way to run root commands

You can basically do everything with sudo, so, in theory, there is no need to use “root” anymore.

What is the root password on Debian?

<!—
—>

Get My Cheat Sheet!
Grab your free PDF file with all the commands you need to know on Linux!

Use the exit command to get back to your normal privileges.
exit

I have explained that using “sudo” should be sufficient in most cases and that you can even temporarily switch to the root prompt in a terminal by using “sudo su”. You shouldn’t need anything more, but let’s discuss how to enable root if you really want to do this (not recommended).

Enable root login on Debian

Before using the “root” account directly on Debian, a password should be set via the command:
sudo passwd

As explained previously, having root enabled on your system is a major security issue, so at least try to use a strong password for it. Length is key, using a password generator like this one can help you to get something long enough but easy to remember.

<!—
—>

Get My Cheat Sheet!
Grab your free PDF file with all the commands you need to know on Linux!

Reminder: Remember that all the members of my community get access to this website without ads, exclusive courses and much more. You can become part of this community for as little as $5 per month & get all the benefits immediately.

You can use “ip a” to find the Debian IP address from a terminal (more details in this article: How To Quickly Find the Current IP Address In Linux / Ubuntu).

Дополнительно:  Если windows 10 не видит airpods

Here is how to allow logging in as root via SSH:

<!—
—>

Get My Cheat Sheet!
Grab your free PDF file with all the commands you need to know on Linux!

Additional Resources

Lost with the command line?
You don’t need to learn and remember everything, just download my cheat sheet where I explain the most important commands on Linux, with a brief explanation and some examples.
Download my free PDF cheat sheet.

Использование привилегий root

В терминале : вы можете использовать su (или gksu) чтобы изменить свой идентификатор на root.
Тем не менее, рекомендуется настроить и использовать sudo (или gksudo) для выполнения нужной команды.

Всё о Интернете, сетях, компьютерах, Windows, iOS и Android

How to Add a Superuser in Fedora

 adduser username 
 passwd username 
 usermod -aG wheel username 
usermod command in fedora
 visudo 
 ## Uncomment to allow members of group wheel to execute any command
%wheel ALL=(ALL) ALL
Visudo command - Fedora

Полезные команды

Список привилегий пользователя
Скриншот №4. Список привилегий пользователя

В состав sudo входит команда sudoedit, которая запускает текстовый редактор с указанным файлом сразу с повышенными привилегиями, то есть вместо команды:

sudo nano /etc/network/interfaces

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

и продолжить работу в нем — все команды будут запускаться с повышенными правами. По завершении работы выходим из интерпретатора командой exit.

Похожее

Granting Users Administrative Privileges

  1. sammy
  1. command_name

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

Теперь мы подошли к более интересному и практичному. С помощью специальных утилит вы можете переключить текущий эмулятор терминала в окружения суперпользователя и выполнять все следующие команды не от своего имени, а от его, таким образом, дав программе права root linux. Для этого существует утилита su. Вообще говоря, эта утилита позволяет не только переключаться на пользователя root но и на любого другого пользователя, но по умолчанию используется именно root. Рассмотрим ее подробнее. Команда su linux имеет следующий синтаксис:

$ su опции пользователь

Вот ее основные опции:

  • -c, —command — выполнить команду
  • -g, —group — установить основную группу пользователя (только для root)
  • -G —supp-group — дополнительные группы пользователя (только для root)
  • -, -l, —login — режим входа, будут очищены и инициализированы с учетом нового пользователя все переменные окружения, а также изменен домашний каталог
  • -p, —preserve-environment — сохранить переменные окружения
  • -s, —shell — задать оболочку для входа
  • —version — отобразить версию программы.

Теперь немного поэкспериментируем, чтобы понять как работает команда su linux.

Сначала выполним su без параметров, но для начала создадим переменную окружения, чтобы проверить как с ними обходится эта команда:

Теперь смотрим что получилось:

Из этих команд мы видим, что теперь мы пользователь root, но домашней директорией считается директория нашего предыдущего пользователя и наша переменная не сохранилась также изменилась переменная PATH, теперь там добавлен путь /sbin.

И повторим ту же комбинацию:

Та же ситуация, только на этот раз изменена ко всему еще и домашняя директория на директорию root. Но мы можем сохранить наши переменные окружения, если это нужно, для этого есть опция -p:

Как видите, наша переменная осталась. Вы также можете переключится на любого другого пользователя. Например:

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

Как включить рута в Ubuntu

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

Мы можем включить корневую учетную запись Ubuntu, задав ей пароль с помощью команды passwd. Но чтобы запустить команду passwd для учетной записи root, вам нужны права sudo.
Откройте терминал Ubuntu и выполните команду, чтобы убедиться, что вы являетесь членом группы администраторов:

Если у вас есть соответствующие права, то вы можете установить пароль root с помощью следующей команды:

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

Далее последует запрос запроса пароля — введите пароль для root.

Step Three — Granting Administrative Privileges

  1. sammy

Тонкая настройка

Таким образом, обычный пользователь может запускать команды с правами учетной записи root не зная ее пароль. Это очень удобно, но может быть небезопасно — есть ли возможность ограничить круг команд, которые можно исполнять посредством sudo? Да, и поможет нам в этом тот же самый конфигурационный файл. Снова запускаем visudo и разбираемся дальше. Нас интересуют параметры, указанные после имени пользователя:

Настройки ограничения команд
Скриншот №3. Настройки ограничения команд

Разберем их подробнее:

  • ALL=(ALL:ALL) ALL — первый параметр определяет к какому хосту применяется конфигурация. При использовании выделенного сервера параметр можно оставить без изменений;
  • ALL=(ALL:ALL) ALL — параметры в скобках определяют с полномочиями какого пользователя (первый параметр) и/или группы (второй параметр) будет выполняться команда. По умолчанию sudo выполняет команду от имени root, однако при запуске с ключом –u можно указать другую учетную запись, а с ключом –g другую группу, чьи полномочия будут использованы при запуске;
  • ALL=(ALL:ALL) ALL — третий параметр определяет к каким файлам и командам относятся данные настройки.

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

Step Two — Creating a New User

sent invalidate(passwd) request, exiting
sent invalidate(group) request, exiting
  1. remove unscd
  1. adduser sammy

You will be asked a few questions, starting with the account password.

Enter a strong password and, optionally, fill in any of the additional information if you would like. This is not required and you can just hit ENTER in any field you wish to skip.

Получение прав root без переключения

Чтобы реализовать максимально безопасный интерфейс для работы с правами суперпользователя в Linux была разработана команда sudo. Давайте рассмотрим что такое sudo. Эта команда пишется перед каждой командой, которую нужно выполнить от имени суперпользователя, и для ее выполнения нужно ввести пароль уже не root, а всего лишь вашего пользователя. Так же, как и в предыдущей, в этой утилиты есть свои опции. Сначала рассмотрим синтаксис:

Дополнительно:  Atikmpag sys синий экран на ноутбуке -

$ sudo опции команда

  • -b — выполнять запускаемую утилиту в фоне
  • -E — сохранить переменные окружения
  • -g — запустить команду от группы
  • -H — использовать домашний каталог
  • -l — показать список полномочий в sudo для текущего пользователя
  • -r — использовать для команды роль SELinux
  • -s — использовать оболочку
  • -u — запустить команду от имени пользователя, если не задано используется root
  • -i — не выполнять команду, а войти в оболочку, эквивалентно su —

Вы можете выполнить те же эксперименты, только для этой команды, чтобы понять как использовать команду sudo. Например:

Использование sudo — это рекомендованный способ выполнять команды от имени суперпользователя в Linux. Так вы не забудете с чем имеете дело и меньше всего рискуете повредить систему. Но остался еще один нерешенный вопрос — как быть с графическими утилитами? Ведь команда sudo их не запускает, а запускать графическую оболочку от имени root небезопасно. Это мы и рассмотрим далее.

Графически приложения от имени суперпользователя

Для запуска графических приложений от имени суперпользователя существуют специальные утилиты. Они сохраняют все необходимые переменные окружения и полномочия. В KDE это команда kdesu, а в Gnome команда gksu.

Просто наберите gksu или kdesu, а затем нужную команду:

Эта команда запустит файловый менеджер KDE с правами суперпользователя. В Gnome это будет выглядеть вот так:

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

Step Six — Completing Optional Configuration

Installing man Pages

Debian provides extensive manuals for most software in the form of man pages. However, the man command is not always included by default on minimal installations.

Install the man-db package to install the man command and the manual databases:

  1. man-db

Now, to view the manual for a component, you can type:

For example, to view the manual for the top command, type:

Most packages in the Debian repositories include manual pages as part of their installation.

Changing the Default Editor

Debian offers a wide variety of text editors, some of which are included in the base system. Commands with integrated editor support, like visudo and systemctl edit, pass text to the editor command, which is mapped to the system default editor. Setting the default editor according to your preferences can help you configure your system more easily and avoid frustration.

If your preferred editor is not installed by default, use apt to install it first:

  1. your_preferred_editor

Next, you can view the current default and modify the selection using the update-alternatives command:

  1. update-alternatives editor

The command displays a table of the editors it knows about with a prompt to change the default:

There are 8 choices for the alternative editor (providing /usr/bin/editor).

  Selection    Path                Priority   Status
------------------------------------------------------------
* 0            /usr/bin/joe         70        auto mode
  1            /bin/nano            40        manual mode
  2            /usr/bin/jmacs       50        manual mode
  3            /usr/bin/joe         70        manual mode
  4            /usr/bin/jpico       50        manual mode
  5            /usr/bin/jstar       50        manual mode
  6            /usr/bin/rjoe        25        manual mode
  7            /usr/bin/vim.basic   30        manual mode
  8            /usr/bin/vim.tiny    15        manual mode

Press <enter> to keep the current choice[*], or type selection number:

The asterisk in the far left column indicates the current selection. To change the default, type the “Selection” number for your preferred editor and press Enter. For example, to use nano as the default editor given the above table, we would choose 1:

Press <enter> to keep the current choice[*], or type selection number: 1
update-alternatives: using /bin/nano to provide /usr/bin/editor (editor) in manual mode

From now on, your preferred editor will be used by commands like visudo and systemctl edit, or when the editor command is called.

Where To Go From Here?

At this point, you have a solid foundation for your server. You can install any of the software you need on your server now.

Adding a sudo Account in CentOS

Considering CentOS’s popularity, it would be a shame to miss out on the process of adding a sudo account in this distro. The process for adding a sudo account in CentOS is quite similar to the process specified above for Arch Linux, but with a few basic changes.

 su 
 useradd -G wheel username 
 passwd username 
 su username
sudo whoami
Verify sudo access - CentOS

Creating a New Superuser on Arch Linux

 su 
 pacman -Sy sudo 
 useradd --create-home username 
 passwd username 
 usermod --append --groups wheel username 
 visudo  
 #%wheel ALL=(ALL) ALL 
Edit wheel group - Arch linux

Remove the # symbol preceding the %wheel line and save the changes. Press Ctrl + O on the keyboard to save the file.

 su username 
 whoami 
 sudo whoami 

Step Five — Enabling External Access for Your Regular User

If the Root Account Uses Password Authentication

  1. sammy@your_server_ip
  1. command_to_run

If the Root Account Uses SSH Key Authentication

  1. ~/.ssh /home/sammy
  2. sammy:sammy /home/sammy/.ssh
  1. sammy@your_server_ip
  1. command_to_run

Logging Into Your Server

  1. root@your_server_ip_address

Enter the password you were emailed (nothing will appear on the screen as you enter your password. This is a security feature so that people nearby cannot guess your password based on its length).

If you configured your server to use SSH keys for authentication, you can use the same SSH procedure as above, but you will be automatically logged in without being asked for a password. Note that no password email will be sent to you either.

Adding a New User

  1. adduser newuser
  1. adduser newuser

It will ask you to select a password and then confirm it by repeating it (again, the characters you type will not appear in the window, for security purposes).

Accessing the New User

  1. newuser@your_server_ip_address
  1. - newuser

Установка и настройка

В ОС Ubuntu sudo включена по умолчанию, а в Debian, если в процессе установки не был выбран соответствующий пакет, скорее всего будет следующая картина:

Значит, требуется установить недостающий пакет. Обновляем информацию о репозиториях и устанавливаем sudo:

apt-get update apt-get install sudo

Дожидаемся окончания процесса:

Процесс установки sudo
Скриншот №1. Процесс установки sudo

После успешной установки потребуется сконфигурировать sudo, определив, какие пользователи или группы смогут использовать повышение привилегий и в каком объеме. Все эти настройки хранятся в конфигурационном файле /etc/sudoers, однако вносить в него изменения напрямую настоятельно не рекомендуется. Для этих целей используется специальная команда:

которая запускает текстовый редактор с конфигурационным файлом:

Текстовый редактор
Скриншот №2. Текстовый редактор

За предоставление прав здесь отвечают две строки:

Дополнительно:  Компьютерра: Вызываем синий экран смерти Windows

root    ALL=(ALL:ALL) ALL %sudo   ALL=(ALL:ALL) ALL

Первая строка назначает права для учетной записи root, вторая устанавливает права для членов группы sudo, которая была создана при установке пакета (знак % перед названием означает, что имя относится к группе пользователей). Соответственно, у нас есть два основных способа предоставить пользовательской учетной записи право использовать sudo:

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

Добавлять новую запись рекомендуется в тех случаях, когда список привилегий будет корректироваться (об этом чуть позднее). Если мы внесли изменения в файл, нужно их сохранить нажатием сочетания клавиш Ctrl-O и выйти из редактора — Ctrl-X.

Теперь можно проверить корректность работы:

Как зайти под root в Ubuntu Desktop GUI

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

Затем откройте файл /etc/pam.d/gdm-password и найдите такую строку:

Закомментируйте её, поставив знак # перед ней:

Как вы знаете, Linux очень серьезно относится к управлению пользователями и предоставлению им прав на работу с системой. Обычный пользователь может записывать файлы только в свой каталог и каталог /tmp/. Также есть возможность читать некоторые файлы в корневой файловой системе. Но вы не можете устанавливать программы, ведь для этого нужно право на запись, не можете изменять атрибуты файлов, не можете запускать сервисы, не можете читать некоторые файлы логов и еще много чего не можете.

В Linux управлять корневой файловой системой и создавать там файлы имеет право только пользователь root.

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

Даём root-права пользователю

Первый и самый простой вариант позволяет не вводить постоянно команду sudo при каждом вводе команды, которую надо выполнить в привилегированном режиме. Для перехода в полный режим рута введите такую команду:

После этого Вы перейдёте в привилегированный режим суперпользователя Убунту.

Есть и второй вариант:

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

Deleting a User

  1. deluser --remove-home username

If you are logged in as root, you do not need to add the sudo before the command:

  1. deluser --remove-home username

Права суперпользователя в Linux

Очень долго перечислять чего не может обычный пользователь Linux, проще сказать на что у него есть право, а именно при стандартной настройке полномочий для файлов в Linux, обычный пользователь может:

  • Читать, писать и изменять атрибуты файлов в своем каталоге
  • Читать, писать, изменять атрибуты файлов в каталоге /tmp
  • Выполнять программы там, где это не запрещено с помощью флага noexec
  • Читать файлы, для которых установлен флаг чтения для всех пользователей.

Если же нужно сделать что-то большее нам понадобятся права root пользователя linux. У root есть право делать все в вашей файловой системе независимо от того какие права установлены на файл.

Вход под суперпользователем

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

Step One — Logging in as Root

  1. root@your_server_ip

Accept the warning about host authenticity if it appears. If you are using password authentication, provide your root password to log in. If you are using an SSH key that is passphrase protected, you may be prompted to enter the passphrase the first time you use the key each session. If this is your first time logging into the server with a password, you may also be prompted to change the root password.

About Root

Step Four — Setting Up a Basic Firewall

Debian servers can use firewalls to make sure only connections to certain services are allowed. Although the iptables firewall is installed by default, Debian does not strongly recommend any specific firewall. In this guide, we will install and use the UFW firewall to help set policies and manage exceptions.

We can use the apt package manager to install UFW. Update the local index to retrieve the latest information about available packages and then install the firewall by typing:

  1. update
  2. ufw

Note: If your servers are running on DigitalOcean, you can optionally use DigitalOcean Cloud Firewalls instead of the UFW firewall. We recommend using only one firewall at a time to avoid conflicting rules that may be difficult to debug.

Firewall profiles allow UFW to manage sets of firewall rules for applications by name. Profiles for some common software are bundled with UFW by default and packages can register additional profiles with UFW during the installation process. OpenSSH, the service allowing us to connect to our server now, has a firewall profile that we can use.

You can see this by typing:

  1. ufw app list
Available applications:
  . . .
  OpenSSH
  . . .

We need to make sure that the firewall allows SSH connections so that we can log back in next time. We can allow these connections by typing:

  1. ufw allow OpenSSH

Afterwards, we can enable the firewall by typing:

  1. ufw

Type “y” and press ENTER to proceed. You can see that SSH connections are still allowed by typing:

  1. ufw status
Status: active

To                         Action      From
--                         ------      ----
OpenSSH                    ALLOW       Anywhere
OpenSSH (v6)               ALLOW       Anywhere (v6)

Adding a Superuser on Ubuntu and Debian

1. The Command-Line Approach

 sudo adduser username 
Sudo-adduser-Ubuntu
 sudo usermod -aG sudo username 
 groups username 
 sudo adduser username sudo 

The verification process remains the same as before.

2. Using the Graphical Interface

  1. Go to the Applications menu and click on the Users option. You will see a list of users including the newly created user(s).
    GUI user add
  2. Click on the Unlock option, followed by the root password. You can switch to another user account by simply clicking it.
    Add-user-via-GUI
  3. As soon as you select it, you will see an option to convert the newly created user account into an administrator account. Toggle the button next to the Administrator label, and the account will get added as a sudo account.
Оцените статью
Master Hi-technology
Добавить комментарий