Info: Version 1.6.x is available.

English Page

TOMOYO Linuxによるアクセス解析手順

Last modified: $Date: 2011-11-20 09:56:56 +0900 (Sun, 20 Nov 2011) $

TOMOYO Linux のポリシーはパス名で表現されるため、ファイルのアクセスを追跡するためにも利用できます。
特定のプログラムがどのようなファイルにアクセスしているかを知りたい場合や、特定のディレクトリにファイルを作成しているプログラムを知りたい場合に利用できます。

準備

TOMOYO Linux カーネルのインストール

カーネルをコンパイルする方法については、TOMOYO Linuxカーネルの作成手順を参照してください。

SELinux をサポートするディストリビューションでは、 SELinux が無効になっていないとインストール時にエラーが発生する場合があります。インストール時に以下のようなエラーメッセージが表示される場合は、 SELinux を無効にしてからインストールしてください。 /etc/selinux/config の SELINUX= の行を SELINUX=disabled に書き換えてからシステムを再起動するか、あるいは、カーネル起動時のコマンドラインに selinux=0 というオプションを渡すことで SELinux を無効にできます。

[root@localhost ~]# rpm -ihv kernel-smp-2.6.9-78.0.8.EL_tomoyo_1.5.4.i586.rpm
Preparing...                ########################################### [100%]
Error: %pre(kernel-2.6.9-78.0.8.EL_tomoyo_1.5.4.i586) scriptlet failed, exit status 255
Error:   install: %pre scriptlet failed (2), skipping kernel-2.6.9-78.0.8.EL_tomoyo_1.5.4

なお、 TOMOYO Linux 自身は SELinux と同時に使用することができます。以下の操作では SELinux を有効にした状態でも構いません。

TOMOYO Linux ツールのインストール

ツールをコンパイルするには、以下のコマンドを実行してください。

# TOMOYO Linux ツールのソースをダウンロードする。
wget -O ccs-tools-1.5.5-20090401.tar.gz 'http://sourceforge.jp/frs/redir.php?m=jaist&f=/tomoyo/27220/ccs-tools-1.5.5-20090401.tar.gz'
# 展開する。
tar -zxf ccs-tools-1.5.5-20090401.tar.gz
# コンパイルする。
make -C ccstools/ all install

ポリシーの作成

/etc/ccs/profile.conf を作成し、以下の内容を指定します。

MAC_FOR_FILE=1
MAX_ACCEPT_ENTRY=1048576
MAX_GRANT_LOG=0
MAX_REJECT_LOG=0
TOMOYO_VERBOSE=0

以下のコマンドを実行してください。

/usr/lib/ccs/init_policy.sh

解析

TOMOYO Linuxカーネルで起動します。

解析したいアプリケーションを動作させます。

/usr/lib/ccs/editpolicy を実行すると、現在に至るまでに実行されたプログラムの一覧を表示できます。プログラムを選択して Enter を押すと、そのプログラムがアクセスしたファイルの一覧が表示されます。ポリシーエディタの使い方については、ポリシーエディタの使い方を参照してください。

/usr/lib/ccs/savepolicy を実行すると、現在に至るまでにアクセスされたファイルの一覧を /etc/ccs/domain_policy.conf に保存することができます。

sflogo.php