что такое sudo в линукс

Команды su и sudo в Linux. В чем разница?

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

su против sudo

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

su и sudo — это два разных способа получить привилегии суперпользователя (root), обладающего максимальными правами и возможностью делать с системой всё, что угодно. В Windows такая учетная запись носит название «Администратор». Обычные (непривилегированные) пользователи в Linux сильно ограничены в таких правах: у них нет возможности производить запись в системные каталоги, управлять системными процессами и т.п. Поэтому для выполнения чего-то, что требует повышенных привилегий, и применяются команды su и sudo.

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

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

Команда su

Примечание: В большинстве случаев, команда su (с дефисом и без) используется только для переключения на суперпользователя (root), хотя она может переключить вас и на другого ( [имя_пользователя] ) пользователя.

что такое sudo в линукс. 1 1. что такое sudo в линукс фото. что такое sudo в линукс-1 1. картинка что такое sudo в линукс. картинка 1 1.

Как работает команда su?

Чтобы вызвать оболочку другого пользователя с окружением и рабочим каталогом текущего пользователя, используйте команду su (без дефиса). Например, если вы хотите работать от имени пользователя ravesli, выполните:

Затем введите пароль для учетной записи ravesli и нажмите Enter.

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

что такое sudo в линукс. 2 1. что такое sudo в линукс фото. что такое sudo в линукс-2 1. картинка что такое sudo в линукс. картинка 2 1.

Как работает команда su –?

что такое sudo в линукс. 3 1. что такое sudo в линукс фото. что такое sudo в линукс-3 1. картинка что такое sudo в линукс. картинка 3 1.

Команда sudo

Команда sudo (от англ. «Substitute User and do««подменить пользователя и выполнить») используется в качестве префикса к командам Linux, позволяя вошедшему в систему пользователю выполнять команды, требующие привилегий root. В отличие от su, команда sudo требует ввода пароля текущего пользователя (выполняющего эту команду).

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

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

Добавление пользователя в группу sudoers

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

Например, чтобы добавить в группу sudoers учетную запись ravesli, вы должны ввести:

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

sudo getent group sudo

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

что такое sudo в линукс. 4 1. что такое sudo в линукс фото. что такое sudo в линукс-4 1. картинка что такое sudo в линукс. картинка 4 1.

user ALL=(ALL:ALL) ALL

что такое sudo в линукс. 4 1. что такое sudo в линукс фото. что такое sudo в линукс-4 1. картинка что такое sudo в линукс. картинка 4 1.

Нажмите Ctrl+X, а затем Y, чтобы сохранить файл. Вы также можете добавить пользователя в группу, указанную в файле /etc/sudoers. Пользователи групп, указанных в данном файле, автоматически получат привилегии sudo.

su и sudo в разных дистрибутивах Linux

su — это традиционный (более старый) способ переключения на учетную запись root (и получение повышенных прав) в Linux.

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

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

С другой стороны, другие дистрибутивы Linux, такие как Fedora, при установке создают обе учетные записи: обычного пользователя и суперпользователя (root).

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

Если вы используете Ubuntu-подобный дистрибутив (например, вышеупомянутый Linux Mint) и попытаетесь переключиться на пользователя root, то получите сообщение о сбое аутентификации:

что такое sudo в линукс. 5 1. что такое sudo в линукс фото. что такое sudo в линукс-5 1. картинка что такое sudo в линукс. картинка 5 1.

Чтобы активировать пользователя root, выполните команду passwd :

Затем установите пароль и нажмите Enter. В результате система должна уведомить вас, что пароль пользователя root был успешно обновлен:

что такое sudo в линукс. 6 1. что такое sudo в линукс фото. что такое sudo в линукс-6 1. картинка что такое sudo в линукс. картинка 6 1.

что такое sudo в линукс. 7. что такое sudo в линукс фото. что такое sudo в линукс-7. картинка что такое sudo в линукс. картинка 7.

Заключение

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

Поделиться в социальных сетях:

Как изменить приглашение командной оболочки bash в Linux?

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

Источник

HackWare.ru

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

Что такое sudo

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

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

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

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

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

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

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

