Использование команд su и sudo

Команда su (используемая IBM® UrbanCode Deploy) позволяет пользователю запускать оболочку от имени другого пользователя (шаги процесса могут рассматриваться как индивидуальные оболочки).

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

Перед тем как использовать команду sudo, в файле /etc/sudoers необходимо определить привилегии для работы от имени другого пользователя. При настройке sudoers убедитесь в том, что пользователю, работающему от имени другого пользователя, не требуется вводить пароль. Обычно файл /etc/sudoers имеет следующий вид:

Defaults:X !requiretty 
X ALL=(Y) NOPASSWD: ALL 

где X и Y - это имена пользователей. В результате такой настройки пользователь X может выполнять любые команды как пользователь Y, не вводя пароль.

su и sudo записывают все свои операции в системные протоколы. Команда su может использоваться без настройки файлаsudoers. За информацией о командах su/sudo обратитесь к документации по UNIX или Linux.

Прим.: Для агентов UNIX или Linux опция пароля игнорируется.
Для настройки команд su и sudo можно задать следующие свойства агента в файле installed.properties:
Табл. 1. Свойства агента для команд su и sudo
Свойство Значение по умолчанию Описание
com.urbancode.shell.impersonation.unix.sudoFormat %s -n -u %u %c Синтаксис команды sudo
com.urbancode.shell.impersonation.unix.sudoGroupFormat %s -n -u %u -g %g %c Синтаксис команды sudo при указании группы
com.urbancode.shell.impersonation.unix.suFormat %s - %u -c %c Синтаксис команды su
Совет: Для задания этих свойств для новых агентов создайте универсальный процесс, который обновляет файл installed.properties, и выполните этот процесс на новых агентах.
В этих свойствах можно использовать следующие переменные:
Табл. 2. Переменные для команд su и sudo
Переменная Значение
%s Расположение исполняемого файла su или sudo
%u Пользователь
%g Группа
%c Выполняемая команда

Комментарии