Linux изменить права до root

Права суперпользователя Debian (sudo, visudo)

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

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

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

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

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

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

Процесс установки sudo

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

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

Текстовый редактор

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

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

Добавить учетную запись пользователя (например, user) в группу sudo на сервере:

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

Создать в файле новую запись, например, для учетной записи user. Мы добавляем строку по аналогии с root:

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

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

Команда sudo запрашивает пароль текущего пользователя (в данном случае это user) — вводим его, и, если все сделано правильно, мы увидим содержание системного конфигурационного файла.

Читайте также:  Забыл пароль линукс ubuntu

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

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

Настройки ограничения команд

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

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

дает право пользователю user с помощью sudo осуществлять перезагрузку сервера командой sudo /sbin/shutdown -r и просматривать файлы с помощью sudo /bin/cat. Другие команды через sudo выполняться не будут. Например, при попытке выключить сервер командой:

Полезное

Увидеть список привилегий можно, запустив sudo -l (будет отображен список для текущего пользователя), либо sudo -l -U user (будет отображен список привилегий пользователя user):

Список привилегий пользователя

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

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

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

Источник

Как дать Root права пользователю в Linux

Суперпользователь «root” — это король пользователей Linux / Unix. Наличие корневого доступа предоставляет полный и неограниченный доступ к дистрибутиву Linux.

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

Как дать Root права пользователю в Linux

Согласно разрешениям файловой системы Linux, root или суперпользователь имеет полные права на чтение (r), запись (w) и выполнение (x) любого файла. По умолчанию идентификатор пользователя root равен «0».

Я собираюсь создать двух пользователей, а именно user1 и user2. Затем я предоставлю root-правак пользователю «user1«.

Способ 1: Добавление в корневую группу с помощью usermod

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

# adduser user1
# adduser user2
# groupadd test

Это группы, которые есть в моей дистрибутиве Linux.

# groups
root bin daemon sys adm disk wheel

Я собираюсь добавить user1 в корневую группу следующим образом:

Читайте также:  Windows gdb for linux

Приведенная ниже команда даст пользователю привилегию root

Способ 2: Добавление в корневую группу с помощью команды Useradd

Я добавил нового пользователя «user3» в корневую группу с помощью команды:

# useradd -m -G root user3
# groups user3
user3 : user3 root

useradd -c “Imitation Root” -d /home/root_user -m -k /etc/skel -s /bin/bash -u 0 -o -g root root_user

Способ 3: Редактирование файла /etc/passwd

Отредактируйте /etc/passwd для конкретного пользователя. Измените UID и GID пользователя на «0«. Это даст root права пользователю в linux.

Теперь пользователь temproot должен иметь привилегии root:

ВНИМАНИЕ: это не рекомендуемый метод предоставления корневого доступа (root-прав)

Способ 4: Дать права пользователя Sudo

Конфигурационный файл sudo — это файл /etc/sudoers, и вы можете отредактировать его с помощью команды visudo:

Использование visudo защищает от конфликтов и гарантирует использование правильного синтаксиса.

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

Добавьте в файл запись, приведенную ниже:

Следовать этому методу не очень хорошая идея, потому что это позволяет и User1, и User2 использовать команду su для предоставления постоянных привилегий root. Таким образом пропуская функции ведения журнала команд sudo.

Предоставление доступа к определенным файлам одному конкретному пользователю

Эта запись позволяет User 1 и всем другим членам группы получить доступ ко всем программным файлам в каталогах /sbin и /usr/sbin, а также привилегию выполнения команды /usr/oracle/backup.pl…

User1, %operator ALL= /sbin/, / usr/sbin, /usr/oracle/backup.pl

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

Источник

Как получить права суперпользователя в Ubuntu

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

Команда контент-менеджеров wikiHow тщательно следит за работой редакторов, чтобы гарантировать соответствие каждой статьи нашим высоким стандартам качества.

Количество просмотров этой статьи: 240 738.

Чтобы запускать административные задачи на Linux, у вас должны быть права суперпользователя (права root). В большинстве дистрибутивов Linux присутствует отдельная учетная запись суперпользователя, но в Ubuntu она по умолчанию отключена. Это позволяет предотвратить случайные ошибки и защитить систему от проникновения. Чтобы запустить команды, которые требуют административный доступ, используйте команду sudo .