что такое sudo в линукс. sudo. что такое sudo в линукс фото. что такое sudo в линукс-sudo. картинка что такое sudo в линукс. картинка 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 в линукс. useradd. что такое sudo в линукс фото. что такое sudo в линукс-useradd. картинка что такое sudo в линукс. картинка 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 в линукс. sudo 2. что такое sudo в линукс фото. что такое sudo в линукс-sudo 2. картинка что такое sudo в линукс. картинка 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.

Источник

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

Полезно

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

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

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

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

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

Навигация

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

Телефония

FreePBX и Asterisk

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

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

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

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

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

что такое sudo в линукс. rocket. что такое sudo в линукс фото. что такое sudo в линукс-rocket. картинка что такое sudo в линукс. картинка rocket.

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

Установка sudo

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

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

или для CentOS и Fedora

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

Синтаксис

Опции

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

что такое sudo в линукс. 1. что такое sudo в линукс фото. что такое sudo в линукс-1. картинка что такое sudo в линукс. картинка 1.

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

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

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

RedHat и CentOS

Debian и Ubuntu

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

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

что такое sudo в линукс. 2. что такое sudo в линукс фото. что такое sudo в линукс-2. картинка что такое sudo в линукс. картинка 2.

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

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

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

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

Примеры sudo в Linux

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

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

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

что такое sudo в линукс. 3. что такое sudo в линукс фото. что такое sudo в линукс-3. картинка что такое sudo в линукс. картинка 3.

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

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

что такое sudo в линукс. 4. что такое sudo в линукс фото. что такое sudo в линукс-4. картинка что такое sudo в линукс. картинка 4.

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

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

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

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

что такое sudo в линукс. 5. что такое sudo в линукс фото. что такое sudo в линукс-5. картинка что такое sudo в линукс. картинка 5.

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

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

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

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

что такое sudo в линукс. 6. что такое sudo в линукс фото. что такое sudo в линукс-6. картинка что такое sudo в линукс. картинка 6.

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

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

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

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

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

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

что такое sudo в линукс. 7. что такое sudo в линукс фото. что такое sudo в линукс-7. картинка что такое sudo в линукс. картинка 7.

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

что такое sudo в линукс. 8. что такое sudo в линукс фото. что такое sudo в линукс-8. картинка что такое sudo в линукс. картинка 8.

Заключение

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

что такое sudo в линукс. rocket. что такое sudo в линукс фото. что такое sudo в линукс-rocket. картинка что такое sudo в линукс. картинка rocket.

Полезно?

Почему?

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

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

Источник

HackWare.ru

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

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

Это вторая часть статьи, посвящённой команде sudo, если вы ещё не видели первую часть, то перейдите к ней «Что такое sudo».

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

Как обойти ограничения запуска команд с sudo

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

При этом очень важно, чтобы разрешённые для запуска с sudo файлы не имели у пользователя прав доступа на запись! Иначе ограничения sudo могут быть легко обойдены.

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

Она разрешает пользователю выполнять команды /home/admin/backup.sh и /usr/bin/apt. Может ли этот пользователь выполнить, например, такую команду:

Если вы не понимаете приведённую выше команду, то смотрите «Азы работы в командной строке Linux (часть 1)».

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

Итак, я выполняю вход под пользователем admin:

Теперь я (пользователь admin) хочу совершить злодейство — я хочу удалить папку /root/test1 принадлежащую ненавистному мне root’у:

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

что такое sudo в линукс. sudo rm. что такое sudo в линукс фото. что такое sudo в линукс-sudo rm. картинка что такое sudo в линукс. картинка sudo rm.

Опять неудача — пользователю admin разрешено выполнять только команду /usr/bin/apt и команду /home/admin/backup.sh. Проверяем права доступа на эти файлы:

У пользователя есть право записи, но пользователем является root.

Проверяем второй файл:

что такое sudo в линукс. ls. что такое sudo в линукс фото. что такое sudo в линукс-ls. картинка что такое sudo в линукс. картинка ls.

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

Записываем нашу зловредную команду в этот файл:

Добавляем права выполнения этому файлу, если вдруг их не было:

И запускаем этот файл с sudo:

что такое sudo в линукс. hack sudo. что такое sudo в линукс фото. что такое sudo в линукс-hack sudo. картинка что такое sudo в линукс. картинка hack sudo.

Как можно увидеть, программа завершилась без ошибки:

А папка /root/test1 больше не существует:

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

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

