![]() |
LINUX |
selinuxの調整 4 Router (参考)
*ソースインストールファイルへの対応
*CentOS 5.5 ではpolicy-sourceファイルは配布されていません
*個々の設定はモデュールで組み込めるようになっています
*Permissiveでの動作を確認してからEnforcingに変更します
**以降はコメントです
*ソースの取得、削除は省略します
*エディタ、ファイラーの操作は省略します
*ソースを展開したら説明文 (英文) を読みましょう
*Enterキーを省略します
*ログイン端末で "#" はroot、"$" は一般ユーザのプロンプトの記号です
*設定ファイルで "#" で始まる行はコメントとして解釈されます
参照ファイル
インストール環境| :OS | CentOS 5.5 |
| :selinux | permissive |
| :インストール先 | |
| :作業 | /usr/src |
| :言語 | LANG=en_US.UTF-8 |
| :ユーザー | root |
*メンテナンスの場合は一般ユーザから行います
policy-develファイルのインストール# rpm -Uvh selinux-policy-devel*
モデュールファイルの作成と組み込み
configファイルの修正:/etc/selinux/config
*permissiveモードで起動するようにします
SELINUX=permissive SELINUXTYPE=targeted
selinuxのリラベルを実行しておきます# fixfiles relabel
audit.logを空にする# cat /dev/null >/var/log/audit/audit.log
再起動します# shutdown -r now
audit警告の修正*auditdデーモンが起動していると/var/log/auditにログが作られます
*auditdデーモンを止めているので/var/log/messagesにログが出されます
*messagesからselinuxの情報を集める
# audit2why < /var/log/messages > se-error.txt
*audit.logとdmesgからTEファイルを作る
# audit2allow -a -m local > local.te
*audit.logからTEファイルを作る場合は
# audit2allow -i /var/log/audit/audit.log -m local > local.te
*dmesgからTEファイルを作る場合は
# audit2allow -d -v -m local > local.te
*messagesからTEファイルを作る
# audit2allow -i /var/log/messages -m local > local.te
*バイナリー形式のモデュールの作成
# checkmodule -M -m local.te -o local.mod
*モデュールパッケージ化
# semodule_package -o local.pp -m local.mod
*SELinuxに組み込む
# semodule -i local.pp
*組み込みモデュールの確認
# semodule -l | grep local
*組み込みモデュ−ルの解除
# semodule -r local
:参考 local.te (root root 600)
module local 1.0;
require {
type pppd_exec_t;
type pppd_t;
type getty_t;
type syslogd_t;
type var_t;
type tmpfs_t;
class sock_file { create setattr };
class file { create execmod };
class dir { write search add_name };
}
#============= getty_t ============== allow getty_t tmpfs_t:dir search;
#============= pppd_t ============== allow pppd_t pppd_exec_t:file execmod;
#============= syslogd_t ==============
allow syslogd_t tmpfs_t:dir { write add_name };
allow syslogd_t tmpfs_t:file create;
allow syslogd_t var_t:dir { write add_name };
allow syslogd_t var_t:sock_file { create setattr };
:booleansの変更で対処する場合
*sambaでhome_dirsにアクセスする場合
# getsebool -a ・・・・・・・・・・・・・・・・・・ samba_enable_home_dirs --> off ・・・・・・・・・・・・・・・・・・ # setsebool -P samba_enable_home_dirs 1
# getsebool -a ・・・・・・・・・・・・・・・・・・ samba_enable_home_dirs --> on ・・・・・・・・・・・・・・・・・・
*offに変更
# setsebool -P samba_enable_home_dirs 0
モード変更*再起動した場合、/etc/selinux/configの設定になります
*Enforcingモードにする
# setenforce 1
*確認
# getenforce Enforcing
![]() |
Copyright(c) 528p.com All Rights Reserved. |

