Astra linux sudo users

Введение

FreeIPA позволяет настраивать правила разрешения и запрета на использование sudo для пользователей и групп пользователей. В правилах могут задаваться:

  • пользователи (группы пользователей), к которым применяются правила;
  • команды (группы команд), которые можно (нельзя) выполнять этим пользователям с применением sudo ;
  • хосты (группы хостов), на которых применяется правило;
  • опции команды sudo , использующиеся при применении правила.

При инициализации контроллера (реплики) FreeIPA или при вводе клиента в домен FreeIPA система автоматически конфигурируется так, чтобы команда sudo использовала доменную службу sssd как источник данных о разрешениях использования sudo . Эта конфигурация задается в файле /etc/nsswitch.conf :

  • files — использовать данные из локального файла /etc/sudoers ;
  • sss — использовать данные, предоставленные службой sssd .

Служба sssd настроена таким образом, чтобы получать данные по правилам sudo от доменной службы каталогов (LDAP). Подробная информация по работе команды sudo приведена в справочной системе man sudo , man sudoers .

Правила sudo не могут применяться к встроенной доменной группе хостов ipaserver , т. к. эта группа не имеет свойства mepmanagedentry , следовательно, не имеет в objectclass запись mepOriginEntry , что необходимо для идентификации группы. Это является особенностью схемы в FreeIPA .

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

Регистрация команд

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

  1. Войти в веб-интерфейс FreeIPA.
  2. Перейти во вкладку Политика .
  3. В ыбрать в выпадающем меню Sudo — Команды Sudo и нажать Добавить .
  4. В появившемся окне:
    1. Указать полный путь расположения команды, которая должна выполняться от имени sudo (например, для редактора nano — /usr/bin/nano );
      Узнать полный путь расположения команды можно командой which , например:

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

    Опционально указать описание команды в произвольной форме (например, Текстовый редактор nano):

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

    Создание правила

    Для создания нового правила sudo :

    1. Перейти во вкладку Политика.
    2. Выбрать в выпадающем меню Sudo— Правила Sudo.
    3. Нажать кнопку Добавить и ввести имя правила.
    4. Нажать кнопку Добавить и изменить, будет создано «пустое» правило и откроется форма настройки его параметров:
      1. Раздел Основные содержит поля:
        1. Порядок Sudo — необязательный приоритет правила. Представляется целым числом, определяет очередность выполнения правила. Правила с большим значением выполняются раньше;
        2. Описание — необязательный комментарий к правилу;
      2. Раздел Параметры — параметры для команды sudo . Например, наиболее распространенная опция — не запрашивать пароль у пользователя при использовании команды sudo (опция !authenticate ). Если в правиле указать эту опцию, то указанные в правиле команды можно будет выполнять через sudo без ввода пароля, если опция не используется, то потребуется ввести пароль пользователя, выполняющего команду.

        Удаление или отключение правила

        Для удаления или отключения правила:

        1. Выбрать из списка правило, которое необходимо отключить или удалить;
        2. Для отключения правила нажать кнопку Отключить , для удаления — Удалить .

        Объединение команд в группу

        Для удобства управления команды можно объединять в группы. Для этого:

        1. Перейти во вкладку Политика.
        2. Выбрать в выпадающем меню Sudo — Группы команд Sudo.
        3. Нажать кнопку Добавить и ввести имя группы.
        4. Нажать кнопку Добавить и изменить и добавить команды, которые следует объединить в группу.

        Источник

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

        img

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

        Команда sudo временно повышает привилегии, позволяя пользователям выполнять конфиденциальные задачи без входа в систему как пользователь root . В этом руководстве вы узнаете, как использовать команду sudo в Linux с примерами.

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

        Установка sudo

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

        Чтобы проверить есть ли у вас эта комманда введите sudo . Вы увидите справочное сообщение или сообщение о том что комнада не найдена.

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

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

        Синтаксис

        Опции

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

        • -h — отображает синтаксис и параметры команды
        • -V — отображает текущую версию приложения sudo
        • -v — обновить лимит времени на sudo без запуска команды
        • -l — перечисляет права пользователя или проверяет конкретную команду
        • -к — завершить текущие привилегии sudo

        Дополнительные параметры можно найти с помощью ключа -h .

        sudo -h

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

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

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

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

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

        RedHat и CentOS

        В Redhat и CentOS wheel группа контролирует пользователей sudo . Добавьте пользователя в группу wheel с помощью следующей команды:

        usermod –aG wheel [username]

        Замените [username] фактическим именем пользователя. Возможно, вам потребуется войти в систему как администратор или использовать команду su .

        Debian и Ubuntu

        В Debian и Ubuntu группа sudo (sudo group) контролирует пользователей sudo . Добавьте пользователя в группу sudo с помощью следующей команды:

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

        В некоторых современных версиях Linux пользователи добавляются в файл sudoers для предоставления привилегий. Это делается с помощью команды visudo .

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

        Это откроет /etc/sudoers для редактирования. Чтобы добавить пользователя и предоставить полные права sudo , добавьте следующую строку:

        ALL=(ALL:ALL) ALL

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

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

        [username] [any-hostname]=([run-as-username]:[run-as-groupname]) [commands-allowed]

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

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

        По умолчанию sudo просит вас ввести пароль после нескольких минут бездействия. Изменить это время ожидания по умолчанию, можно отредактировав файл sudoers с помощью visudo и измените время ожидания, добавив строку как в примере, где 10 — это время ожидания, указанное в минутах:

        sudo visudo Defaults timestamp_timeout=10

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

        Defaults:user_name timestamp_timeout=10

        Примеры sudo в Linux

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

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

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

        apt-get update

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

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

        sudo apt-get update

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

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

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

        sudo –u [другое_имя_пользователя] whoami

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

        whoami

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

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

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

        root@hostname:/home/[имя пользователя]

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

        sudo bash

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

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

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

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

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

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

        sudo ls; whoami; hostname

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

        Добавление строки текста в файл часто используется для добавления имени репозитория программного обеспечения к исходному файлу без открытия файла для редактирования. Используйте следующий синтаксис с командами echo , sudo и tee :

        echo ‘string-of-text’ | sudo tee –a [path_to_file]
        echo "deb http://nginx.org/packages/debian `lsb_release -cs` nginx" | sudo tee /etc/apt/sources.list.d/nginx.list

        echo ‘string-of-text’ | sudo tee –a [path_to_file]

        Заключение

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

        Источник

        Читайте также:  Особенности архитектуры ос linux
Оцените статью
Adblock
detector