Меню Рубрики

Пользователь linux с неограниченными правами

Пользователи Linux и их права

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

Содержание

Управление пользователями

Добавление пользователя

Добавление пользователя осуществляется командой:

Список доступных параметров можно получить при помощи команды:

Наиболее используемые параметры следующие:

Параметр Описание параметра
-b —base-dir BASE_DIR Cоздание домашней директории пользователя в директории, указанной по умолчанию. Обычно это /home, а пользовательские каталоги — /home/$USER.
-c —comment COMMENT Текстовая строка для описания пользователя. Например,там может быть указано полное имя, адрес, телефон.
-d —home-dir HOME_DIR Домашняя директория (home directory) нового пользователя. По умолчанию используется $HOMEDIR/user
e —expiredate EXPIRE_DATE Дата окончания действия учетной записи.
-g —gid GROUP Указание основной группы (primary group) для нового пользователя. По умолчанию используется стандартная группа, указанная в файле /etc/default/useradd.
-G —groups GROUPS Указание дополнительных групп, к которым будет принадлежать пользователь.
-m —create-home Создание домашнего каталога для нового пользователя, если он еще не существует. Копирует скелетные файлы и другие каталоги из /etc/skel в домашний каталог.
-M Не создавать домашний каталог для пользователя
-n Не создавать приватную группу для пользователя
-s —shell SHELL Указание полного пути к программе (шеллу), которая будет использоваться как начальный командный интерпретатор для пользователя.
-u —uid UID «Ручное» указание id пользователя в виде цифры. По умолчанию используется самое маленькое значение, не меньше, чем UID_MIN, но больше, чем id любого из существующих пользователей.

Установка пароля

Установка пароля для созданного пользователя выполняется командой:

Удаление пользователя

Удаление пользователя выполняется командой:

Параметр Описание параметра
-f, —force Принудительное удаление файлов, даже если они не принадлежат пользователю
-r, —remove Удаление домашней директории пользователя и mail spool

Правка учетной записи

Правка учетной записи пользователя в Linux выполняется следующей командой:

Список возможных параметров можно узнать при помощи команды:

Большинство этих параметров такие же как и в useradd

Права пользователей Linux

Права у пользователя, как у root

Очень часто можно встретить вопрос ”Можно ли сделать у пользователя такие же права как и у рута?
Нет, поскольку в Linux имеет право «делать всё» только один пользователь, id которого в системе — 0, он же root.
В случае, если требуется выполнить какую-либо команду, которая обычному пользователю недоступна, можно использовать команду:

Эта команда позволяет выполнять операции от имени root’a.
ПРИМЕЧАНИЕ: Команда sudo будет доступна пользователю только в том случае, если он входит в группу, которая указана в файле /etc/sudoers. Например, по умолчанию, это может быть группа ”admin”.
Второй вариант – это использование команды:

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

Ограничение доступа к файлам и папкам

Для того, чтобы пользователь мог выполнять какие-либо действия с файлом/папкой, необходимо, чтобы он имел на это полномочия. В данном случае, это возможно, если данный пользователь является владельцем редактируемого файла/папки, либо входит в группу, которой открыты данные права.
Изменить права к файлу можно командой:

Наиболее распространенным вариантом задания прав для файла является цифровой. В данном случае, право на чтение (r) кодируется цифрой 4, право на запись (w)— цифрой 2, а право на запуск (x) — цифрой 1. Таким образом, если Вы хотите, чтобы владелец файла имел все права на управление файлом, группа могла читать и выполенять, а остальные пользователи могли его только читать, то это можно осуществить следующей командой:

Заметьте, что последовательность указания прав неизменна. То есть, первая цифра (7) указывает права для владельца, вторая (5) – для группы, и третья (4) – для всех остальных пользователей в системе.

Изменение владельца файла/папки

Для того, чтобы изменить владельца файла или папки, используется команда:

Права на выполнение данной команды имеет только root-пользователь.

Источник

Права пользователей в Linux. Команды sudo и su

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

Root обладает в указанной системе максимальными полномочиями, и она полностью подвластна ему, — любая его команда будет выполнена сразу. Поэтому работать таким доступом следует с осторожностью. Если вы арендуете виртуальный сервер Linux – используйте эту инструкцию. Чтобы не допустить ошибки необходимо изначально знать, как посмотреть права пользователя Linux.

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

Команда sudo

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

Если вам необходимо изменить файл /etc/apt/sources.list:

sudo nano /etc/apt/sources.list

