Dan氏のAppArmorについての思い

★注意:誤解がなきよう、この日の内容の注意点をid:himainu:20060211に書いときました。★

http://danwalsh.livejournal.com/
こりゃ面白い。
Dan WalshのAppArmorについての思い。
勝手に意訳を交え要約すると、

  • UNIXの世界の回想
    • Unixの世界では、既に完成したものがあった。
    • にもかかわらず、様々なベンダから亜種が登場した。
    • 亜種同士で「内戦」が勃発。
    • ベンダは全部のUNIXに対応する必要があって大変になってしまった。
    • 内戦してる間に、MSに敗北してしまった。
  • さて、セキュアOSの世界では?
    • SELinuxという優れたテクノロジがある。
    • さまざまなディストロに取り込まれ、ベンダはSELinuxだけを気にすればよくなった。
    • と思ったら、突如NovelがAppArmorを使いはじめた
    • これは不要な分岐ではないか。
    • また「内戦」が勃発するのは勘弁してほしい。
      • 開発者は2つのセキュアOSをサポートする必要が出てきてしまう
      • その結果どうなるか。開発者は「どちらもサポートしない」ことを選ぶだろう。社会のために悪影響が生じる。
    • ノベルは、「SELinuxを簡単にすること」にお金を使ってほしい
  • 結論:ノベルにはAppArmorのいいところをSELinuxに持ってきてもらうように働きかけるぐらいが、社会にとって良いこと

SELinuxで「天下統一」するには

技術的な面で、他のセキュアOSを打倒するには、以下のようになるだろう。
#政治的な部分は知りません
そういえば、Smalley氏も「他のセキュアOSはいらない」と言ってた。
SELinuxで他のセキュアOSをエミューレートすればいい」、と。

SELinuxを使うことによって、他のセキュアOSをある程度エミュレート可能だと思う。SELinux Policy Editorを作った経験からして。
例えば、パス名ベースのアクセス制御も、エミュレート可能。
しかし、完全にエミュレートできない部分も存在する。
例えば, AppArmor, TOMOYO Linuxをみてて、エミュレートできないと感じた部分

  • LSMのチェックが入ってない部分のアクセス制御
  • 一時ファイル(設定時に存在しないファイルに)対するパス名ベースのアクセス制御
  • ドメインに使えない名前が存在する

が、これらは、SELinuxが頑張れば解決できるんだろう。

というわけで、天下統一のために技術的に必要なのは、

  • 「他のセキュアOSをエミュレートするプロジェクトを立ち上げる」
  • 「エミュレートできない部分を発見したら,本家に報告。本家に対応してもらう」
    • エミューレートできない部分の重要性を説明、説得
    • LSMのフックが入ってない部分を発見したら、カーネル本家に入れてもらう

うひー。大変そう…
政治的、市場的に打倒する方が楽なんでしょうかね。
##重要: 誤解のないように言っておくと、私は他のセキュアOSを打倒する活動をする気はないですよ!!!
そうなったら、
私は政治的な喧嘩には巻き込まれたくないので、遠くから見守ります。

様々なセキュアOSが作られているのは何故か?

作り手の気持ちになってみて理由を考えてみる。

  • SELinuxベースで使い勝手を向上させる努力をするより、作ったほうが早い
  • NSAとのやりとり、説得が大変。そんなことに労力を費すぐらいなら、作ったほうが楽しい.
  • NSAが全部決めるのは面白くない。好きなように作りたい。

TOMOYO Linuxの中の人はどう思っているのでしょう