Запуск прав суперпользователя командой sudo

Изображение с названием Become Root in Ubuntu Step 1

Нажмите комбинацию клавиш Ctrl + Alt + T , чтобы открыть окно терминала. Так как в Ubuntu права суперпользователя по умолчанию отключены, вы не сможете воспользоваться командой su и получить административные права, как в прочих дистрибутивах Linux. [1] X Источник информации Вместо этого, вам сначала необходимо запустить команду sudo .

Изображение с названием Become Root in Ubuntu Step 2

  • Пример: команда sudo /etc/init.d/networking stop прекращает работу сети, а sudo adduser добавляет в систему нового пользователя. Обе эти команды требуют прав суперпользователя.
  • Перед тем, как sudo выполнит команду, вы должны будете ввести пароль. Linux хранит пароль в течение 15 минут, так что вам не придется вводить их постоянно.
Читайте также:  Получить размер файла linux

Изображение с названием Become Root in Ubuntu Step 3

  • Пример: введите gksudo gedit /etc/fstab , чтобы открыть файл «fstab» в текстовом редакторе GEdit с графическим интерфейсом.
  • Если вы используете KDE Window Manager, вместо gksudo вводите команду kdesudo .

Изображение с названием Become Root in Ubuntu Step 4

  • Введите команду sudo passwd root . Этим вы создадите пароль для root, тем самым «включите» административный доступ. Смотрите, не забудьте этот пароль.
  • Введите sudo -i . Введите пароль от root, когда это будет необходимо.
  • Значок в терминале изменится с $ на # , указывая на то, что теперь вы обладаете правами суперпользователя.

Изображение с названием Become Root in Ubuntu Step 5

Предоставьте доступ sudo другому пользователю. Если вы настраиваете учетную запись для того, кто в данный момент не имеет административного доступа, добавьте его имя в группу sudo. Для этого введите usermod -aG sudo username (замените «username» на правильное имя пользователя). [4] X Источник информации

Источник

Как стать суперпользователем в Linux

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

Команда контент-менеджеров wikiHow тщательно следит за работой редакторов, чтобы гарантировать соответствие каждой статьи нашим высоким стандартам качества.

Количество просмотров этой статьи: 105 614.

Учетная запись суперпользователя в Linux предоставляет полный доступ к системе. Права суперпользователя (администратора) необходимы для выполнения команд в Linux, особенно тех команд, которые затрагивают системные файлы. Так как аккаунт суперпользователя имеет неограниченный доступ к системным файлам, рекомендуется получать права суперпользователя только при необходимости, а не входить в систему в качестве администратора. Это поможет предотвратить случайное повреждение важных системных файлов.

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

Изображение с названием Become Root in Linux Step 1

Изображение с названием Become Root in Linux Step 2

Введите . su — и нажмите ↵ Enter . С помощью этой команды можно войти в систему в качестве суперпользователя. Используйте указанную команду для входа в систему в качестве любого пользователя, но если команда не содержит имени пользователя, вы войдете в систему как администратор. [1] X Источник информации

Изображение с названием Become Root in Linux Step 3

  • Если появилось сообщение об ошибке аутентификации (authentication error), скорее всего, учетная запись суперпользователя заблокирована. Чтобы узнать, как разблокировать аккаунт, прочитайте следующий раздел.

Изображение с названием Become Root in Linux Step 4

Обратите внимание на приглашение на ввод команды (в окне терминала). Если вы получили права суперпользователя, в конце приглашения на ввод команды вместо значка $ появится значок # . [2] X Источник информации

Изображение с названием Become Root in Linux Step 5

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

Изображение с названием Become Root in Linux Step 6

  • Введите sudo команда и нажмите ↵ Enter (например, sudo ifconfig ). Введите свой пароль пользователя, а не пароль суперпользователя.
  • Команду sudo рекомендуется использовать в некоторых дистрибутивах Linux, например, в Ubuntu, потому что она работает даже тогда, когда учетная запись суперпользователя заблокирована.
  • Эта команда доступна пользователям с правами администратора. Добавить или удалить пользователя можно в /etc/sudoers .

Источник

Оцените статью
Adblock
detector