Sudo bash что это

Команда sudo – администрирование системы

В Unix-подобных операционных системах должен быть привилегированный пользователь – суперпользователь, он же администратор. Логин его учетной записи – root, а домашний каталог находится в /root. Этот пользователь предназначен для администрирования системы, а значит обладает правами на операции с системными файлами, установку программного обеспечения, создание и удаление других пользователей, предоставление им различных доступов.

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

Поэтому во многих современных дистрибутивах Linux учетная запись суперпользователя отключена, хотя она имеется в системе. Ее можно включить, задав для root’а пароль. Однако этого делать не рекомендуют.

Для администрирования системы Linux сейчас широко используется утилита sudo. Она позволяет первому, который создавался при установке ОС, пользователю выполнять команды с правами администратора. Однако основное преимущество не в том, чтобы не заходить в систему под рутом, а в том, что sudo может быть сконфигурирована так, что пользователь не сможет выполнять абсолютно все административные задачи, а сможет только позволенные.

Используется команда sudo следующим образом:

sudo команда параметры_команды

Однако, воспользовавшись sudo, мы откроем файл как суперпользователь и получим право на запись. При этом Bash попросит ввести пароль (вводимые символы при этом не отображаются) вашей (не рута) учетной записи.

Sudo-сессия сохраняется какое-то время. Поэтому выполнение последующих команд с использованием sudo может не требовать ввода пароля.

В примере мы переходим в режим администратора, копируем файл в каталог root’а. Под обычным пользователем мы не можем даже просматривать этот каталог.

Курс с ответами к заданиям и дополнительными уроками:
android-приложение, pdf-версия.

Источник

HackWare.ru

Этичный хакинг и тестирование на проникновение, информационная безопасность

Что такое sudo

Что означает sudo. Как запустить команду с sudo

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

Простейший и самый распространённый вариант запуска команд с sudo:

Если у КОМАНДЫ есть опции, аргументы, то для sudo не нужно делать какие-то дополнительные действия, например, помещать КОМАНДУ с опциями в кавычки или что-то ещё. Поставьте sudo и запускайте КОМАНДУ как обычно.

К примеру, я хочу выполнить:

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

Чтобы эта команда сработала, достаточно её записать после sudo:

Sudo bash что это. sudo. Sudo bash что это фото. Sudo bash что это-sudo. картинка Sudo bash что это. картинка sudo

Что использовать sudo или su?

У программы su похожее назначение: запустить команду с подстановкой ID другого пользователя и группы. То есть одинакового результата можно добиться используя как sudo, так и su.

Различия sudo и su в следующем:

1. При использовании su необходимо сообщать пароль root обычному пользователю (но это можно обойти — подробности в этом разделе чуть ниже). При использовании sudo пользователь вводит свой собственный пароль.

2. У обеих команд есть интерактивный режим, то есть можно как бы выполнить вход от имени другого пользователя. Также обе программы, sudo и su, позволяют выполнять команды без интерактивного режима. В su интерактивный режим запускается по умолчанию (если не указана команда для выполнения):

В sudo для входа в интерактивный шелл нужно использовать опцию -i:

Точнее говоря, всё немного сложнее, опция -i в sudo означает запустить оболочку входа в систему от имени указанного пользователя; также можно задать команду. Сравните:

Также обратите внимание, что при указании команды не запускается интерактивная оболочка.

