ГлавнаяОперационные системыLinuxЧто такое Doas и как его установить

Что такое Doas и как его установить

Doas — это программа повышения привилегий, похожая на sudo. Он спроектирован так, чтобы быть максимально легким и простым. Это программа повышения привилегий по умолчанию для OpenBSD, но она также доступна для других UNIX-подобных операционных систем через программу OpenDoas.

Читайте также: Различия между Su, Sudo Su, Sudo -s и Sudo -i

Проблема с sudo

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

Проблема с sudo

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

Например, чтобы изменить поведение sudo, вам нужно запустить команду visudo. Это специальная программа-загрузчик, которая открывает файл «/etc/sudoers» в «безопасном режиме».

Visudo делает несколько вещей: он регулярно проверяет синтаксические ошибки в файле «/etc/sudoers» и блокирует файл «/etc/sudoers», чтобы никто, кроме текущего пользователя, не мог его редактировать. На первый взгляд они могут показаться полезными, но visudo — это признак растущей сложности sudo.

Доас 01 Визудо

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

Sudo — замечательная программа. Его комплекс синтаксис конфигурации может создавать сложные системы разрешений, которые могут быть потенциально полезны опытному системному администратору.

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

Читайте также: Как проверить историю Sudo в Linux

Зачем использовать данные?

Цель Doas — решить сложную задачу sudo. Он был разработан для OpenBSD и был быстро портирован практически на любую систему Linux. Он призван быть быстрым и простым в использовании, а также простым в обслуживании и безопасным.

Синтаксис doas также отличается от синтаксиса sudo. Его настройка аналогична написанию простым английским языком. Например, в sudo синтаксис, позволяющий любому пользователю группового колеса выполнять действия от имени пользователя root без пароля:

%wheel ALL=(ALL) NOPASSWD: ALL

А вот в doas синтаксис гораздо проще понять:

permit nopass :wheel as root
Doas 02 Doas Конференция

Более того, для изменения конфигурации doas не требуется какая-либо специальная программа-загрузчик, такая как visudo. Пользователю нужно только отредактировать файл конфигурации с помощью любого текстового редактора, и пока у пользователя есть достаточные привилегии, он сможет вносить изменения в конфигурацию.

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

Читайте также: Как использовать Sudo без пароля в Linux

Как настроить doas с помощью sudo

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

Зачем использовать данные?

жете установить doas с помощью apt:

sudo apt install doas

В Arch Linux вы можете использовать pacman:

sudo pacman -Syu opendoas

В Fedora вы можете использовать dnf:

sudo dnf install opendoas

Для Void Linux вы можете использовать xbps:

sudo xbps-install opendoas

В моем случае я устанавливаю doas на Пустота Linux , поэтому использую XBPS.

Установка Doas 03 Xbps

Файл конфигурации doas

Установив doas, вы теперь можете редактировать файл «/etc/doas.conf», переключившись на пользователя root с помощью su.

su --command="nano /etc/doas.conf"

Su запросит ваш пароль root, после чего он либо откроет, либо создаст файл конфигурации с помощью nano.

Doas 06 Пустая конференция Doas

После этого вы можете заметить, что «doas.conf» пуст. Это совершенно другое по сравнению с visudo. Но, как мы обсуждали ранее, настройка doas относительно тривиальна.

Синтаксис конфигурации

Синтаксис doas.conf следующий:

permit|deny [options] identity [as target] [cmd command [args ...]]
  • Разрешить и Запретить определяют, будет ли правило разрешено.
  • Параметры  — это дополнительные настройки для doas. Наиболее полезными параметрами для обычного пользователя являются persist и nopass.
  • Идентификатор  — это пользователь или группа, выполняющие задачи.
  • as target — это пользователь, от имени которого может или не может работать «Идентификация».
  • cmd — это команда, которую «Идентификация» может или не может запускать «как цель». По умолч

    Как настроить doas с помощью sudo

    в этом поле конкретную программу.
  • args — это аргументы, специфичные для указанной вами команды.

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

permit persist :wheel as root

Вы также можете создать правило, нацеленное только на конкретного пользователя для конкретной команды. Например, вы можете использовать следующее правило, чтобы разрешить пользователю «bob» запускать программу «apt» от имени пользователя root без запроса пароля.

permit nopass bob as root cmd apt

В моем случае я хочу, чтобы группа «wheel» запускалась от имени пользователя root без пароля. Я также не хочу, чтобы пользователь aga, входящий в группу Wheel, запускал какие-либо команды от имени пользователя root. Поэтому я напишу в своем «/etc/doas.conf» следующее:

permit nopass :wheel as root
deny aga as root
Doas 04 Заполненная Doas Conf

После настройки

После этого вам нужно выполнить несколько команд, чтобы уб

Файл конфигурации doas

ным образом. Во-первых, вам нужно будет правильно назначить root-права владельцу doas.conf:

sudo chown -c root:root /etc/doas.conf

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

sudo chmod -c 0644 /etc/doas.conf

Наконец, вам нужно будет проверить сам doas на наличие синтаксических ошибок в конфигурации. Для этого выполните следующую команду:

sudo doas -C /etc/doas.conf && echo "OK" || echo "ERROR"

Синтаксис конфигурации

decoding="async" src="https://saintist.ru/wp-content/uploads/2024/05/doas-05-final-settings.png" alt="Окончательные настройки Doas 05">

Поздравляем! Вы успешно установили и настроили doas для своей системы. Теперь вы можете начать использовать doas вместо sudo или настроить файл doas.conf по своему вкусу. Для получения дополнительной информации о системном администрировании в Linux вы можете прочитать Эта статья .

Также читайте: Как понизить версию ядра в Linux

Часто задаваемые вопросы

1. Кажется, моя конфигурация не работает. Я добавил правило для конкретного пользователя и общее правило, но правило для пользователя, похоже, не работает.

Файл конфигурации doas работает от самых общих правил до самых конкретных. Чтобы ваша конфигурация работала, вам необходимо сначала указать правило, которое применяется ко всем пользователям. Затем вы можете указать под ним правило, ориентированное на одного пользователя.

2. Можно ли сохранить sudo и doas в одной системе?

Да! Doas и sudo — две разные программы. Они не конфликтуют друг с другом, и можно оставить sudo в системе и использовать doas.

3. Можно ли получить root-оболочку с помощью doas?

Да, при условии, что вы правильно настроили файл конфигурации. Вы можете запустить корневую оболочку, запустив doas -s.

После настройки

Часто задаваемые вопросы

1. Кажется, моя конфигурация не работает. Я добавил правило для конкретного пользователя и общее правило, но правило для пользователя, похоже, не работает.

2. Можно ли сохранить sudo и doas в одной системе?

3. Можно ли получить root-оболочку с помощью doas?

ПОХОЖИЕ СТАТЬИ

Популярные записи