[tomoyo-users 671] TOMOYO @2ch
Tetsuo Handa
from-tomoyo-users @ I-love.SAKURA.ne.jp
熊猫です。 熊猫だけでなく原田さんも書き込み規制を受けているようですのでこちらで回答。(^^; (1) http://pc11.2ch.net/test/read.cgi/linux/1239030346/525 について アクセスログに対して unlink /var/log/tomoyo/reject_log.txt /usr/sbin/ccs-auditd /dev/null /var/log/tomoyo/reject_log.txt sleep 3 killall ccs-auditd sleep 3 grep -A 2 -F " mode=learning " /var/log/tomoyo/reject_log.txt | /usr/lib/ccs/convert-audit-log | ccs-sortpolicy | sed -e 's:task\.pid=[0-9]*::g' -e 's:task\.ppid=[0-9]*::g' -e 's:path1\.parent.ino=[0-9]*::g' -e 's:path2\.parent.ino=[0-9]*::g' -e 's:path1\.ino=[0-9]*::g' -e 's:path2\.ino=[0-9]*::g' | ccs-patternize --file /proc/ccs/exception_policy > /tmp/tmp1 sed -e 's/ exec\.envp\["new_expiry"\]="[0-9]*"/ exec.envp["new_expiry"]="\\$"/g' -e 's/ exec\.envp\["old_expiry"\]="[0-9]*"/ exec.envp["old_expiry"]="\\$"/g' -e 's/ exec\.envp\["pid"\]="[0-9]*"/ exec.envp["pid"]="\\$"/g' -e 's/ exec\.envp\["SEQNUM"\]="[0-9]*"/ exec.envp["SEQNUM"]="\\$"/g' -e 's/ exec\.envp\["SSH_CLIENT"\]=".*"/ exec.envp["SSH_CLIENT"]="\\*"/g' -e 's/ exec\.envp\["SSH_CONNECTION"\]=".*"/ exec.envp["SSH_CONNECTION"]="\\*"/g' -e 's: exec\.envp\["SSH_TTY"\]="/dev/pts/[0-9]*": exec.envp["SSH_TTY"]="/dev/pts/\\$":g' -e 's/exec\.argv\[0\]="ps" exec\.argv\[1\]="-p" exec\.argv\[2\]="[0-9]*"/exec.argv[0]="ps" exec.argv[1]="-p" exec.argv[2]="\\$"/g' < /tmp/tmp1 > /tmp/tmp2 ccs-loadpolicy -d < /tmp/tmp2 ccs-savepolicy という処理(「 0 か 1 かそれ以外か」くらいしか使い道のない PID / PPID および 「 link や rename 操作に於いて path1.parent.ino と path2.parent.ino が同じか 否か」くらいしか使い道のない INO を除去し、ポート番号や秒数などの数値を パターン化)を通すことで得られたポリシーの例( Ubuntu 9.10 server で起動から ログインするまで)を http://tomoyo.sourceforge.jp/cgi-bin/lxr/source/ubuntu-9.10-ccs-1.7.1/?v=policy-sample に置きました。コマンドライン引数や環境変数なども全てチェックしてくれるような ポリシーが生成されていますが、そのままでは実用には使えないでしょう。 (2) http://pc11.2ch.net/test/read.cgi/linux/1239030346/581 について まず確認ですが、既に使える状態で配布されている TOMOYO 2.2.0 ではなくて、 TOMOYO 1.7 を使いたいということですね?( TOMOYO 2.2.0 を使いたい場合は http://thinkit.jp/article/979/1/ や http://sourceforge.jp/projects/tomoyo/docs/ubuntu_offline200908_tomoyo01.pdf を 参照ください。) Ubuntu 9.10 でのコンパイルには specs/build-ubuntu_9.10.sh をご利用ください。 generic をベースに TOMOYO パッチを適用したパッケージが生成されるので、 linux-image-2.6.31-14-ccs_2.6.31-14.48_i386.deb と linux-headers-2.6.31-14-ccs_2.6.31-14.48_i386.deb をインストールしてください。 11/11になったら ccs-patch-1.7.1-20091111.tar.gz をアップロードしますが、 それまでは以下のようにして暫定の ccs-patch-1.7.0-20090911.tar.gz を用意して ください。 mkdir -p /usr/src/rpm/SOURCES/ cd /usr/src/rpm/SOURCES/ wget -O - 'http://sourceforge.jp/projects/tomoyo/svn/view/trunk/1.7.x/ccs-patch.tar.gz?root=tomoyo&view=tar' | tar -zxf - tar -zcf ccs-patch-1.7.0-20090911.tar.gz -C ccs-patch/ -- . コンパイルが面倒という場合は、コンパイル済みのものが http://tomoyo.sourceforge.jp/incoming/linux-image-2.6.31-14-ccs1.7.1-pre_2.6.31-14.48_i386.deb http://tomoyo.sourceforge.jp/incoming/linux-headers-2.6.31-14-ccs1.7.1-pre_2.6.31-14.48_i386.deb にあります。 Ubuntu 8.10 以降ではカスタムフレーバー作成スクリプトが削除されてしまった ために、 Ubuntu から配布されている linux-headers-2.6.31-14_2.6.31-14.48_all.deb と TOMOYO プロジェクトで配布している( include/linux/sched.h と include/linux/init_task.h が変更された)それとが競合してしまうという悩みが ありました。しかし、スクリプトに修正を加えることで Ubuntu 8.04 と同様に TOMOYO パッチにより変更されたファイルを linux-headers-2.6.31-14-ccs_2.6.31-14.48_i386.deb 内に閉じ込めることに 成功したので、 linux-headers-2.6.31-14_2.6.31-14.48_all.deb と linux-libc-dev_2.6.31-14.48_i386.deb は Ubuntu から配布されているものを 利用することが可能になりました。 (3) http://pc11.2ch.net/test/read.cgi/linux/1239030346/582 について patch -sp1 < patches/ccs-patch-2.6.31-ubuntu-9.10.diff というのは、 ccs-patch-2.6.31-ubuntu-9.10.diff の中のパス名の先頭から最初のスラッシュまでを 削除することで得られるパス名のファイルに対して適用するという指定です。 patches/ccs-patch-2.6.31-ubuntu-9.10.diff の中のパス名は linux-2.6.31-10.31.orig/fs/attr.c となっていますから、 patch -sp1 という指定を した場合、 fs/attr.c に対して適用しようとします。カーネルソースは 「~/ダウンロード/linux-2.6.31」に展開されているのですから 「 cd ~/ダウンロード/linux-2.6.31」のようにして linux-2.6.31 に移動してから patch -sp1 < patches/ccs-patch-2.6.31-ubuntu-9.10.diff のようにしてやらないと fs/attr.c が見つからないと言われてしまうわけです。
tomoyo-users メーリングリストの案内 |
|
|||||||||||||||||||||||||||||||||||||||||||||||||||