Debianで使うTOMOYO Linuxここでは、DebianでTOMOYO Linux 1系(非LSM版)を導入するための手順を紹介します。 Debian用のパッケージやまねさんがDebian用に以下のパッケージを開発されています。 http://packages.debian.org/lenny/linux-patch-tomoyo
http://packages.debian.org/lenny/tomoyo-ccstools
導入手順TOMOYOカーネルの構築今回は、上記のパッチを適用したカーネルをdebパッケージとして作成します。 以下のパッケージをインストールします。 % sudo apt-get install fakeroot kernel-package zlib1g-dev カーネルソースとパッチの入手linux-patch-tomoyoをapt-get installすると、依存関係から 自動的にカーネルソースがダウンロードされます。 % sudo apt-get install linux-patch-tomoyo カーネルソースは/usr/srcに、TOMOYOパッチは /usr/src/kernel-patches/diffs/tomoyo の下に保存されます。作業ディレクトリにcdして、カーネルソースおよびTOMOYOのパッチを解凍し、カーネルソースにパッチをあてます。 make menuconfig/boot/の下から、カーネルソースに対応するconfig-*のファイルを探し、カーネルソースを展開したディレクトリの直下に".config"としてコピーします。引き続き、make menuconfigでconfigオプションを選択します。 % cp /boot/config-XXX .config % make menuconfig make menuconfigでは、TOMOYOに関して以下の質問を受けますが、全てデフォルトでOKです。 SAKURA (Domain-Free Mandatory Access Control) support (SAKURA) [Y/n/?] (NEW) TOMOYO (Domain-Based Mandatory Access Control) support (TOMOYO) [Y/n/?] (NEW) Default maximal count for learning mode (TOMOYO_MAX_ACCEPT_ENTRY) [2048] (NEW) Default maximal count for grant log (TOMOYO_MAX_GRANT_LOG) [1024] (NEW) Default maximal count for reject log (TOMOYO_MAX_REJECT_LOG) [1024] (NEW) SYAORAN (Tamper-Proof Device Filesystem) suport (SYAORAN) [M/n/y/?] (NEW) カーネルパッケージのビルドmake-kpkgを使ってTOMOYOカーネルをビルドします。下記では、20090410という日付およびビルド番号001というリビジョン名を指定している例です。リビジョン名には"-"は使えないので注意ください。 % fakeroot make-kpkg --revision 20090410.001 --initrd kernel_image コンパイルが無事終了したらひとつ上のディレクトリにlinux-image*.debというファイルが作成されているはずです。これをdpkgでインストールします。 % sudo dpkg -i ../linux-image-XXX.db これでTOMOYOカーネルパッケージが導入されました。grubのmenu.lstのデフォルト指定は変更されませんので、常にTOMOYOカーネルで起動した場合には、/boot/grub/menu.lstを編集します。 ユーザランドツールの導入TOMOYO対応カーネルが導入されただけでは、TOMOYO Linuxが有効化されません。引き続きユーザランドツールを導入します。 % sudo apt-get install tomoyo-ccstools tomoyo-ccstoolsパッケージは、必要なディレクトリおよび設定ファイルの作成を自動的に行うため少し時間がかかります。 コマンドが終了したら/etc/ccs/というディレクトリができているか確認してみましょう。 % sudo ls /etc/ccs 再起動以上で、準備ができました。PCを再起動して、TOMOYO Linuxカーネルを選択して起動します。正しく導入されていれば、ポリシーエディタでドメインの遷移が確認できるはずです。 % sudo /usr/lib/ccs/editpolicy |