From 28021c8d412eb3b6d3d7c94fd5742771230a9451 Mon Sep 17 00:00:00 2001 From: Daniel J Walsh Date: Oct 09 2007 20:53:38 +0000 Subject: - Fixes for consolekit and startx sessions --- diff --git a/policy-20070703.patch b/policy-20070703.patch index abe1b43..36e676f 100644 --- a/policy-20070703.patch +++ b/policy-20070703.patch @@ -266,6 +266,455 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/man/man8/httpd_selinux.8 ser .EX httpd_sys_script_rw_t .EE +diff --exclude-from=exclude -N -u -r nsaserefpolicy/man/ru/man8/ftpd_selinux.8 serefpolicy-3.0.8/man/ru/man8/ftpd_selinux.8 +--- nsaserefpolicy/man/ru/man8/ftpd_selinux.8 1969-12-31 19:00:00.000000000 -0500 ++++ serefpolicy-3.0.8/man/ru/man8/ftpd_selinux.8 2007-09-07 05:00:11.000000000 -0400 +@@ -0,0 +1,57 @@ ++.TH "ftpd_selinux" "8" "17 Янв 2005" "dwalsh@redhat.com" "ftpd Selinux Policy documentation" ++.SH "НАЗВАНИЕ" ++ftpd_selinux \- Политика Security Enhanced Linux для демона ftp ++.SH "ОПИСАНИЕ" ++ ++Security-Enhanced Linux обеспечивает защиту сервера ftpd при помощи гибко настраиваемого мандатного контроля доступа. ++.SH КОНТЕКСТ ФАЙЛОВ ++SELinux требует наличия у файлов расширенных атрибутов, определяющих тип файла. ++Политика управляет видом доступа демона к этим файлам. Если вы хотите организовать анонимный ++доступ к файлам, вы должны присвоить этим файлам и директориям контекст public_content_t. ++Таким образом, если вы создаете специальную директорию /var/ftp, то вам необходимо установить контекст для этой директории при помощи утилиты chcon. ++.TP ++chcon -R -t public_content_t /var/ftp ++.TP ++Если вы хотите задать директорию, в которую вы собираетесь загружать файлы, то вы должны ++установить контекст ftpd_anon_rw_t. Таким образом, если вы создаете специальную директорию /var/ftp/incoming, то вам необходимо установить контекст для этой директории при помощи утилиты chcon. ++.TP ++chcon -t public_content_rw_t /var/ftp/incoming ++.TP ++Вы также должны включить переключатель allow_ftpd_anon_write. ++.TP ++setsebool -P allow_ftpd_anon_write=1 ++.TP ++Если вы хотите сделать эти изменения постоянными, иными словами, чтобы данный контекст сохранялся ++при обновлении контекстов, вы должны добавить записи в файл file_contexts.local. ++.TP ++/etc/selinux/POLICYTYPE/contexts/files/file_contexts.local ++.br ++/var/ftp(/.*)? system_u:object_r:public_content_t ++/var/ftp/incoming(/.*)? system_u:object_r:public_content_rw_t ++ ++.SH ПЕРЕКЛЮЧАТЕЛИ (BOOLEANS) ++Политика SELinux для демона ftp настроена исходя из принципа наименьших привелегий. Таким ++образом, по умолчанию политика SELinux не позволяет пользователям заходить на сервер и ++читать содержимое их домашних директорий. ++.br ++Если вы настраиваете данную машину как ftpd-сервер и хотите, чтобы пользователи могли получать ++доступ к своим домашним директориям, то вам необходимо установить переключатель ftp_home_dir. ++.TP ++setsebool -P ftp_home_dir 1 ++.TP ++ftpd может функционировать как самостоятельный демон, а также как часть домена xinetd. Если вы ++хотите, чтобы ftpd работал как демон, вы должны установить переключатель ftpd_is_daemon. ++.TP ++setsebool -P ftpd_is_daemon 1 ++.br ++service vsftpd restart ++.TP ++Для управления настройками SELinux существует графическая утилита system-config-selinux. ++.SH АВТОРЫ ++Эту страницу руководства написал Dan Walsh . ++Перевод руководства - Андрей Маркелов , 2007г. ++ ++.SH "СМОТРИ ТАКЖЕ" ++selinux(8), ftpd(8), chcon(1), setsebool(8) ++ ++ +diff --exclude-from=exclude -N -u -r nsaserefpolicy/man/ru/man8/httpd_selinux.8 serefpolicy-3.0.8/man/ru/man8/httpd_selinux.8 +--- nsaserefpolicy/man/ru/man8/httpd_selinux.8 1969-12-31 19:00:00.000000000 -0500 ++++ serefpolicy-3.0.8/man/ru/man8/httpd_selinux.8 2007-09-26 04:12:15.000000000 -0400 +@@ -0,0 +1,137 @@ ++.TH "httpd_selinux" "8" "17 Янв 2005" "dwalsh@redhat.com" "httpd Selinux Policy documentation" ++.de EX ++.nf ++.ft CW ++.. ++.de EE ++.ft R ++.fi ++.. ++.SH "НАЗВАНИЕ" ++httpd_selinux \- Политика Security Enhanced Linux для демона httpd ++.SH "ОПИСАНИЕ" ++ ++Security-Enhanced Linux обеспечивает защиту сервера httpd при помощи гибко настраиваемого мандатного контроля доступа. ++.SH КОНТЕКСТ ФАЙЛОВ ++SELinux требует наличия у файлов расширенных атрибутов, определяющих тип файла. ++Политика управляет видом доступа демона к этим файлам. ++Политика SELinux для демона httpd позволяет пользователям настроить web-службы максимально безопасным методом с высокой степенью гибкости. ++.PP ++Для httpd определены следующие контексты файлов: ++.EX ++httpd_sys_content_t ++.EE ++- Установите контекст httpd_sys_content_t для содержимого, которое должно быть доступно для всех скриптов httpd и для самого демона. ++.EX ++httpd_sys_script_exec_t ++.EE ++- Установите контекст httpd_sys_script_exec_t для cgi-скриптов, чтобы разрешить им доступ ко всем sys-типам. ++.EX ++httpd_sys_script_ro_t ++.EE ++- Установите на файлы контекст httpd_sys_script_ro_t если вы хотите, чтобы скрипты httpd_sys_script_exec_t могли читать данные, и при этом нужно запретить доступ другим не-sys скриптам. ++.EX ++httpd_sys_script_rw_t ++.EE ++- Установите на файлы контекст httpd_sys_script_rw_t если вы хотите, чтобы скрипты httpd_sys_script_exec_t могли читать и писать данные, и при этом нужно запретить доступ другим не-sys скриптам. ++.EX ++httpd_sys_script_ra_t ++.EE ++- Установите на файлы контекст httpd_sys_script_ra_t если вы хотите, чтобы скрипты httpd_sys_script_exec_t могли читать и добавлять данные, и при этом нужно запретить доступ другим не-sys скриптам. ++.EX ++httpd_unconfined_script_exec_t ++.EE ++- Установите на cgi-скрипты контекст httpd_unconfined_script_exec_t если вы хотите разрешить ++им исполняться без какой-либо защиты SELinux. Такой способ должен использоваться только для ++скриптов с очень комплексными требованиями, и только в случае, если все остальные варианты настройки не дали результата. Лучше использовать скрипты с контекстом httpd_unconfined_script_exec_t, чем выключать защиту SELinux для httpd. ++ ++.SH ЗАМЕЧАНИЕ ++Вместе с некоторыми политиками, вы можете определить дополнительные контексты файлов, основанные ++на ролях, таких как user или staff. Может быть определен контекст httpd_user_script_exec_t, который будет иметь доступ только к "пользовательским" контекстам. ++ ++.SH СОВМЕСТНОЕ ВЛАДЕНИЕ ФАЙЛАМИ ++Если вы хотите организовать между несколькими доменами (Apache, FTP, rsync, Samba) совместный ++доступ к файлам, то вы можете установить контекст файлов в public_content_t и public_content_rw_t. ++Данный контекст позволяет любому из выше перечисленных демонов читать содержимое. ++Если вы хотите, чтобы конкретный домен имел право записи в домен public_content_rw_t, вы должны ++установить соответствующий переключатель allow_ДОМЕН_anon_write. Таким образом, для httpd вы должны выполнить команду: ++ ++.EX ++setsebool -P allow_httpd_anon_write=1 ++.EE ++ ++или ++ ++.EX ++setsebool -P allow_httpd_sys_script_anon_write=1 ++.EE ++ ++.SH ПЕРЕКЛЮЧАТЕЛИ (BOOLEANS) ++Политика SELinux настроена исходя из принципа наименьших привилегий. Таким образом, ++по умолчанию SELinux препятствует работе некоторых http-скриптов. Политика httpd весьма ++гибка, и существующие переключатели управляют политикой, позволяя httpd выполняться ++с наименее возможными правами доступа. ++.PP ++Если вы хотите, чтобы httpd мог исполнять cgi-скрипты, установите переключатель httpd_enable_cgi ++.EX ++setsebool -P httpd_enable_cgi 1 ++.EE ++ ++.PP ++По умолчанию демону httpd не разрешен доступ в домашние дерикториии пользователей. Если вы хотите разрешить доступ, вам необходимо установить переключатель httpd_enable_homedirs и изменить контекст ++тех файлов в домашних директориях пользователей, к которым должен быть разрешен доступ. ++ ++.EX ++setsebool -P httpd_enable_homedirs 1 ++chcon -R -t httpd_sys_content_t ~user/public_html ++.EE ++ ++.PP ++По умолчанию демон httpd не имеет доступ к управляющему терминалу. В большинстве случаев такое ++поведение является предпочтительным. Это связанно с тем, что злоумышленник может попытаться ++использовать доступ к терминалу для получения привилегий. Однако, в некоторых ситуациях демон ++httpd должен выводить запрос пароля для открытия файла сертификата и в таких случаях нужен доступ ++к терминалу. Для того, чтобы разрешить доступ к терминалу, установите переключатель httpd_tty_comm. ++.EX ++setsebool -P httpd_tty_comm 1 ++.EE ++ ++.PP ++httpd может быть настроен так, чтобы не разграничивать тип доступа к файлу на основании контекста. ++Иными словами, ко всем файлам, имеющим контекст httpd разрешен доступ на чтение/запись/исполнение. ++Установка этого переключателя в false, позволяет настроить политику безопасности таким образом, ++что одина служба httpd не конфликтует с другой. ++.EX ++setsebool -P httpd_unified 0 ++.EE ++ ++.PP ++Имеется возможность настроить httpd таким образом, чтобы отключить встроенную поддержку ++скриптов (PHP). PHP и другие загружаемые модули работают в том же контексте, что и httpd. ++Таким образом, если используются только внешние cgi-скрипты, некоторые из правил политики ++разрешают httpd больший доступ к системе, чем необходимо. ++ ++.EX ++setsebool -P httpd_builtin_scripting 0 ++.EE ++ ++.PP ++По умолчанию httpd-скриптам запрещено устанавливать внешние сетевые подключения. ++Это не позволит хакеру, взломавшему ваш httpd-сервер, атаковать другие машины. ++Если вашим скриптам необходимо иметь возможность подключения, установите переключатель ++httpd_can_network_connect ++ ++.EX ++setsebool -P httpd_can_network_connect 1 ++.EE ++ ++.PP ++Для управления настройками SELinux существует графическая утилита system-config-selinux. ++.SH АВТОРЫ ++Эту страницу руководства написал Dan Walsh . ++Перевод руководства - Андрей Маркелов , 2007г. ++ ++.SH "СМОТРИ ТАКЖЕ" ++selinux(8), httpd(8), chcon(1), setsebool(8) ++ ++ +diff --exclude-from=exclude -N -u -r nsaserefpolicy/man/ru/man8/kerberos_selinux.8 serefpolicy-3.0.8/man/ru/man8/kerberos_selinux.8 +--- nsaserefpolicy/man/ru/man8/kerberos_selinux.8 1969-12-31 19:00:00.000000000 -0500 ++++ serefpolicy-3.0.8/man/ru/man8/kerberos_selinux.8 2007-09-07 04:59:04.000000000 -0400 +@@ -0,0 +1,30 @@ ++.TH "kerberos_selinux" "8" "17 Янв 2005" "dwalsh@redhat.com" "kerberos Selinux Policy documentation" ++.de EX ++.nf ++.ft CW ++.. ++.de EE ++.ft R ++.fi ++.. ++.SH "НАЗВАНИЕ" ++kerberos_selinux \- Политика Security Enhanced Linux для Kerberos. ++.SH "ОПИСАНИЕ" ++ ++Security-Enhanced Linux защищает систему при помощи гибко настраиваемого мандатного контроля доступа. По умолчанию Kerberos запрещен, поскольку требуется функционирование демонов, ++которым предоставляется слишком обширный доступ к сети и некоторым чувствительным в плане безопасности файлам. ++ ++.SH ПЕРЕКЛЮЧАТЕЛИ (BOOLEANS) ++.PP ++Для того, чтобы система могла корректно работать в окружении Kerberos, вы должны установить переключатель allow_kerberos. ++.EX ++setsebool -P allow_kerberos 1 ++.EE ++.PP ++Для управления настройками SELinux существует графическая утилита system-config-selinux. ++.SH АВТОРЫ ++Эту страницу руководства написал Dan Walsh . ++Перевод руководства - Андрей Маркелов , 2007г. ++ ++.SH "СМОТРИ ТАКЖЕ" ++selinux(8), kerberos(1), chcon(1), setsebool(8) +diff --exclude-from=exclude -N -u -r nsaserefpolicy/man/ru/man8/named_selinux.8 serefpolicy-3.0.8/man/ru/man8/named_selinux.8 +--- nsaserefpolicy/man/ru/man8/named_selinux.8 1969-12-31 19:00:00.000000000 -0500 ++++ serefpolicy-3.0.8/man/ru/man8/named_selinux.8 2007-09-02 12:48:40.000000000 -0400 +@@ -0,0 +1,31 @@ ++.TH "named_selinux" "8" "17 Янв 2005" "dwalsh@redhat.com" "named Selinux Policy documentation" ++.de EX ++.nf ++.ft CW ++.. ++.de EE ++.ft R ++.fi ++.. ++.SH "НАЗВАНИЕ" ++named_selinux \- Политика Security Enhanced Linux для демона Internet Name server (named) ++.SH "ОПИСАНИЕ" ++ ++Security-Enhanced Linux обеспечивает защиту сервера named при помощи гибко настраиваемого мандатного контроля доступа. ++.SH ПЕРЕКЛЮЧАТЕЛИ (BOOLEANS) ++Политика SELinux настраивается исходя из принципа наименьших привилегий. Таким образом, ++по умолчанию политика SELinux не позволяет демону named осуществлять изменения файлов мастер-зоны. ++Если вам необходимо, чтобы named мог обновлять файлы мастер-зоны, вы должны установить переключатель named_write_master_zones boolean. ++.EX ++setsebool -P named_write_master_zones 1 ++.EE ++.PP ++Для управления настройками SELinux существует графическая утилита system-config-selinux. ++.SH АВТОРЫ ++Эту страницу руководства написал Dan Walsh . ++Перевод руководства - Андрей Маркелов , 2007г. ++ ++.SH "СМОТРИ ТАКЖЕ" ++selinux(8), named(8), chcon(1), setsebool(8) ++ ++ +diff --exclude-from=exclude -N -u -r nsaserefpolicy/man/ru/man8/nfs_selinux.8 serefpolicy-3.0.8/man/ru/man8/nfs_selinux.8 +--- nsaserefpolicy/man/ru/man8/nfs_selinux.8 1969-12-31 19:00:00.000000000 -0500 ++++ serefpolicy-3.0.8/man/ru/man8/nfs_selinux.8 2007-08-30 08:33:39.000000000 -0400 +@@ -0,0 +1,33 @@ ++.TH "nfs_selinux" "8" "17 Янв 2005" "dwalsh@redhat.com" "nfs Selinux Policy documentation" ++.SH "НАЗВАНИЕ" ++nfs_selinux \- Политика Security Enhanced Linux для NFS ++.SH "ОПИСАНИЕ" ++ ++Security-Enhanced Linux защищает сервер nfs при помощи гибко настраиваемого мандатного контроля доступа. ++.SH ПЕРЕКЛЮЧАТЕЛИ (BOOLEANS) ++Политика SELinux настраивается исходя из принципа наименьших привилегий. Таким образом, ++по умолчанию политика SELinux не позволяет предоставлять доступ к файлам по nfs. Если вы хотите ++разрешить доступ только на чтение к файлам этой машины по nfs, вы должны установить переключатель ++nfs_export_all_ro. ++ ++.TP ++setsebool -P nfs_export_all_ro 1 ++.TP ++Если вы хотите разрешить доступ на чтение/запись, вы должны установить переключатель nfs_export_all_rw. ++.TP ++setsebool -P nfs_export_all_rw 1 ++ ++.TP ++Если вы хотите использовать удаленный NFS сервер для хранения домашних директорий этой машины, ++то вы должны установить переключатель use_nfs_home_dir boolean. ++.TP ++setsebool -P use_nfs_home_dirs 1 ++.TP ++Для управления настройками SELinux существует графическая утилита ++system-config-selinux. ++.SH АВТОРЫ ++Эту страницу руководства написал Dan Walsh . ++Перевод руководства - Андрей Маркелов , 2007г. ++ ++.SH "СМОТРИ ТАКЖЕ" ++selinux(8), chcon(1), setsebool(8) +diff --exclude-from=exclude -N -u -r nsaserefpolicy/man/ru/man8/rsync_selinux.8 serefpolicy-3.0.8/man/ru/man8/rsync_selinux.8 +--- nsaserefpolicy/man/ru/man8/rsync_selinux.8 1969-12-31 19:00:00.000000000 -0500 ++++ serefpolicy-3.0.8/man/ru/man8/rsync_selinux.8 2007-09-07 04:59:25.000000000 -0400 +@@ -0,0 +1,50 @@ ++.TH "rsync_selinux" "8" "17 Янв 2005" "dwalsh@redhat.com" "rsync Selinux Policy documentation" ++.de EX ++.nf ++.ft CW ++.. ++.de EE ++.ft R ++.fi ++.. ++.SH "НАЗВАНИЕ" ++rsync_selinux \- Политика Security Enhanced Linux для демона rsync ++.SH "ОПИСАНИЕ" ++ ++Security-Enhanced Linux обеспечивает защиту сервера rsync при помощи гибко настраиваемого мандатного контроля доступа. ++.SH КОНТЕКСТ ФАЙЛОВ ++SELinux требует наличия у файлов расширенных атрибутов, определяющих тип файла. ++Политика управляет видом доступа демона к этим файлам. Если вы хотите предоставить доступ к файлам ++при помощи демона rsync, вы должны присвоить этим файлам и директориям контекст ++public_content_t. Таким образом, если вы создаете специальную директорию /var/rsync, то вам ++необходимо установить контекст для этой директории при помощи утилиты chcon. ++.TP ++chcon -t public_content_t /var/rsync ++.TP ++Если вы хотите сделать эти изменения постоянными, иными словами, чтобы данный контекст сохранялся ++при обновлении контекстов, вы должны добавить записи в файл file_contexts.local. ++.EX ++/etc/selinux/POLICYTYPE/contexts/files/file_contexts.local ++/var/rsync(/.*)? system_u:object_r:public_content_t ++.EE ++ ++.SH СОВМЕСТНОЕ ВЛАДЕНИЕ ФАЙЛАМИ ++Если вы хотите организовать между несколькими доменами (Apache, FTP, rsync, Samba) совместный ++доступ к файлам, то вы можете установить контекст файлов в public_content_t и public_content_rw_t. ++Данный контекст позволяет любому из выше перечисленных демонов читать содержимое. ++Если вы хотите, чтобы конкретный домен имел право записи в домен public_content_rw_t, вы должны ++установить соответствующий переключатель allow_ДОМЕН_anon_write. Таким образом, для rsync вы должны выполнить команду: ++ ++.EX ++setsebool -P allow_rsync_anon_write=1 ++.EE ++ ++.SH ПЕРЕКЛЮЧАТЕЛИ (BOOLEANS) ++.TP ++Для управления настройками SELinux существует графическая утилита system-config-selinux. ++.SH АВТОРЫ ++Эту страницу руководства написал Dan Walsh . ++Перевод руководства - Андрей Маркелов , 2007г. ++ ++.SH "СМОТРИ ТАКЖЕ" ++selinux(8), rsync(1), chcon(1), setsebool(8) +diff --exclude-from=exclude -N -u -r nsaserefpolicy/man/ru/man8/samba_selinux.8 serefpolicy-3.0.8/man/ru/man8/samba_selinux.8 +--- nsaserefpolicy/man/ru/man8/samba_selinux.8 1969-12-31 19:00:00.000000000 -0500 ++++ serefpolicy-3.0.8/man/ru/man8/samba_selinux.8 2007-09-07 04:58:17.000000000 -0400 +@@ -0,0 +1,60 @@ ++.TH "samba_selinux" "8" "17 Янв 2005" "dwalsh@redhat.com" "Samba Selinux Policy documentation" ++.SH "НАЗВАНИЕ" ++samba_selinux \- Политика Security Enhanced Linux для Samba ++.SH "ОПИСАНИЕ" ++ ++Security-Enhanced Linux обеспечивает защиту сервера Samba при помощи гибко настраиваемого мандатного контроля доступа. ++.SH КОНТЕКСТ ФАЙЛОВ ++SELinux требует наличия у файлов расширенных атрибутов, определяющих тип файла. ++Политика управляет видом доступа демона к этим файлам. ++Если вы хотите предоставить доступ к файлам вовне домашних директорий, этим файлам необходимо ++присвоить контекст samba_share_t. ++Таким образом, если вы создаете специальную директорию /var/eng, то вам необходимо ++установить контекст для этой директории при помощи утилиты chcon. ++.TP ++chcon -t samba_share_t /var/eng ++.TP ++ ++Если вы хотите сделать эти изменения постоянными, иными словами, чтобы данный контекст сохранялся ++при обновлении контекстов, вы должны добавить записи в файл file_contexts.local. ++.TP ++/etc/selinux/POLICYTYPE/contexts/files/file_contexts.local ++.br ++/var/eng(/.*)? system_u:object_r:samba_share_t ++ ++.SH СОВМЕСТНОЕ ВЛАДЕНИЕ ФАЙЛАМИ ++Если вы хотите организовать между несколькими доменами (Apache, FTP, rsync, Samba) совместный ++доступ к файлам, то вы можете установить контекст файлов в public_content_t и public_content_rw_t. ++Данный контекст позволяет любому из выше перечисленных демонов читать содержимое. ++Если вы хотите, чтобы конкретный домен имел право записи в домен public_content_rw_t, вы должны ++установить соответствующий переключатель allow_ДОМЕН_anon_write. Таким образом, для samba вы должны выполнить команду: ++ ++setsebool -P allow_smbd_anon_write=1 ++ ++.SH ПЕРЕКЛЮЧАТЕЛИ (BOOLEANS) ++.br ++Политика SELinux настраивается исходя из принципа наименьших привилегий. ++Таким образом, по умолчанию политика SELinux не позволяет предоставлять удаленный доступ ++к домашним директориям и не позволяет использовать удаленный сервер Samba для хранения ++домашних директорий. ++.TP ++Если вы настроили эту машину как сервер Samba и желаете предоставить доступ к домашним ++директориям, вы должны установить переключатель samba_enable_home_dirs. ++.br ++ ++setsebool -P samba_enable_home_dirs 1 ++.TP ++Если вы хотите для хранения домашних директорий пользователей этой машины использовать удаленный ++сервер Samba, вы должны установить переключатель use_samba_home_dirs. ++.br ++ ++setsebool -P use_samba_home_dirs 1 ++.TP ++Для управления настройками SELinux существует графическая утилита system-config-selinux. ++ ++.SH АВТОРЫ ++Эту страницу руководства написал Dan Walsh . ++Перевод руководства - Андрей Маркелов , 2007г. ++ ++.SH "СМОТРИ ТАКЖЕ" ++selinux(8), samba(7), chcon(1), setsebool(8) +diff --exclude-from=exclude -N -u -r nsaserefpolicy/man/ru/man8/ypbind_selinux.8 serefpolicy-3.0.8/man/ru/man8/ypbind_selinux.8 +--- nsaserefpolicy/man/ru/man8/ypbind_selinux.8 1969-12-31 19:00:00.000000000 -0500 ++++ serefpolicy-3.0.8/man/ru/man8/ypbind_selinux.8 2007-08-28 06:30:26.000000000 -0400 +@@ -0,0 +1,19 @@ ++.TH "ypbind_selinux" "8" "17 Янв 2005" "dwalsh@redhat.com" "ypbind Selinux Policy documentation" ++.SH "НАЗВАНИЕ" ++ypbind_selinux \- Политика Security Enhanced Linux для NIS. ++.SH "ОПИСАНИЕ" ++ ++Security-Enhanced Linux защищает систему при помощи гибко настраиваемого мандатного контроля доступа. По умолчанию работа NIS запрещена. Это является следствием того, что демоны NIS требуют слишком обширного доступа к сети. ++.SH ПЕРЕКЛЮЧАТЕЛИ (BOOLEANS) ++.TP ++Для того, чтобы система могла работать в окружении NIS, вы должны установить переключатель allow_ypbind. ++.TP ++setsebool -P allow_ypbind 1 ++.TP ++Для управления настройками SELinux существует графическая утилита system-config-selinux. ++.SH АВТОРЫ ++Эту страницу руководства написал Dan Walsh . ++Перевод руководства - Андрей Маркелов , 2007г. ++ ++.SH "СМОТРИ ТАКЖЕ" ++selinux(8), ypbind(8), chcon(1), setsebool(8) diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/flask/access_vectors serefpolicy-3.0.8/policy/flask/access_vectors --- nsaserefpolicy/policy/flask/access_vectors 2007-08-22 07:14:04.000000000 -0400 +++ serefpolicy-3.0.8/policy/flask/access_vectors 2007-10-03 11:10:24.000000000 -0400 @@ -1227,7 +1676,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/userman ## diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/usermanage.te serefpolicy-3.0.8/policy/modules/admin/usermanage.te --- nsaserefpolicy/policy/modules/admin/usermanage.te 2007-09-12 10:34:51.000000000 -0400 -+++ serefpolicy-3.0.8/policy/modules/admin/usermanage.te 2007-10-03 11:10:24.000000000 -0400 ++++ serefpolicy-3.0.8/policy/modules/admin/usermanage.te 2007-10-09 15:40:44.000000000 -0400 @@ -92,6 +92,7 @@ dev_read_urand(chfn_t) @@ -1236,7 +1685,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/userman auth_dontaudit_read_shadow(chfn_t) # allow checking if a shell is executable -@@ -297,6 +298,7 @@ +@@ -297,9 +298,11 @@ term_use_all_user_ttys(passwd_t) term_use_all_user_ptys(passwd_t) @@ -1244,7 +1693,11 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/userman auth_manage_shadow(passwd_t) auth_relabel_shadow(passwd_t) auth_etc_filetrans_shadow(passwd_t) -@@ -520,6 +522,10 @@ ++auth_use_nsswitch(passwd_t) + + # allow checking if a shell is executable + corecmd_check_exec_shell(passwd_t) +@@ -520,6 +523,10 @@ mta_manage_spool(useradd_t) optional_policy(` @@ -1255,7 +1708,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/admin/userman dpkg_use_fds(useradd_t) dpkg_rw_pipes(useradd_t) ') -@@ -529,6 +535,12 @@ +@@ -529,6 +536,12 @@ ') optional_policy(` @@ -3327,7 +3780,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/kernel optional_policy(` diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/selinux.if serefpolicy-3.0.8/policy/modules/kernel/selinux.if --- nsaserefpolicy/policy/modules/kernel/selinux.if 2007-07-03 07:05:38.000000000 -0400 -+++ serefpolicy-3.0.8/policy/modules/kernel/selinux.if 2007-10-03 11:10:24.000000000 -0400 ++++ serefpolicy-3.0.8/policy/modules/kernel/selinux.if 2007-10-09 16:03:39.000000000 -0400 @@ -138,6 +138,7 @@ type security_t; ') @@ -3394,7 +3847,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/selinu if(!secure_mode_policyload) { allow $1 security_t:security setbool; -@@ -463,3 +495,42 @@ +@@ -463,3 +495,23 @@ typeattribute $1 selinux_unconfined_type; ') @@ -3418,25 +3871,6 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/selinu + fs_type($1) + mls_trusted_object($1) +') -+ -+######################################## -+## -+## Generate a file context for a boolean type -+## -+## -+## -+## Type of the boolean -+## -+## -+## -+## -+## name of the boolean -+## -+## -+# -+interface(`selinux_genbool_mapping',` -+ genfscon selinuxfs /booleans/$2 gen_context(system_u:object_r:$1,s0) -+') diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/kernel/selinux.te serefpolicy-3.0.8/policy/modules/kernel/selinux.te --- nsaserefpolicy/policy/modules/kernel/selinux.te 2007-07-25 10:37:36.000000000 -0400 +++ serefpolicy-3.0.8/policy/modules/kernel/selinux.te 2007-10-03 11:10:24.000000000 -0400 @@ -4776,7 +5210,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/cons +') diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/consolekit.te serefpolicy-3.0.8/policy/modules/services/consolekit.te --- nsaserefpolicy/policy/modules/services/consolekit.te 2007-07-25 10:37:42.000000000 -0400 -+++ serefpolicy-3.0.8/policy/modules/services/consolekit.te 2007-10-03 11:10:24.000000000 -0400 ++++ serefpolicy-3.0.8/policy/modules/services/consolekit.te 2007-10-09 15:34:31.000000000 -0400 @@ -10,7 +10,6 @@ type consolekit_exec_t; init_daemon_domain(consolekit_t, consolekit_exec_t) @@ -4785,15 +5219,17 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/cons type consolekit_var_run_t; files_pid_file(consolekit_var_run_t) -@@ -25,7 +24,6 @@ +@@ -25,7 +24,8 @@ allow consolekit_t self:unix_stream_socket create_stream_socket_perms; allow consolekit_t self:unix_dgram_socket create_socket_perms; -# pid file ++auth_use_nsswitch(consolekit_t) ++ manage_files_pattern(consolekit_t,consolekit_var_run_t,consolekit_var_run_t) files_pid_filetrans(consolekit_t,consolekit_var_run_t, file) -@@ -38,6 +36,7 @@ +@@ -38,6 +38,7 @@ domain_read_all_domains_state(consolekit_t) domain_use_interactive_fds(consolekit_t) @@ -4801,7 +5237,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/cons files_read_etc_files(consolekit_t) # needs to read /var/lib/dbus/machine-id -@@ -50,8 +49,15 @@ +@@ -50,8 +51,15 @@ libs_use_ld_so(consolekit_t) libs_use_shared_libs(consolekit_t) @@ -4817,7 +5253,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/cons optional_policy(` dbus_system_bus_client_template(consolekit, consolekit_t) dbus_send_system_bus(consolekit_t) -@@ -62,9 +68,16 @@ +@@ -62,9 +70,18 @@ optional_policy(` unconfined_dbus_chat(consolekit_t) ') @@ -4827,6 +5263,8 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/cons optional_policy(` xserver_read_all_users_xauth(consolekit_t) xserver_stream_connect_xdm_xserver(consolekit_t) ++ # For homedirs without xauth labeling ++ userdom_read_generic_user_home_content_files(consolekit_t) ') + +optional_policy(` @@ -7561,8 +7999,8 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/nis. ## diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/nis.te serefpolicy-3.0.8/policy/modules/services/nis.te --- nsaserefpolicy/policy/modules/services/nis.te 2007-07-25 10:37:42.000000000 -0400 -+++ serefpolicy-3.0.8/policy/modules/services/nis.te 2007-10-03 11:10:24.000000000 -0400 -@@ -113,6 +113,14 @@ ++++ serefpolicy-3.0.8/policy/modules/services/nis.te 2007-10-09 16:44:03.000000000 -0400 +@@ -113,6 +113,18 @@ userdom_dontaudit_use_unpriv_user_fds(ypbind_t) userdom_dontaudit_search_sysadm_home_dirs(ypbind_t) @@ -7572,12 +8010,16 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/nis. + dbus_connect_system_bus(ypbind_t) + dbus_send_system_bus(ypbind_t) + init_dbus_chat_script(ypbind_t) ++ ++ optional_policy(` ++ networkmanager_dbus_chat(ypbind_t) ++ ') +') + optional_policy(` seutil_sigchld_newrole(ypbind_t) ') -@@ -126,6 +134,7 @@ +@@ -126,6 +138,7 @@ # yppasswdd local policy # @@ -7585,7 +8027,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/nis. dontaudit yppasswdd_t self:capability sys_tty_config; allow yppasswdd_t self:fifo_file rw_fifo_file_perms; allow yppasswdd_t self:process { setfscreate signal_perms }; -@@ -156,8 +165,8 @@ +@@ -156,8 +169,8 @@ corenet_udp_sendrecv_all_ports(yppasswdd_t) corenet_tcp_bind_all_nodes(yppasswdd_t) corenet_udp_bind_all_nodes(yppasswdd_t) @@ -7596,7 +8038,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/nis. corenet_dontaudit_tcp_bind_all_reserved_ports(yppasswdd_t) corenet_dontaudit_udp_bind_all_reserved_ports(yppasswdd_t) corenet_sendrecv_generic_server_packets(yppasswdd_t) -@@ -247,6 +256,8 @@ +@@ -247,6 +260,8 @@ corenet_udp_bind_all_nodes(ypserv_t) corenet_tcp_bind_reserved_port(ypserv_t) corenet_udp_bind_reserved_port(ypserv_t) @@ -7605,7 +8047,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/nis. corenet_dontaudit_tcp_bind_all_reserved_ports(ypserv_t) corenet_dontaudit_udp_bind_all_reserved_ports(ypserv_t) corenet_sendrecv_generic_server_packets(ypserv_t) -@@ -315,6 +326,8 @@ +@@ -315,6 +330,8 @@ corenet_udp_bind_all_nodes(ypxfr_t) corenet_tcp_bind_reserved_port(ypxfr_t) corenet_udp_bind_reserved_port(ypxfr_t) @@ -9065,7 +9507,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/samb +') diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/samba.te serefpolicy-3.0.8/policy/modules/services/samba.te --- nsaserefpolicy/policy/modules/services/samba.te 2007-07-25 10:37:42.000000000 -0400 -+++ serefpolicy-3.0.8/policy/modules/services/samba.te 2007-10-03 11:10:25.000000000 -0400 ++++ serefpolicy-3.0.8/policy/modules/services/samba.te 2007-10-09 11:56:37.000000000 -0400 @@ -137,6 +137,11 @@ type winbind_var_run_t; files_pid_file(winbind_var_run_t) @@ -9982,7 +10424,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/squi +') diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/ssh.if serefpolicy-3.0.8/policy/modules/services/ssh.if --- nsaserefpolicy/policy/modules/services/ssh.if 2007-07-25 10:37:42.000000000 -0400 -+++ serefpolicy-3.0.8/policy/modules/services/ssh.if 2007-10-03 11:10:25.000000000 -0400 ++++ serefpolicy-3.0.8/policy/modules/services/ssh.if 2007-10-09 15:53:25.000000000 -0400 @@ -202,6 +202,7 @@ # template(`ssh_per_role_template',` @@ -9991,7 +10433,15 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/ssh. type ssh_agent_exec_t, ssh_keysign_exec_t; ') -@@ -520,6 +521,7 @@ +@@ -512,6 +513,7 @@ + + tunable_policy(`use_nfs_home_dirs',` + fs_read_nfs_files($1_t) ++ fs_read_nfs_symlinks($1_t) + ') + + tunable_policy(`use_samba_home_dirs',` +@@ -520,6 +522,7 @@ optional_policy(` kerberos_use($1_t) @@ -9999,7 +10449,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/ssh. ') optional_policy(` -@@ -708,3 +710,42 @@ +@@ -708,3 +711,42 @@ dontaudit $1 sshd_key_t:file { getattr read }; ') @@ -10663,7 +11113,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xser + diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xserver.te serefpolicy-3.0.8/policy/modules/services/xserver.te --- nsaserefpolicy/policy/modules/services/xserver.te 2007-08-22 07:14:07.000000000 -0400 -+++ serefpolicy-3.0.8/policy/modules/services/xserver.te 2007-10-03 11:10:25.000000000 -0400 ++++ serefpolicy-3.0.8/policy/modules/services/xserver.te 2007-10-09 15:41:36.000000000 -0400 @@ -16,6 +16,13 @@ ## @@ -10791,10 +11241,14 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xser # Label pid and temporary files with derived types. manage_files_pattern(xdm_xserver_t,xdm_tmp_t,xdm_tmp_t) -@@ -425,6 +447,10 @@ +@@ -425,6 +447,14 @@ ') optional_policy(` ++ locallogin_use_fds(xdm_xserver_t) ++') ++ ++optional_policy(` + mono_rw_shm(xdm_xserver_t) +') + @@ -10802,7 +11256,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xser resmgr_stream_connect(xdm_t) ') -@@ -434,47 +460,20 @@ +@@ -434,47 +464,24 @@ ') optional_policy(` @@ -10818,13 +11272,13 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xser + unconfined_rw_shm(xdm_xserver_t) + unconfined_execmem_rw_shm(xdm_xserver_t) + unconfined_rw_tmpfs_files(xdm_xserver_t) -+') - ifdef(`distro_rhel4',` - allow xdm_xserver_t self:process { execheap execmem }; - ') -+tunable_policy(`allow_xserver_execmem', ` -+ allow xdm_xserver_t self:process { execheap execmem }; ++ # xserver signals unconfined user on startx ++ unconfined_signal(xdm_xserver_t) ++ unconfined_getpgid(xdm_xserver_t) ') -ifdef(`TODO',` @@ -10848,6 +11302,10 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/services/xser -allow xdm_t polymember:lnk_file { create unlink }; -# xdm needs access for copying .Xauthority into new home -allow xdm_t polymember:file { create getattr write }; ++tunable_policy(`allow_xserver_execmem', ` ++ allow xdm_xserver_t self:process { execheap execmem }; ++') ++ +ifdef(`distro_rhel4',` + allow xdm_xserver_t self:process { execheap execmem }; ') @@ -11289,7 +11747,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/authlo + diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/authlogin.te serefpolicy-3.0.8/policy/modules/system/authlogin.te --- nsaserefpolicy/policy/modules/system/authlogin.te 2007-08-22 07:14:12.000000000 -0400 -+++ serefpolicy-3.0.8/policy/modules/system/authlogin.te 2007-10-03 11:10:25.000000000 -0400 ++++ serefpolicy-3.0.8/policy/modules/system/authlogin.te 2007-10-09 15:40:02.000000000 -0400 @@ -9,6 +9,13 @@ attribute can_read_shadow_passwords; attribute can_write_shadow_passwords; @@ -11325,7 +11783,22 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/authlo ######################################## # # PAM local policy -@@ -149,6 +163,8 @@ +@@ -94,10 +108,14 @@ + allow pam_t pam_tmp_t:file manage_file_perms; + files_tmp_filetrans(pam_t, pam_tmp_t, { file dir }) + ++auth_use_nsswitch(pam_t) ++ + kernel_read_system_state(pam_t) + + fs_search_auto_mountpoints(pam_t) + ++miscfiles_read_localization(pam_t) ++ + term_use_all_user_ttys(pam_t) + term_use_all_user_ptys(pam_t) + +@@ -149,6 +167,8 @@ dev_setattr_apm_bios_dev(pam_console_t) dev_getattr_dri_dev(pam_console_t) dev_setattr_dri_dev(pam_console_t) @@ -11334,7 +11807,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/authlo dev_getattr_framebuffer_dev(pam_console_t) dev_setattr_framebuffer_dev(pam_console_t) dev_getattr_generic_usb_dev(pam_console_t) -@@ -159,6 +175,8 @@ +@@ -159,6 +179,8 @@ dev_setattr_mouse_dev(pam_console_t) dev_getattr_power_mgmt_dev(pam_console_t) dev_setattr_power_mgmt_dev(pam_console_t) @@ -11343,7 +11816,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/authlo dev_getattr_scanner_dev(pam_console_t) dev_setattr_scanner_dev(pam_console_t) dev_getattr_sound_dev(pam_console_t) -@@ -200,6 +218,7 @@ +@@ -200,6 +222,7 @@ fs_list_auto_mountpoints(pam_console_t) fs_list_noxattr_fs(pam_console_t) @@ -11351,7 +11824,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/authlo init_use_fds(pam_console_t) init_use_script_ptys(pam_console_t) -@@ -236,7 +255,7 @@ +@@ -236,7 +259,7 @@ optional_policy(` xserver_read_xdm_pid(pam_console_t) @@ -11360,7 +11833,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/authlo ') ######################################## -@@ -302,3 +321,28 @@ +@@ -302,3 +325,28 @@ xserver_use_xdm_fds(utempter_t) xserver_rw_xdm_pipes(utempter_t) ') @@ -11570,7 +12043,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/hostna +') diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/init.if serefpolicy-3.0.8/policy/modules/system/init.if --- nsaserefpolicy/policy/modules/system/init.if 2007-08-22 07:14:12.000000000 -0400 -+++ serefpolicy-3.0.8/policy/modules/system/init.if 2007-10-03 11:10:25.000000000 -0400 ++++ serefpolicy-3.0.8/policy/modules/system/init.if 2007-10-09 16:04:58.000000000 -0400 @@ -211,6 +211,21 @@ kernel_dontaudit_use_fds($1) ') @@ -13261,7 +13734,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/mount. + diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/raid.te serefpolicy-3.0.8/policy/modules/system/raid.te --- nsaserefpolicy/policy/modules/system/raid.te 2007-09-12 10:34:51.000000000 -0400 -+++ serefpolicy-3.0.8/policy/modules/system/raid.te 2007-10-03 11:10:25.000000000 -0400 ++++ serefpolicy-3.0.8/policy/modules/system/raid.te 2007-10-09 16:01:10.000000000 -0400 @@ -19,7 +19,7 @@ # Local policy # @@ -13271,6 +13744,14 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/raid.t dontaudit mdadm_t self:capability sys_tty_config; allow mdadm_t self:process { sigchld sigkill sigstop signull signal }; allow mdadm_t self:fifo_file rw_fifo_file_perms; +@@ -39,6 +39,7 @@ + dev_dontaudit_getattr_generic_files(mdadm_t) + dev_dontaudit_getattr_generic_chr_files(mdadm_t) + dev_dontaudit_getattr_generic_blk_files(mdadm_t) ++dev_read_realtime_clock(mdadm_t) + + fs_search_auto_mountpoints(mdadm_t) + fs_dontaudit_list_tmpfs(mdadm_t) diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/selinuxutil.fc serefpolicy-3.0.8/policy/modules/system/selinuxutil.fc --- nsaserefpolicy/policy/modules/system/selinuxutil.fc 2007-05-30 11:47:29.000000000 -0400 +++ serefpolicy-3.0.8/policy/modules/system/selinuxutil.fc 2007-10-04 10:32:45.000000000 -0400 @@ -13566,7 +14047,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/selinu +') diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/selinuxutil.te serefpolicy-3.0.8/policy/modules/system/selinuxutil.te --- nsaserefpolicy/policy/modules/system/selinuxutil.te 2007-09-12 10:34:51.000000000 -0400 -+++ serefpolicy-3.0.8/policy/modules/system/selinuxutil.te 2007-10-07 07:59:32.000000000 -0400 ++++ serefpolicy-3.0.8/policy/modules/system/selinuxutil.te 2007-10-09 15:59:34.000000000 -0400 @@ -76,7 +76,6 @@ type restorecond_exec_t; init_daemon_domain(restorecond_t,restorecond_exec_t) @@ -13696,7 +14177,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/selinu auth_dontaudit_read_shadow(run_init_t) corecmd_exec_bin(run_init_t) -@@ -423,77 +426,49 @@ +@@ -423,77 +426,52 @@ nscd_socket_use(run_init_t) ') @@ -13708,11 +14189,6 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/selinu # +seutil_semanage_policy(setsebool_t) +selinux_set_boolean(setsebool_t) -+# Bug in semanage -+seutil_domtrans_setfiles(setsebool_t) -+seutil_manage_file_contexts(setsebool_t) -+seutil_manage_default_contexts(setsebool_t) -+seutil_manage_selinux_config(setsebool_t) -allow semanage_t self:capability { dac_override audit_write }; -allow semanage_t self:unix_stream_socket create_stream_socket_perms; @@ -13731,9 +14207,15 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/selinu -corecmd_exec_bin(semanage_t) - -dev_read_urand(semanage_t) -- ++init_dontaudit_use_fds(setsebool_t) + -domain_use_interactive_fds(semanage_t) -- ++# Bug in semanage ++seutil_domtrans_setfiles(setsebool_t) ++seutil_manage_file_contexts(setsebool_t) ++seutil_manage_default_contexts(setsebool_t) ++seutil_manage_selinux_config(setsebool_t) + -files_read_etc_files(semanage_t) -files_read_etc_runtime_files(semanage_t) -files_read_usr_files(semanage_t) @@ -13799,7 +14281,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/selinu # cjp: need a more general way to handle this: ifdef(`enable_mls',` # read secadm tmp files -@@ -521,6 +496,8 @@ +@@ -521,6 +499,8 @@ allow setfiles_t { policy_src_t policy_config_t file_context_t selinux_config_t default_context_t }:file r_file_perms; allow setfiles_t { policy_src_t policy_config_t file_context_t selinux_config_t default_context_t }:lnk_file r_file_perms; @@ -13808,7 +14290,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/selinu kernel_read_system_state(setfiles_t) kernel_relabelfrom_unlabeled_dirs(setfiles_t) kernel_relabelfrom_unlabeled_files(setfiles_t) -@@ -537,6 +514,7 @@ +@@ -537,6 +517,7 @@ fs_getattr_xattr_fs(setfiles_t) fs_list_all(setfiles_t) @@ -13816,7 +14298,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/selinu fs_search_auto_mountpoints(setfiles_t) fs_relabelfrom_noxattr_fs(setfiles_t) -@@ -590,8 +568,16 @@ +@@ -590,8 +571,16 @@ fs_relabel_tmpfs_chr_file(setfiles_t) ') @@ -13966,8 +14448,16 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/sysnet +') diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/udev.te serefpolicy-3.0.8/policy/modules/system/udev.te --- nsaserefpolicy/policy/modules/system/udev.te 2007-09-12 10:34:51.000000000 -0400 -+++ serefpolicy-3.0.8/policy/modules/system/udev.te 2007-10-08 11:25:00.000000000 -0400 -@@ -184,6 +184,12 @@ ++++ serefpolicy-3.0.8/policy/modules/system/udev.te 2007-10-09 16:07:36.000000000 -0400 +@@ -132,6 +132,7 @@ + + init_read_utmp(udev_t) + init_dontaudit_write_utmp(udev_t) ++init_getattr_initctl(udev_t) + + libs_use_ld_so(udev_t) + libs_use_shared_libs(udev_t) +@@ -184,6 +185,12 @@ ') optional_policy(` @@ -13991,7 +14481,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/unconf +/usr/bin/sbcl -- gen_context(system_u:object_r:unconfined_execmem_exec_t,s0) diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/unconfined.if serefpolicy-3.0.8/policy/modules/system/unconfined.if --- nsaserefpolicy/policy/modules/system/unconfined.if 2007-06-15 14:54:34.000000000 -0400 -+++ serefpolicy-3.0.8/policy/modules/system/unconfined.if 2007-10-09 10:33:22.000000000 -0400 ++++ serefpolicy-3.0.8/policy/modules/system/unconfined.if 2007-10-09 15:38:02.000000000 -0400 @@ -12,14 +12,13 @@ # interface(`unconfined_domain_noaudit',` @@ -14073,7 +14563,7 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/unconf read_files_pattern($1,{ unconfined_home_dir_t unconfined_home_t },unconfined_home_t) read_lnk_files_pattern($1,{ unconfined_home_dir_t unconfined_home_t },unconfined_home_t) ') -@@ -601,3 +605,179 @@ +@@ -601,3 +605,198 @@ allow $1 unconfined_tmp_t:file { getattr write append }; ') @@ -14253,6 +14743,25 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/unconf + rw_files_pattern($1,unconfined_tmpfs_t,unconfined_tmpfs_t) + read_lnk_files_pattern($1,unconfined_tmpfs_t,unconfined_tmpfs_t) +') ++ ++######################################## ++## ++## Get the process group of unconfined. ++## ++## ++## ++## Domain allowed access. ++## ++## ++# ++interface(`unconfined_getpgid',` ++ gen_require(` ++ type unconfined_t; ++ ') ++ ++ allow $1 unconfined_t:process getpgid; ++') ++ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/modules/system/unconfined.te serefpolicy-3.0.8/policy/modules/system/unconfined.te --- nsaserefpolicy/policy/modules/system/unconfined.te 2007-07-25 10:37:42.000000000 -0400 +++ serefpolicy-3.0.8/policy/modules/system/unconfined.te 2007-10-08 10:08:01.000000000 -0400 @@ -16433,6 +16942,14 @@ diff --exclude-from=exclude -N -u -r nsaserefpolicy/policy/users serefpolicy-3.0 - gen_user(root, sysadm, sysadm_r staff_r ifdef(`enable_mls',`secadm_r auditadm_r'), s0, s0 - mls_systemhigh, mcs_allcats) -') +gen_user(root, sysadm, sysadm_r staff_r ifdef(`enable_mls',`secadm_r auditadm_r') system_r, s0, s0 - mls_systemhigh, mcs_allcats) +Binary files nsaserefpolicy/ru/ftpd_selinux.8.gz and serefpolicy-3.0.8/ru/ftpd_selinux.8.gz differ +Binary files nsaserefpolicy/ru/httpd_selinux.8.gz and serefpolicy-3.0.8/ru/httpd_selinux.8.gz differ +Binary files nsaserefpolicy/ru/kerberos_selinux.8.gz and serefpolicy-3.0.8/ru/kerberos_selinux.8.gz differ +Binary files nsaserefpolicy/ru/named_selinux.8.gz and serefpolicy-3.0.8/ru/named_selinux.8.gz differ +Binary files nsaserefpolicy/ru/nfs_selinux.8.gz and serefpolicy-3.0.8/ru/nfs_selinux.8.gz differ +Binary files nsaserefpolicy/ru/rsync_selinux.8.gz and serefpolicy-3.0.8/ru/rsync_selinux.8.gz differ +Binary files nsaserefpolicy/ru/samba_selinux.8.gz and serefpolicy-3.0.8/ru/samba_selinux.8.gz differ +Binary files nsaserefpolicy/ru/ypbind_selinux.8.gz and serefpolicy-3.0.8/ru/ypbind_selinux.8.gz differ diff --exclude-from=exclude -N -u -r nsaserefpolicy/Rules.modular serefpolicy-3.0.8/Rules.modular --- nsaserefpolicy/Rules.modular 2007-05-25 09:09:10.000000000 -0400 +++ serefpolicy-3.0.8/Rules.modular 2007-10-03 11:10:25.000000000 -0400 diff --git a/selinux-policy.spec b/selinux-policy.spec index 8068044..a8b8eff 100644 --- a/selinux-policy.spec +++ b/selinux-policy.spec @@ -17,7 +17,7 @@ Summary: SELinux policy configuration Name: selinux-policy Version: 3.0.8 -Release: 19%{?dist} +Release: 20%{?dist} License: GPLv2+ Group: System Environment/Base Source: serefpolicy-%{version}.tgz @@ -47,7 +47,7 @@ Requires(pre): policycoreutils >= %{POLICYCOREUTILSVER} libsemanage >= 1.6.17-1 SELinux Base package %files -%{_mandir}/man8/* +%{_mandir}/* %doc %{_usr}/share/doc/%{name}-%{version} %dir %{_usr}/share/selinux %dir %{_sysconfdir}/selinux @@ -177,8 +177,8 @@ Based off of reference policy: Checked out revision 2393. %install # Build targeted policy %{__rm} -fR %{buildroot} -mkdir -p %{buildroot}%{_mandir}/man8/ -install -m 644 man/man8/*.8 %{buildroot}%{_mandir}/man8/ +mkdir -p %{buildroot}%{_mandir} +cp -R man %{buildroot}%{_mandir} mkdir -p %{buildroot}%{_sysconfdir}/selinux mkdir -p %{buildroot}%{_sysconfdir}/sysconfig touch %{buildroot}%{_sysconfdir}/selinux/config @@ -371,6 +371,9 @@ exit 0 %endif %changelog +* Tue Oct 9 2007 Dan Walsh 3.0.8-20 +- Fixes for consolekit and startx sessions + * Mon Oct 8 2007 Dan Walsh 3.0.8-19 - Dontaudit consoletype talking to unconfined_t