3. Использование sudo требует настройки, а именно: 1) добавление пользователя в группу, имеющую право использовать эту программу; 2) установка разрешений (перечисление команд, которые может запускать пользователь с sudo и т. д. При некоторых настройках, если пользователь не упомянут в конфигурационных файлах sudo, то он не может ей пользоваться. Программа su не требует настройки для каждого пользователя.

4. Разное отношение с окружением выполнения: смена текущей рабочей директории при входе в интерактивный режим su, сохранение текущей рабочей директории при выполнении отдельных команд с sudo и su. Сравните переменную окружения $HOME в команде

со значением $HOME в команде:

5. Некоторые конструкции оболочки работают с sudo не так, как вы ожидаете. Смотрите в качестве примера статью «Как использовать echo вместе с sudo». С su такой проблемы нет.

Но если нужно выполнить несколько команд с повышенными привилегиями, то достаточно войти в интерактивную консоль su:

И затем перед командами уже ненужно ставить sudo.

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

Или использовать интерактивный режим самой sudo:

Как выполнить команду от имени другого пользователя

Запуск sudo:

означает выполнить КОМАНДУ от имени пользователя по умолчанию. Таким пользователем обычно является root, но, на самом деле, может быть настроен другой пользователь по умолчанию.

Если нужно выполнить команду от имени иного, не root пользователя, то используйте опцию -u:

Как создать пользователя с sudo

Рассмотрим как создать пользователя, имеющего права запускать команды с sudo.

Чтобы создать пользователя с sudo в Debian, Linux Mint, Ubuntu, Kali Linux и их производных выполните команду вида:

Sudo bash что это. useradd. Sudo bash что это фото. Sudo bash что это-useradd. картинка Sudo bash что это. картинка useradd

В Arch Linux, BlackArch и их производных для создания пользователя с sudo выполните команду вида:

Обратите внимание, что в Arch Linux группа, дающее право на выполнение команд sudo, называется wheel, а не, собственно, sudo. Также мы добавили пользователя сразу в две группы, а не в одну, имя второй группы video. Если вы создаёте пользователя на системе без графического окружения, например, на безголовом сервере, то добавлять в группу video не нужно.

В CentOS для создания пользователя с sudo выполните команду вида:

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

Конфигурационный файл sudo

Программа sudo считывает конфигурацию из файла /etc/sudoers. Если в файле /etc/sudoers раскомментировать директиву

то дополнительно настройки будут считываться из всех файлов в директории /etc/sudoers.d.

Не рекомендуется напрямую править файл /etc/sudoers, рекомендуется использовать команду

которая откроет файл для редактирования. Кроме прочих функций, данная программа проверит синтаксис, и если в нём присутствует ошибка, то файл не будет сохранён.

При запуске visudo по умолчанию будет открыт файл /etc/sudoers. С помощью опции -f можно указать расположение файла в другом месте, например в /etc/sudoers.d.

Как разрешить пользователи выполнять только определённые команды с sudo

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

В файл /etc/sudoers нужно добавить строку вида:

В этой строке значения следующие:

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

Другой вариант, я хочу разрешить пользователю admin выполнять только команды /home/admin/backup.sh и /usr/bin/apt, и выполнять их он может только от root, тогда мне нужно добавить строку:

Обратите внимание, что если команд несколько, то они перечисляются через запятую без пробела.

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

В зависимости от дистрибутива, она же может быть записана так:

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

Как узнать, какие sudo полномочия имеются у пользователя

Мы только что узнали, что у определённого пользователя могут быть ограниченные полномочия на выполнение команд с sudo. Как узнать, какие именно команды может выполнить пользователь или как проверить, сработали ли наши настройки в файле /etc/sudoers?

Для вывода всех разрешённых команд или для проверки определённой команды, используется опция -l. Но если не указать опцию -U с именем интересующего пользователя, то будут выведены данные для пользователя по умолчанию (root).

Пример проверки прав sudo для пользователя admin:

Sudo bash что это. sudo 2. Sudo bash что это фото. Sudo bash что это-sudo 2. картинка Sudo bash что это. картинка sudo 2

Строка «User admin may run the following commands on HackWare» означает «пользователь admin может запускать следующие команды на HackWare».

Также можно узнать, является ли та или иная команда заблокированной или разрешённой для выполнения пользователем с sudo следующим образом:

Если команда запрещена, то ничего не будет выведено:

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

Как настроить использование sudo без пароля

Данная настройка только для тех пользователей, кто действительно понимает зачем он это делает и какие риски безопасности это влечёт.

Чтобы отключить запрос пароля ПОЛЬЗОВАТЕЛЮ при вводе одной или нескольких КОМАНД с sudo:

Чтобы отключить запрос пароля ПОЛЬЗОВАТЕЛЮ при вводе любой команды с sudo:

Чтобы отключить запрос пароля всем пользователям при вводе одной или нескольких КОМАНД с sudo:

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

К примеру, чтобы разрешить пользователю admin выполнять команды /home/admin/backup.sh и /usr/bin/apt с sudo без необходимости ввода пароля, нужно добавить строку:

Это конец первой части. Во второй части мы рассмотрим другие интересные настройки и опции команды sudo.

Источник

Sudo (Русский)

sudo (англ. substitute user do, дословно «подменить пользователя и выполнить») позволяет системному администратору делегировать полномочия, чтобы дать некоторым пользователям (или группе пользователей) возможность запускать некоторые (или все) команды c правами суперпользователя или любого другого пользователя, обеспечивая контроль над командами и их аргументами.

Contents

Обоснование

Sudo может также использоваться для выполнения команд от имени других пользователей; кроме того, sudo логирует все команды и неудачные попытки доступа для аудита безопасности.

Установка

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

Использование

Например, для использования pacman:

Смотрите руководство по sudo для получения дополнительной информации.

Настройка

Просмотр текущих настроек

Использование visudo

Чтобы сделать nano редактором visudo в течение текущего shell сеанса, задайте и экспортируйте переменную EDITOR перед тем, как выполнять visudo.

Примеры настроек

Разрешить пользователю выполнять все команды от любого пользователя, но только на машине с определенным названием хоста:

Предоставить членам группы wheel доступ sudo:

Чтобы не спрашивать пароль у пользователя:

Разрешить выполнять только конкретные команды и только пользователю на определенном хосте:

Разрешить выполнять конкретно определённые команды только для пользователя на определенном хосте и без пароля:

Права доступа к файлам sudoers по умолчанию

Файл sudoers должен иметь владельца root и группу root (0). Права доступа всегда должны быть установлены как r—r—— (0440). Эти права установлены по умолчанию, однако если вы случайно измените их, они должны быть немедленно изменены обратно, иначе sudo не будет работать.

Время действия введённого пароля

Возможно, вы захотите изменить промежуток времени, в течение которого sudo действует без ввода пароля. Этого легко добиться добавив опцию timestamp_timeout в /etc/sudoers :

Например, чтобы установить тайм-аут на 20 минут:

Советы и рекомендации

Автодополнение по нажатию Tab в bash

Один тайм-аут на все сеансы терминала

Если вы не хотите вводить пароль снова каждый раз, когда открываете новый терминал, отключите tty_tickets:

Всегда показывать замечание о безопасности

По умолчанию, /etc/sudoers настроен так, что sudo выводит замечание о безопасности только при первом открытии сеанса:

или просто добавьте эту строку, если её нет.

Переменные окружения

Перенос псевдонимов

Если у вас установлено много псевдонимов, вы могли заметить, что они не переносятся в сеанс sudo. Однако, это легко исправить. Просто добавьте в ваш

/.bashrc или /etc/bash.bashrc строку:

Шутливые оскорбления

Вы можете сконфигурировать sudo так, чтобы при вводе неверного пароля он выводил шутливые оскорбления вместо стандартного сообщения «Sorry, try again». Найдите строку Defaults в /etc/sudoers и добавьте insults в список опции, разделяя их запятыми. Конечный результат может выглядеть так:

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

Вы можете сконфигурировать sudo так, чтобы он спрашивал пароль суперпользователя вместо пароля текущего пользователя, добавив targetpw или rootpw в список опций Defaults в /etc/sudoers :

Чтобы не разглашать пароль root пользователям, вы можете запретить это определённым группам:

Отключение учетной записи root

Вы можете захотеть отключить возможность входа систему пользователя root. Без этого атакующие сначала должны будут угадать имя пользователя, сконфигурированного как sudoer, а также пароль этого пользователя. Смотрите для примера Secure Shell (Русский)#Отключение.

Пароль пользователя root можно заблокировать с помощью passwd :

Аналогичная команда разблокирует пароль пользователя root:

Также вы можете отредактировать /etc/shadow и заменить зашифрованный пароль root на «!»:

Тогда, чтобы задать новый пароль и тем самым разблокировать пользователя root:

Чтобы gksu использовал sudo по умолчанию, выполните:

kdesu

kdesu можно использовать в KDE для запуска графических программ с привилегиями суперпользователя. Вероятно, что kdesu по умолчанию будет пытаться использовать su, даже если аккаунт root отключен. К счастью, можно сказать kdesu использовать sudo вместо su. Создайте/отредактируйте файл

/.config/kdesurc для kf5 версии kdesu):

