Шпаргалка по работе с SUDO

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

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

Введение

Утилита sudo (от англ. «substitute user do» — «выполнить от имени другого пользователя») позволяет пользователям запускать программы от имени суперпользователя (root) или другого пользователя с повышенными привилегиями. Это полезно, когда необходимо выполнить действия, требующие административных прав, без необходимости входа в систему под учётной записью root.

Основные принципы работы с sudo

  1. Запуск команд с помощью sudo: чтобы выполнить команду от имени суперпользователя, нужно ввести в терминале sudo перед командой. Например, чтобы обновить список пакетов в системе, можно использовать команду sudo apt update.
  2. Ввод пароля: при первом использовании sudo в текущем сеансе терминала потребуется ввести пароль пользователя. Это сделано для того, чтобы убедиться, что пользователь имеет права на выполнение команд с повышенными привилегиями.
  3. Временный доступ: после ввода пароля sudo предоставляет временный доступ к выполнению команд от имени суперпользователя в течение определённого времени (по умолчанию 15 минут). Это позволяет избежать повторного ввода пароля при выполнении нескольких команд подряд.
  4. Ограничение доступа: администраторы могут настроить ограничения на использование sudo для разных пользователей. Например, можно разрешить выполнение только определённых команд или ограничить время доступа.
  5. Журнал действий: все команды, выполненные с помощью sudo, записываются в журнал системы. Это позволяет отслеживать действия пользователей и обеспечивать безопасность системы.

Примеры использования sudo

  • Установка пакетов: sudo apt install package_name
  • Обновление системы: sudo apt update && sudo apt upgrade
  • Редактирование системных файлов: sudo nano /etc/hostname
  • Перезагрузка системы: sudo reboot

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

Чтобы открыть файл конфигурации sudo в редакторе nano, выполните следующую команду:

sudo SUDO_EDITOR=nano visudo

Это позволит вам редактировать файл sudoers безопасно и удобно.

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

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

su -c visudo

Это даст вам возможность редактировать файл sudoers и добавлять пользователей в группу с правами sudo.

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

Вы можете настроить права доступа для определённых групп и пользователей. Например, для группы wheel можно задать следующие права:

%wheel ALL=(ALL:ALL) ALL

Это означает, что все члены группы wheel могут выполнять все команды от имени любого пользователя на всех хостах.

Для пользователя tux можно задать следующие права:

tux ALL=(ALL) ALL

Это означает, что пользователь tux может выполнять все команды на всех хостах.

Настройка переменных окружения

Вы можете задать новую переменную PATH во время использования sudo:

Defaults secure_path="$PATH:/sbin"

Это позволит вам указать дополнительные пути для поиска команд.

Настройка уведомлений и логов

При неверном вводе пароля можно отправлять уведомление администратору:

Defaults mail_badpass

Можно включить логирование вывода команд, за исключением вывода sudoreplay:

Defaults log_output
Defaults!/usr/bin/sudoreplay !log_output
Defaults!REBOOT !log_output

Сохранение переменных окружения пользователя

Чтобы сохранить большинство переменных окружения пользователя, используйте опцию env_keep вместе с переменными, которые вы хотите сохранить:

Defaults env_reset
Defaults env_keep = "COLORS DISPLAY HOSTNAME HISTSIZE KDEDIR LS_COLORS"
Defaults env_keep += "MAIL PS1 PS2 QTDIR USERNAME LANG LC_ADDRESS LC_CTYPE"
Defaults env_keep += "LC_COLLATE LC_IDENTIFICATION LC_MEASUREMENT LC_MESSAGES"
Defaults env_keep += "LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER LC_TELEPHONE"
Defaults env_keep += "LC_TIME LC_ALL LANGUAGE LINGUAS _XKB_CHARSET XAUTHORITY"

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

Заключение

Утилита sudo является мощным инструментом для управления системой Linux. Она позволяет пользователям выполнять команды от имени суперпользователя, обеспечивая при этом безопасность и контроль над доступом к системным ресурсам. Правильное использование sudo может значительно упростить администрирование системы и повысить её безопасность.

Похожие записи

Полное руководство по развертыванию GlusterFS в Ubuntu Linux: от подготовки до тестирования производительности

GlusterFS — это масштабируемая, распределённая файловая система с открытым исходным кодом, которая объединяет хранилища нескольких серверов в единое пространство имён. Она идеально подходит для создания отказоустойчивых и высокопроизводительных хранилищ, особенно…

Подробная инструкция по настройке кластера из трёх серверов MySQL на Ubuntu 24.04

Запихать Mysql в Kubernetes оказалось не очень хорошей идеей и я решил основательно пересмотреть инфраструктуру своего pet-проекта и за основу будет принят кластер из трех серверов. На каждом узле кластера…

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

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

Читать еще статьи

Полное руководство по развертыванию GlusterFS в Ubuntu Linux: от подготовки до тестирования производительности

Полное руководство по развертыванию GlusterFS в Ubuntu Linux: от подготовки до тестирования производительности

Подробная инструкция по настройке кластера из трёх серверов MySQL на Ubuntu 24.04

Подробная инструкция по настройке кластера из трёх серверов MySQL на Ubuntu 24.04

Полное руководство по настройке NFS-клиента в Ubuntu Linux: от установки до автоматического монтирования

Полное руководство по настройке NFS-клиента в Ubuntu Linux: от установки до автоматического монтирования

Как проверить работу камеры в Ubuntu Linux: диагностика USB и встроенных веб-камер

Как проверить работу камеры в Ubuntu Linux: диагностика USB и встроенных веб-камер

Полное руководство по установке Docker, Docker Compose, kubectl, Helm и k9s в Linux

Полное руководство по установке Docker, Docker Compose, kubectl, Helm и k9s в Linux

Настройка маршрутизации через VipNet: пошаговое руководство для RedOS

Настройка маршрутизации через VipNet: пошаговое руководство для RedOS