2006年4月28日

[selinux-users:01555] Re: ラベル・パス名

06/04/28 に Shintaro Fujiwara さんは書きました:
>
> すいません。
>
> 恣意的な言い回しになってしまって。

いえ、全然大丈夫です。

> たとえば、apacheはいくつもプロセスが立ち上がります。
> ちなみに、私のサーバをお見せすると(いいのかよ...)、

大丈夫と思います。w

> [root@xxxxx ~]# ps -efZ |grep httpd
> system_u:system_r:httpd_t root 1681 1 0 Apr23 ? 00:00:00 /usr/local/apache2/bin/httpd -k start
> system_u:system_r:httpd_t nobody 1687 1681 0 Apr23 ? 00:00:00 /usr/local/apache2/bin/httpd -k start
> system_u:system_r:httpd_t nobody 1688 1681 0 Apr23 ? 00:02:57 /usr/local/apache2/bin/httpd -k start
> system_u:system_r:httpd_t nobody 1689 1681 0 Apr23 ? 00:02:15 /usr/local/apache2/bin/httpd -k start
> system_u:system_r:httpd_t nobody 1692 1681 0 Apr23 ? 00:02:41 /usr/local/apache2/bin/httpd -k start
> system_u:system_r:httpd_t nobody 1943 1681 0 Apr23 ? 00:02:20 /usr/local/apache2/bin/httpd -k start
>
> となっています。
>
> 全て、httpd_tというドメインで走っています。
> これがTOMOYOだと、宴会の時見せていただいたような、ツリー構造でいくつも分岐しているという
> 事なんでしょうか。

TOMOYOの場合は、プロセスの起動(execve)を結合したパターン(あるいは
シーケンス)により自動的にドメインが定義されます。起動パターンが同じなら
同じドメインです。上の例で言えば、
/usr/local/apache2/bin/httpd
は多分同一のパターンでしょうからTOMOYOとしては同一のドメインです。

> そうすると、セキュリティ的には、かえって難しくなるんじゃないのかなという疑問がわきます。

SELinuxを使って、TOMOYOと同じように「全てのexecveを独立した
ドメインとして扱え」と言われたら、とても大変だと思います。
藤原さんが書かれている「かえって難しくなる」の中身が問題ですが、
TOMOYOであればドメインを細かくきっていてもその作業は
カーネルがやってくれるので、ドメイン(タイプ)の名前を考えたり
ポリシーを自分で定義しなくて良いのであまり(というか全然)
大変ではありません。

> SELinuxならば、apacheがいくつ子プロセスを生んでも、httpd_tであり、継承されたとしても
> その枠の中でしか動作できない(抜け道がなければ)はずです。

ちょっと前に、Russellからのコメントをmlに流しましたが、
彼は「同じような機能をする」という意味でのグルーピングが
重要と考えているようです。私は、管理と把握ができるなら
グルーピングするよりは個別が良いと思っています。
apache(httpd)配下を同じにするよりは、その下のexecve毎に
独立したドメインとして分離し、制御したほうが良いのでは
ないかということです。

> そうすると、TOMOYO は、every time breaks なので、apacheのプロセス(forkっていううんですか?)
> は、どんななっているのかな、と思いました。
>
> すいません。ちょっと眠いです。
> おやすみなさい。
>
>
>
> On Thu, 27 Apr 2006 17:59:30 +0900
> Tetsuo Handa wrote:
>
> > 熊猫です。
> >
> > > TOMOYOは、いつも破綻すると言っていました。
> > > 原語では、"TOMOYO breaks every time." だったかな。
> > > それは、exec()を使っているからだ、と私は聞いた気がします。
> > この break は「分岐する」という意味だと思います。(^^;
> > ( http://www.alc.co.jp/ で break を検索するとたくさん出てきます。)
> >
> > SELinux では複数のプログラムを同一ドメインで動作させることができるのに対し、
> > TOMOYO では execve() をするたびにドメイン遷移を行うので
> > 複数のプログラムを同一ドメインで動作させることができません。
> > TOMOYO のドメインは を基点としたツリー構造なので
> > 常に分岐しているように見えるわけです。
> >
>
>


--
Toshiharu Harada
mailto:haradats@xxxxx

投稿者 xml-rpc : 2006年4月28日 01:43
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/35608
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。