Во время ввода пароля sudo, терминал не даёт никакой обратной связи, то есть не показывае звёздочки и, будто бы, никак не реагирует. У меня даже спрашивали в комментариях под какой-то статьёй: «появляется запрос ввода пароля и система зависает». На самом деле система прекрасно работает и считывает введённый пароль, причём такой вариант является более безопасным, поскольку не позволяет посторонним увидеть длину пароля.

Тем не менее если вам хочется, чтобы в терминале при вводе пароля sudo отображались звёздочки (*******) по количеству введённых символов, как это сделано в большинстве приложений, то дальше будет показано как это настроить.

Откройте для редактирования конфигурационный файл sudo:

и добавьте к ней pwfeedback, чтобы строка стала выглядеть так:

что такое sudo в линукс. visudo. что такое sudo в линукс фото. что такое sudo в линукс-visudo. картинка что такое sudo в линукс. картинка visudo.

Если у вас редактор vim, то нажмите кнопку Esc, напечатайте :wq и нажмите ENTER. Если вы используете редактор nano, то нажмите Ctrl+x, затем y и нажмите ENTER для сохранения и закрытия файла.

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

Вот и всё, теперь каждый раз, когда вы вводите пароль в терминал, вы будете получать визуальный отзыв (****), как это показано на следующем скриншоте:

что такое sudo в линукс. asterisks sudo. что такое sudo в линукс фото. что такое sudo в линукс-asterisks sudo. картинка что такое sudo в линукс. картинка asterisks sudo.

Как увеличить или уменьшить длину сессии sudo

После ввода пароля пользователя для sudo? если вы хотите выполнить ещё одну команду с sudo, то в течение установленного промежутка времени у вас не будет спрошен пароль. Длина сессии, например, в Linux Mint составляет 15 минут. Если вы считаете, что длина сессии беспарольного выполнения команд sudo слишком маленькая или слишком большая, то далее показано, как её изменить.

Для установки таймпута пароля sudo, используется параметр timestamp_timeout. Вначале откройте файл /etc/sudoers с полномочиями суперпользователя, используя команды sudo и visudo примерно так:

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

что такое sudo в линукс. vim sudo. что такое sudo в линукс фото. что такое sudo в линукс-vim sudo. картинка что такое sudo в линукс. картинка vim sudo.

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

Для сохранения изменений нажмите Ctrl+o, затем ENTER и для выхода Ctrl+x.

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

По умолчанию sudo ведёт журнал действий через системный лог (journalctl). Чтобы сохранять журнал действий с sudo, добавьте следующую директиву:

Пример записей из файла /var/log/sudo.log:

В каждой записи присутствуют следующие поля:

При желании можно добавить в эти записи имя хоста и номер года, для этого используйте, соответственно, параметры log_host и log_year следующим образом:

Ниже пример настроенного файла журнала sudo:

что такое sudo в линукс. sudo.log. что такое sudo в линукс фото. что такое sudo в линукс-sudo.log. картинка что такое sudo в линукс. картинка sudo.log.

Как сохранить ввод и вывод команд с sudo

Можно не только просматривать команды, которые выполнялись с sudo, но и сохранять ввод и вывод этих команд. Использование параметров log_input и log_output включает запуск команды sudo в псевдо tty и ведёт журнал всего ввода и вывода, отправленного на экран:

По умолчанию данные сохраняются в директорию /var/log/sudo-io и, если имеется порядковый номер сеанса, то они сохраняются в директорию seq Вы можете настроить директорию хранения, структуру папок и имена файлов параметрами iolog_dir и iolog_file. По умолчанию данные будут сохраняться в структуре папок начиная с 00/00/01 и далее:

что такое sudo в линукс. sudo io. что такое sudo в линукс фото. что такое sudo в линукс-sudo io. картинка что такое sudo в линукс. картинка sudo io.

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

Когда пользователь вводит неверный пароль, соответствующее сообщение показывается в командной строке. По умолчанию сообщение на русском «Попробуйте ещё раз.», а на английском «sorry, try again». Вы можете отредактирвоать это сообщение используя параметр badpass_message примерно так:

Как увеличить количество попыток ввода пароля sudo

Параметр passwd_tries используется для указания числа попыток, которое пользователь может сделать при вводе пароля. По умолчанию это значение равняется 3.

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

Опции sudo

Кроме уже рассмотренных имеется несколько других опций, которые могут пригодиться в той или иной ситуации:

Источник

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

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