Если задать аналогичную команду, но без sudo (просто: nano /etc/apt/sources.list), текстовый редактор запустит файл, но сохранить внесенные изменения вы при этом не сможете, поскольку для завершения задачи не хватит полномочий.

Перед самым выполнением команды она обязательно затребует у вас личный пароль:

sudo nano /etc/apt/sources.list
Password:

Нужно ввести пароль, применяемый для входа в систему, но он должен отличаться от пароля root.

Использовать sudo могут не все, а только профили, внесенные в файл /etc/sudoers. Администратору системы позволено редактировать этот файл с помощью visudo.

На платформе Xelent виртуальные серверы (даже на базе Ubuntu) создаются с активной записью root. Следовательно, если вы хотите использовать sudo для обычного пользователя, то сначала нужно его создать, а затем добавить в /etc/sudoers. Далее рассмотрен весь процесс подробно — с момента создания на примере Ubuntu 18.04.
Первым делом добавим пользователя через adduser (рис. 1):

Команда добавит den и установит его пароль. Узнать права пользователя Linux с этим логином можно будет в любой момент.

Рис. 1. Создание пользователя в Ubuntu 18.04

В Ubuntu adduser не только добавляет в Linux права пользователя, но и создает пароль для него. В прочих дистрибутивах вам понадобится две команды — одна для создания новой пользовательской учетной записи, а вторая — для задания его пароля:

adduser den
passwd den

Затем den нужно добавить в файл /etc/sudoers для редактирования которого предназначена visudo. По умолчанию она использует текстовый редактор vi, который очень неудобен и понадобится еще одна статья, объясняющая как с ним работать. Гораздо проще установить переменную окружения EDITOR и задать более удобный текстовый редактор, например, nano.

Узнаем, где находится текстовый редактор nano:

which nano
/bin/nano

Установим переменную окружения:

Рис. 2. Установка переменной окружения EDITOR

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

Данная строка объясняет, что den можно выполнять со всех (первый ALL) терминалов, работая как любой (второй ALL) все команды (третий ALL) с максимальными правами. Конечно, его можно и более ограничить, например:

den ALL= /sbin/poweroff

Эта запись означает, что вышло дать права пользователю Linux den и он может с любого терминала вводить команду завершения работы. Руководств по файлу sudoers в Интернете предостаточно, поэтому вы без проблем найдете дополнительные примеры ограничения прав через этот файл, чтобы настроить сервер так, как вам нужно.

Рис. 3. Редактирование /etc/sudoers

Для сохранения изменений нажмите сначала Ctrl + O, а затем Ctrl + X, чтобы выйти из редактора.

Теперь проверим, все ли у нас получилось. Превратимся в den:

Попытаемся с максимальными правами выполнить любую команду, например, ls:

Команда sudo запросит пароль den — введите его. Если бы мы допустили ошибку при настройке, sudo сообщила бы, что он не имеет права ее использовать. А поскольку она запросила пароль, мы все сделали правильно.

Рис. 4. Sudo в действии

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

Через sudo у вас не получится использовать перенаправление задач категории ввода/вывода, то есть команда вида sudo ls /etc > /root/somefile не сработает. Для этого требуется ввести sudo bash и использовать систему как обычно.

Каждая команда, которая была введена в систему непосредственно с помощью sudo, фиксируется в учетном журнале, находящемся по адресу /var/log/auth.log, и у вас сохранится история введенных задач с полномочиями root, а вот при работе под администратором root журнал вовсе не ведется. Кроме того, если пойдет не так, можно будет понять, что случилось, изучив данный журнал. Посмотрите на рис. 5. На нем видно, что den вводил ls через sudo.

Рис. 5. Журнал auth.log

Команда su

Su дает доступ к консоли с полными правами администратора root любому (даже если он изначально не был вписан в файл /etc/sudoers). Единственное условие — он должен иметь пароль root. Понятно, что в большинстве случаев ним будет сам root, — не станете же вы всем доверять свой пароль? Поэтому su предназначена, в первую очередь, для администратора системы, в Linux права пользователя у него не ограничены, а sudo — для остальных, им тоже иногда требуются права root (чтобы они меньше отвлекали администратора от своей работы).

Использовать su просто:
su

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

Чтобы закрыть сессию su нужно или ввести слово exit, или закрыть окно терминала.

С помощью su можно работать от имени любого пользователя. Ранее было показано, как мы с помощью su den смогли выполнять команды от имени пользователя den.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

  • Получить список сервисов linux
  • Получить список разделов linux
  • Получить список пользователей linux
  • Получить информацию о процессе linux
  • Полосы под linux моноблок hp nomodeset