How to install SELinux Policy Editor
2005. 07.13
著: 中村 雄一 <ynakam@gwu.edu>

これは,SELinux Policy EditorおよびSimplified Policy(単純化ポリシ)のインストールドキュメントです。

目次
1. インストールの前に
2. 単純化ポリシをインストールする
2.1 .RPMからインストールする
2.2  ソースからインストールする
2.3 インストール後
3. GUIをインストールする
3.1 Webminをインストール
3.2 GUIをインストール


1. インストールの前に
(1) 何をインストールすればいいの?
 SELinux Policy Editorは, Simplified Policy(単純化ポリシ)とGUIから構成されています。
Simplified Policyのインストールは必須で,GUIはオプションです。
GUIはオプションですが,インストールすることでより簡単に使うことができます。

(2) 動作環境
Fedora Core 4と3で動作を確認しましたが,Fedora Core4が推奨です。
ただし,我々のツールは実験的なものであり,致命的バグを含む可能性があります。
本ツールを使ったことによって生じた被害に対しては無保証です。

ポリシーは工事中です。今のところ限られたサービスだけが動作します(auditd,syslog,httpd,webmin,iptables,network)。

(3) ランレベルは3に

 デフォルトで用意されているポリシーはXをサポートしません
(正確には一部だけサポートしていますが,enforcingモードではうまく動作しないと思います)
ですから,ランレベルを3に切り替える必要があります。
/etc/inittab の
「id:5:initdefault:」
という行を
「id:3:initdefault:」
のようにします。

(4)最低限のサービスを立ち上げる
先ほど書いたように,限られたサービス(auditd,syslog,httpd,webmin,iptables,network)
のポリシーしか用意されていません。
これ以外のサービスは止めておき,必要なものは自分で設定するのが良いでしょう。

2. 単純化ポリシをインストールする
 単純化ポリシを使うためには,converter(単純化ポリシのコンパイラ)と,単純化ポリシのサンプルをインストールする必要があります。
RPMもしくはtarボールからインストールすることができます。

2.1 . RPMからインストールする
(1) 以下のファイルを http://sourceforge.net/projects/seedit/から入手します。
- seedit-converter-1.0.0-<distro>.rpm
- seedit-policy-easy-1.0.0.-<distro>.rpm
ディストリビューションによってファイル名が違うことに注意します。
<distro>はFedoraCore4の場合は「FC4」,Fedora Core3の場合は「FC3」です。

(2) RPMをインストールします
# rpm -ivh seedit-*.rpm

(3) リブートします。
再起動時,全ファイルのラベル付けが行われるため多少時間がかかります。

(4) 再度リブートします。
ログインし、(メッセージが沢山でますがここでは無視します)
再度リブートします。

この後は,2.3節を見てください。

2.2  ソースからインストールする
(1) tarボールを http://sourceforge.net/projects/seedit/ からダウンロードします。
- seedit-converter-1.0.0.tar.gz
- seedit-policy-1.0.0.tar.gz

(2)  converterをインストールします。
# tar xzvf *.tar.gz
# cd seedit-converter-1.0.0
# make install

(3) サンプルポリシをインストールします
# cd seedit-policy-1.0.0
Fedora Core3を使っている場合は、
Makefileを以下のように編集します。
「DISTRO=fc4」

「DISTRO=fc3」
そして,以下のコマンドをタイプします。
# make install

(4)
# touch /.autorelabel

(5)/etc/selinux/config の「SELINUX=, SELINUXTYPE=」を以下のように編集します。
SELINUX=permissive
SELINUXTYPE=seedit

 2.3に進む

2.3 インストール後の作業
(1) /etc/selinux/config に以下の2行が出ていることを確かめます
SELINUX=permissive
SELINUXTYPE=seedit

(2) sestatusコマンドの出力が以下のようになっていることを確認します
# sestatus
SELinux status: enabled
...
Policy from config file: seedit
...

(3) ソースからインストールしている場合は,以下の作業が必要です
再度リブートし,
# cd /etc/selinux/seedit/src/policy
# make diffrelabel

(4) ポリシーを編集します
ポリシーが用意されていないアプリケーションを動作させる場合や
うまく動作しない場合は単純化ポリシーを編集します。
単純化ポリシーを直接手で編集する場合は,"Configuring SELinux by Simplified Policy"を参照して下さい。
GUIを使う場合は,3章でGUIをインストールします。

(5) enforcingモードに切り替える
ポリシーが十分に設定できたらenforcingモードに切り替え動作確認します。
# setenforce 1
さらに,もう十分だと思ったら,ブート時からenforcingモードにします
/etc/selinux/configを以下のようにします。
SELINUX=enforcing
SELINUXTYPE=seedit

3. GUIをインストールする(オプション)
3.1 Webminをインストールする
GUIは,webminのモジュールとして実装されているので,
webminのインストールが必要です。

(1)  perl-Net-SSLeayのインストール
# yum install perl-Net-SSLeay
perl-Net-SSLeayがfedora-extraからインストールされます。

(2) WebminのRPMパッケージをhttp://www.webmin.com/ からインストールします。

(3) Install webmin
# rpm -ivh webmin-<version>.rpm

3.2 GUIをインストールする
(1) GUIをダウンロードする
seedit-gui-1.0.0.tar.gz を http://sourceforge.net/projects/seedit/からダウンロードします。

(2)
"Webmin設定" -> " Webminモジュール" -> "モジュールのインストール" -> "ローカルファイルから"
にて,「seedit-gui-1.0.0.tar.gz」を選択し,「ファイルからモジュールをインストール」を押します。

(3) /etc/webmin/seedit-gui-1.0.0/config を確認
単純化ポリシをソースからインストールしている場合は,「converter_path」を以下のようにする必要があります。
converter_path=/usr/local/bin/converter

(4)  
システム→SELinuxのセキュリティ設定→設定の反映
と辿り,
「設定をカーネルに読み込ませるとともに,新規ラベル付けされたファイルのみタイプを付与する」
ボタンを押します。

(5) 再起動します。
再起動したら,ps -eZにて,「miniserv.pl」のドメインが「webmin_t」であることを確認します。

(6) 詳細は,GUIのマニュアルを参照して下さい。