или используйте следующую команду (используйте kwriteconfig5 для kf5 версии kdesu):

Также вы можете установить kdesudo AUR из AUR, который поддерживает улучшенное автодополнение по Tab при вводе команды.

Еще один пример настройки

Отредактировать /etc/pam.d/su и /etc/pam.d/su-1 Потребовать, чтобы пользователь был в группе wheel, но никого в неё не добавлять.

Ограничить вход по SSH для группы ‘ssh’. В эту группу будет входить только «joe».

Добавить пользователей в другие группы.

Установить права на настройки так, чтобы devel мог редактировать их.

С такими настройками вам практически никогда не понадобится входить как суперпользователь.

«Joe» может подсоединиться к своему домашнему WiFi.

«Joe» не может использовать netctl от имени другого пользователя.

Но «joe» не может переключиться на суперпользователя.

Если «joe» хочет начать gnu-screen сессию как admin, он может сделать это следующим образом:

Настройка sudo с помощью вкладываемых в /etc/sudoers.d файлов

Решение проблем

Проблемы с TTY через SSH

Defaults опция requiretty всего лишь позволяет запускать sudo пользователям, если они имеют tty.

Показать привилегии пользователя

Вы можете узнать какими привилегиями обладает конкретный пользователь следующей командой:

Или узнать ваши собственные привилегии командой:

Наложение umask

Sudo накладывает на значение umask пользователя свою собственную (которая по умолчанию установлена в 0022). Это предотвращает sudo от создания файлов с более либеральными правами доступа, чем это позволяет umask пользователя. Несмотря на то, что это разумное значение по умолчанию, если не используется измененная umask, это может привести к ситуации, когда программа, запущенная через sudo может создавать файлы с правами доступа отличными от тех, которые создаются при запуске программы непосредственно суперпользователем. Для исправления таких ошибок sudo предоставляет возможность исправить umask, даже если желаемая umask более либеральна, чем установлено в umask пользователя. Добавив такие строки (используйте visudo ) вы измените поведение sudo по умолчанию:

Это установит sudo umask в umask суперпользователя по умолчанию (0022) и переопределит поведение по умолчанию, всегда используя указанную umask и независимо от umask пользователя.

Опции по умолчанию

Источник

ИТ База знаний

Полезно

— Онлайн генератор устойчивых паролей

— Онлайн калькулятор подсетей

— Руководство администратора FreePBX на русском языке

— Руководство администратора Cisco UCM/CME на русском языке

— Руководство администратора по Linux/Unix

Навигация

Серверные решения

Телефония

FreePBX и Asterisk

Настройка программных телефонов

Корпоративные сети

Протоколы и стандарты

Как использовать команду sudo в Linux

Sudo означает SuperUser DO и используется для доступа к файлам и операциям с ограниченным доступом. По умолчанию Linux ограничивает доступ к определенным частям системы, предотвращая компрометацию конфиденциальных файлов.

Онлайн курс по Linux

Мы собрали концентрат самых востребованных знаний, которые позволят тебе начать карьеру администратора Linux, расширить текущие знания и сделать уверенный шаг к DevOps

Sudo bash что это. laptop. Sudo bash что это фото. Sudo bash что это-laptop. картинка Sudo bash что это. картинка laptop

Как использовать команду sudo

Установка sudo

Пакет sudo установлен в большинстве дистрибутивов Linux.

Чтобы установить sudo используйте для Ubuntu и Debian:

или для CentOS и Fedora

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

Синтаксис

Опции

sudo можно использовать с дополнительными параметрами:

Sudo bash что это. 1. Sudo bash что это фото. Sudo bash что это-1. картинка Sudo bash что это. картинка 1

Примечание. Оставаться в системе как администратор ставит под угрозу безопасность сервера. Раньше администраторы использовали su (substitute user) для временного переключения на учетную запись администратора. Однако для команды su требуется вторая учетная запись пользователя и пароль, что не всегда возможно.

