UbuntuでTOMOYO Linuxを使う

2009年7月9日(木)
吉田 史

TOMOYO LinuxがUbuntuに受け入れられるまで

 ここでは、「TOMOYOがどのようにUbuntuに受け入れられたのか」という経緯について説明します。

 2008年8月に行われた、メインラインに入る前の挑戦では、Kernel Teamから「パッチを取り込むだけの理由は見いだせない。しかもわれわれは強制アクセス制御のために、AppArmorをすでに利用している。乗り換えるだけのメリットはない」(https://lists.ubuntu.com/archives/kernel-team/2008-August/002965.html)と拒否されてしまいました。

 2.6.30におけるTOMOYO Linuxの立ち位置は、「機能としては含まれているが、デフォルトコンフィグでは無効にされている」というものです。つまり、2系(LSM版)をユーザーの手に届けるには、ディストリビューションのカーネルメンテナに、副作用の小ささを納得してもらい、コンフィグレーションを変更してもらう必要があります。

 Ubuntuのカーネルコンフィグは、Kernel Teamと呼ばれる開発グループによって精査されます。一部のコンフィグはリクエストベースで変更されることもありますが、ほとんどは各リリース時に1回行われる開発会議、UDS(Ubuntu Developer Summit)で議論されます。2009年5月末に行われたUDSの参加者や、TOMOYOに興味を示していた人たちに依頼してKernel Teamとディスカッションしてもらい、ついに「LSMとして実装されているなら、おかしな副作用が発生することもないのでOKだろう」という裁定を得ることができました。

 また、Kernel Teamでも「2.6.30でせっかく入った機能なので、有効にしてもいいだろう」という思惑でいた上に、Ubuntuのセキュリティ関連機能の実装担当者もTOMOYO Linuxに興味を示していたことから、かなりあっさりと有効化に成功しました。

 こうして、TOMOYO LinuxはUbuntuに受け入れられるようになったのです。

Linuxを「調理」して提供されるディストリビューション

 Linuxカーネルの開発は、Linux開発者の集うメーリングリスト「LKML(Linux Kernel Mailing List)」上で、Linus Torvalds氏を中心に行われています。ここで開発されるのが「メインライン」と呼ばれるものです。
 
 LKMLで開発されたカーネルを「素材」として用い、独自の調整を加え、さらにユーザランドを追加して一式にまとめたものがRed HatやDebian GNU/Linux、Ubuntuなどの「ディストリビューション」です。各ディストリビューションではメインラインにないパッチを追加することもあるので、コンパイル時に各設定の有効・無効を調整するといった「調理」を行った上でユーザーに提供します(図3-1)。

 メインラインカーネルに含まれている機能でも、この段階で無効にされれば、ユーザーが利用することはできません。言い換えれば、ユーザーに機能が提供されるためには、以下のどちらかが必要です。

・「素材」としてメインラインに機能が含まれ、なおかつそれが活かされたまま「調理」されている

・「調理」の段階で独自に「改造」される

 TOMOYO Linuxの場合、2系(LSM版)が前者、1系(非LSM版)が後者に相当します。

 「改造」は、品質保証の問題や、心理的な抵抗感のある大変な作業です。メインラインに受け入れられていない1系は、パッチ(=「改造」)を受け入れてもらうことは困難でした。強い説得力があれば話は別ですが、現状のTOMOYOは強い理由になるものを獲得できていません。

 逆に、メインラインにLSMとして含まれた2系は、コンフィグレーションの変更をメンテナに納得させるだけ、という状態です(図 3-2)。

 Ubuntuでの実例は、「メインラインに取り込まれる」ことで、TOMOYOが各ディストリビューションで使われるようになる可能性を、端的に示したものだと筆者は考えています。

Ubuntu Japanese Team/株式会社創夢
Ubuntu Japanese Team/Ubuntu Member。株式会社創夢所属。システム管理を中心にWindows/PC Unixを併用するサーバー・HPC・ワークステーション系エンジニア。Ubuntu Japanese Teamではミラーサーバー群の管理や翻訳などの作業を担当。

Think ITメルマガ会員登録受付中

Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

他にもこの記事が読まれています