semodule − управление модулями политики SELinux.
semodule [option]... MODE...
semodule - это утилита, которая используется для управления модулями политики SELinux, включая установку, обновление, вывод списка и удаление модулей. semodule также можно использовать для принудительной пересборки политики из хранилища модулей и/или для принудительной перезагрузки политики без выполнения других транзакций. semodule применяется к пакетам модулей, созданным с помощью semodule_package. По соглашению эти файлы имеют суффикс .pp (пакет политики), хотя это никак не регламентируется.
−R, −−reload
принудительно перезагрузить политику
−B, −−build
принудительно пересобрать политику (также выполнит перезагрузку, если не используется −n)
−D, −−disable_dontaudit
временно удалить правила dontaudit из политики (изменения отменяются при пересборке политики)
−i,−−install=MODULE_PKG
установить/заменить пакет модуля
−u,−−upgrade=MODULE_PKG
устарел, псевдоним для --install
−b,−−base=MODULE_PKG
устарел, псевдоним для --install
−r,−−remove=MODULE_NAME
удалить существующий модуль с указанным приоритетом (по умолчанию: -X 400)
−l[KIND],−−list-modules[=KIND]
вывести список установленных модулей (отличных от базовых)
KIND: |
standard
вывести модули с высшим приоритетом, включённые, небазовые
full |
вывести все модули |
−X,−−priority=PRIORITY
установить приоритет для следующих операций (1-999)
−e,−−enable=MODULE_NAME
включить модуль
−d,−−disable=MODULE_NAME
отключить модуль
−E,−−extract=MODULE_PKG
извлечь модуль из хранилища в текущий каталог как файл HLL или CIL. По умолчанию модуль извлекается как файл HLL. Имя записываемого модуля - <module-name>.<lang_ext>
−s,−−store
имя хранилища, над которым следует выполнить операцию
−n,−−noreload,−N
не перезагружать политику после фиксации
−h,−−help
вывести справочное сообщение и выйти
−P,−−preserve_tunables
сохранить настраиваемые параметры в политике
−C,−−ignore-module-cache
перекомпилировать модули CIL, собранные из файлов HLL
−p,−−path
использовать альтернативный путь для корневого расположения политики
−S,−−store-path
использовать альтернативный путь для корневого расположения хранилища политики
−v,−−verbose
подробно
−c,−−cil
извлечь модуль как файл CIL. Это влияет только на параметр −−extract и модули, перечисленные в −−extract после этого параметра.
−H,−−hll
извлечь модуль как файл HLL. Это влияет только на параметр −−extract и модули, перечисленные в −−extract после этого параметра.
#
Установить
или
заменить
базовый
пакет
политики.
$ semodule −b base.pp
#
Установить
или
заменить
небазовый
пакет
политики.
$ semodule −i httpd.pp
#
Установить
или
заменить
все
небазовые
модули в
текущем
каталоге.
# Этот
синтаксис
можно
использовать
с -i/u/r/E, но
после
имён
модулей
нельзя
вводить
какие-либо
другие
параметры.
$ semodule −i *.pp
#
Установить
или
заменить
все
модули в
текущем
каталоге.
$ ls *.pp | grep −Ev
"base.pp|enableaudit.pp" | xargs
/usr/sbin/semodule −b base.pp −i
# Вывести
список
небазовых
модулей.
$ semodule −l
# Вывести
список
всех
модулей,
включая
их
приоритет.
$ semodule −lfull
# Удалить
модуль с
приоритетом
100.
$ semodule −X 100 −r wireshark
# Включить
все
сообщения
кэша
вектора
доступа (AVC),
для
которых SELinux
сейчас
использует
правила
"dontaudit".
$ semodule −DB
# Включить
правила
"dontaudit"
обратно.
$ semodule −B
#
Отключить
модуль
(будут
отключены
все
экземпляры
данного
модуля
независимо
от их
приоритета).
$ semodule −d alsa
#
Установить
модуль с
указанным
приоритетом.
$ semodule −X 100 −i alsa.pp
# Вывести
список
всех
модулей.
$ semodule −−list=full
#
Установить
альтернативный
путь для
корневого
расположения
политики.
$ semodule −B −p "/tmp"
#
Установить
альтернативный
путь для
корневого
расположения
хранилища
политики.
$ semodule −B −S
"/tmp/var/lib/selinux"
# Записать
HLL-версию
модуля puppet и
CIL-версию
модуля wireshark
# с
приоритетом
400 в
текущий
рабочий
каталог
$ semodule −X 400 −−hll −E puppet
−−cil −E wireshark
checkmodule(8), semodule_package(8)
Эта
страница
руководства
была
написана Dan
Walsh <dwalsh@redhat.com>.
Программа
была
написана
Karl MacMillan <kmacmillan@tresys.com>, Joshua Brindle
<jbrindle@tresys.com>, Jason Tang
<jtang@tresys.com>.
Перевод
на
русский
язык
выполнила
Герасименко
Олеся
<gammaray@basealt.ru>