Предоставление привилегий sudo

Рассмотрим как добавить пользователя в эту группу.

RedHat и CentOS

Debian и Ubuntu

Использование visudo и группы sudoers

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

Sudo bash что это. 2. Sudo bash что это фото. Sudo bash что это-2. картинка Sudo bash что это. картинка 2

Сохраните и выйдите из файла.

Вот разбивка предоставленных привилегий sudo :

Тайм-аут пароля sudo

Если вы хотите изменить время ожидания для определенного пользователя, то добавьте имя пользователя.

Примеры sudo в Linux

Основное использование Sudo

1. Откройте окно терминала и попробуйте выполнить следующую команду:

2. Вы должны увидеть сообщение об ошибке. У вас нет необходимых разрешений для запуска команды.

Sudo bash что это. 3. Sudo bash что это фото. Sudo bash что это-3. картинка Sudo bash что это. картинка 3

3. Попробуйте ту же команду с sudo:

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

Sudo bash что это. 4. Sudo bash что это фото. Sudo bash что это-4. картинка Sudo bash что это. картинка 4

Выполнить команду от имени другого пользователя

1. Чтобы запустить команду от имени другого пользователя, введите в терминале следующую команду:

2. Система должна отображать ваше имя пользователя. Затем выполните следующую команду:

3. Введите пароль для другого пользователя, и команда whoami запустится и отобразит другого пользователя.

Sudo bash что это. 5. Sudo bash что это фото. Sudo bash что это-5. картинка Sudo bash что это. картинка 5

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

Эта команда переключает вашу командную строку на оболочку BASH от имени пользователя root :

Ваша командная строка должна измениться на:

Значение имени хоста будет сетевым именем этой системы. Имя пользователя будет текущим именем пользователя, вошедшим в систему.

Sudo bash что это. 6. Sudo bash что это фото. Sudo bash что это-6. картинка Sudo bash что это. картинка 6

Выполнить предыдущие команды с помощью sudo

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

Это также работает со старыми командами. Укажите исторический номер следующим образом:

В этом примере повторяется 6-я запись в истории с командой sudo.

Запуск нескольких команд в одной строке

Соедините несколько команд вместе, разделенных точкой с запятой:

Sudo bash что это. 7. Sudo bash что это фото. Sudo bash что это-7. картинка Sudo bash что это. картинка 7

Добавить строку текста в существующий файл

Sudo bash что это. 8. Sudo bash что это фото. Sudo bash что это-8. картинка Sudo bash что это. картинка 8

Заключение

Теперь вы узнали про команду sudo и про то, как ее использовать.

Sudo bash что это. rocket. Sudo bash что это фото. Sudo bash что это-rocket. картинка Sudo bash что это. картинка rocket

Полезно?

Почему?

😪 Мы тщательно прорабатываем каждый фидбек и отвечаем по итогам анализа. Напишите, пожалуйста, как мы сможем улучшить эту статью.

😍 Полезные IT – статьи от экспертов раз в неделю у вас в почте. Укажите свою дату рождения и мы не забудем поздравить вас.

Источник

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

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

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

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

Sudo bash что это. intro. Sudo bash что это фото. Sudo bash что это-intro. картинка Sudo bash что это. картинка intro

Команда 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 с этим логином можно будет в любой момент.

Sudo bash что это. 1. Sudo bash что это фото. Sudo bash что это-1. картинка Sudo bash что это. картинка 1

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

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

adduser den
passwd den

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

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

which nano
/bin/nano

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

Sudo bash что это. 2. Sudo bash что это фото. Sudo bash что это-2. картинка Sudo bash что это. картинка 2

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

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

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

den ALL= /sbin/poweroff

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

Sudo bash что это. 3. Sudo bash что это фото. Sudo bash что это-3. картинка Sudo bash что это. картинка 3

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

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

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

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

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

Sudo bash что это. 4. Sudo bash что это фото. Sudo bash что это-4. картинка Sudo bash что это. картинка 4

Рис. 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.

Sudo bash что это. 5. Sudo bash что это фото. Sudo bash что это-5. картинка Sudo bash что это. картинка 5

Рис. 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 не будет опубликован. Обязательные поля помечены *