NEWROLE(1)

ИМЯ
newrole - запустить оболочку с новой ролью SELinux

ОБЗОР
newrole [-r|--role] ROLE [-t|--type] TYPE [-l|--level] [-p|--preserve-environment] LEVEL [-- [ARGS]...]

ОПИСАНИЕ

Запустить новую оболочку в новом контексте. Новый контекст берётся из старого контекста, в котором изначально исполнялась newrole. Если указан параметр -r или --role , новый контекст будет иметь роль, заданную ROLE. Если указан параметр -t или --type , новый контекст будет иметь тип (домен), заданный TYPE. Если указана роль, но не указан тип, тип по умолчанию берётся из указанной роли. Если указан параметр -l или --level , новый контекст будет иметь уровень конфиденциальности, заданный LEVEL. Если LEVEL является диапазоном, новый контекст будет иметь уровень конфиденциальности и допуск, заданные этим диапазоном. Если указан параметр -p или --preserve-environment , оболочка с новым контекстом SELinux сохранит переменные среды, в ином случае будет создана новая минимальная среда.

Дополнительные аргументы ARGS могут присутствовать после параметра --, в этом случае они передаются в новую оболочку. В частности, при использовании аргумента -- -c следующий аргумент будет обрабатываться как команда большинством интерпретаторов команд.

Если для newrole указан аргумент команды и имя команды найдено в /etc/selinux/newrole_pam.conf, будет использована служба pam, указанная в этом файле для команды, а не обычная конфигурация pam для newrole. Это позволяет устанавливать конфигурацию pam для каждой команды при вызове через newrole, например, чтобы пропустить этап интерактивной повторной аутентификации.

Новой оболочкой будет оболочка, указанная в записи пользователя в файле /etc/passwd.

-V или --version показывает текущую версию newrole

ПРИМЕР
Смена роли:
   # id -Z
   staff_u:staff_r:staff_t:SystemLow-SystemHigh
   # newrole -r sysadm_r
   # id -Z
   staff_u:sysadm_r:sysadm_t:SystemLow-SystemHigh

Смена только уровня конфиденциальности:
   # id -Z
   staff_u:sysadm_r:sysadm_t:Unclassified-SystemHigh
   # newrole -l Secret
   # id -Z
   staff_u:sysadm_r:sysadm_t:Secret-SystemHigh

Смена уровня конфиденциальности и допуска:
   # id -Z
   staff_u:sysadm_r:sysadm_t:Unclassified-SystemHigh
   # newrole -l Secret-Secret
   # id -Z
   staff_u:sysadm_r:sysadm_t:Secret

Запуск программы с указанной ролью или уровнем:
   # newrole -r sysadm_r -- -c "/path/to/app arg1 arg2..."
   # newrole -l Secret -- -c "/path/to/app arg1 arg2..."

ФАЙЛЫ
/etc/passwd - информация об учётных записях пользователей
/etc/shadow - зашифрованные пароли и информация об устаревании паролей
/etc/selinux/<policy>/contexts/default_type - типы по умолчанию для ролей
/etc/selinux/<policy>/contexts/securetty_types - типы securetty для изменений уровня
/etc/selinux/newrole_pam.conf - необязательное сопоставление команд с отдельными службами pam

СМОТРИТЕ ТАКЖЕ
runcon(1)

АВТОРЫ
Anthony Colatrella
Tim Fraser
Steve Grubb <sgrubb@redhat.com>
Darrel Goeddel <DGoeddel@trustedcs.com>
Michael Thompson <mcthomps@us.ibm.com>
Dan Walsh <dwalsh@redhat.com>
Перевод на русский язык выполнила Герасименко Олеся <gammaray@basealt.ru>