TOPキーパーソンインタビュー> 独自環境からLinux標準への移植を開始
TOMOYO Linuxメインラインへの挑戦
第2回:海外での講演、そして新たなチャレンジへ 話者:NTTデータ  原田 季栄、半田 哲夫、武田 健太郎   2007/9/25

株式会社NTTデータ  原田 季栄

株式会社NTTデータ
原田 季栄

1985年北海道大学工学部応用物理学科卒。同年NTTに入社し、現在はNTTデータ技術開発本部に勤務。2003年よりオープンソースの研究開発に従事し、シンクライアント、Linuxのセキュリティ強化に取り組む。「使いこなせて安全」を目指すセキュアOSとして知られる国産セキュアOS、TOMOYO Linuxのプロジェクトマネージャ。


NTTデータ先端技術株式会社
半田 哲夫

2001年4月にNTTデータカスタマサービス株式会社に入社して半年後、OJTのためにNTTデータ技術開発本部へ派遣され、Linuxと出会う。2003年度から原田氏と共にTOMOYO Linuxの研究開発を続けている。

NTTデータ先端技術株式会社  半田 哲夫
株式会社NTTデータ  武田 健太郎

株式会社NTTデータ
武田 健太郎

平成18年よりTOMOYO Linuxプロジェクトに参加。TOMOYO Linuxのプロモーション活動と、Linux標準セキュリティフレームワークであるLSMに対応したTOMOYO Linux 2.0系統の開発を主に行っている。

1   2  3  次のページ
   日本発のセキュアLinuxとして開発が進められている「TOMOYO Linux」。2006年から2007年にかけて相次いで発表の場を設け、その活動を活発化しつつある。使いやすく、セキュアな環境を実現するTOMOYO Linuxは今、メインライン提案に向け動きを加速している。この動きの原動力の源は、そしてメインラインを目指すための課題とは何か。第2回では海外での講演のレポートとこれからの挑戦について語ってもらった。


独自環境からLinux標準への移植を開始

— LKMLへの投稿内容は準備されていたのですか?

原田氏:話が細かくなりますが、これまで開発していたTOMOYO Linuxは、Linuxの標準規格に準拠していない部分がありました。2.6と呼ばれる現在のLinuxのカーネルには、LSM(Linux Security Modules)というセキュリティを強化するためのフレームワークが実装されており、SELinuxやLIDSなどはこのLSMを使う形で実現されています。家でたとえるならば、LSMはあらかじめ構築されている配電管のようなものです。

TOMOYO Linuxは、これをまったく使用せずにセキュアな環境を実現してきました。つまり、自前で配電管をめぐらして利用したのがそれまでのTOMOYO Linuxでした。それには様々な事情もあるのですが、いずれにせよあらかじめ提供されている標準の仕組みを利用せず(無視して)、独自の拡張を提案しても標準に採用されるわけがありません。

そこで、開発メンバーと話し合い、これまで開発したTOMOYO LinuxをLSMに準拠するようなものに作り直した上で投稿することを決定し、ELCの発表準備と並行して進めていました。

具体的には、まずプロジェクトとしてLSM版のリリースを行って、そのリリース内容をLKMLに投稿する、そしてLKMLに投稿した内容をOLSのBOFで紹介、議論するということで3段構成です。6月には、LSM版と非LSM版の最新版、ユーザからの要望が多かったGUIの3本のリリースを行いました。開発陣は文字通りフル稼働です。
TOMOYO Linux 1.4.1:2007年6月5日
http://sourceforge.jp/forum/forum.php?forum_id=12047

TOMOYO Linux 2.0(LSM対応版):2007年6月7日
http://sourceforge.jp/forum/forum.php?forum_id=12065

TOMOYO Linux GUI 1.0:2007年6月19日
http://sourceforge.jp/forum/forum.php?forum_id=12144

6月7日にLSM版のリリースを行いいよいよLKMLへの投稿となりましたが、むしろそこからが大変でした。「こうするとうまくいかないだろう」ということはある程度想像がついても、「こう提案すれば良いだろう」という解が見えません。深く考えだすと、それまでわかっていたつもりのことがわからなくなってきます。

「TOMOYO Linuxの本質は何だろう」ということを何度も議論しました。OLSの日程は決まっていますから、1日過ぎるということは1日機会を失うということです。日増しに焦りがつのります。

アブストラクトを投稿したときと同じように、ずっとそこに答えを探し続けました。ある日、「こうじゃないかな」と浮かんだかすかな考えにそれが求めていたものという確信を感じました。それをエディターに打ち込み、二人に「多分これだと思う」と説明しました。それが6月11日で、そのあと文章の推敲を重ね、2日後の13日、BOFの2週間前LKMLに投稿しました。

LKMLにTOMOYO LinuxのRFCを投稿しました
http://sourceforge.jp/forum/forum.php?forum_id=12133


— プログラムの移植以外の課題はありましたか?
原田氏:LKMLへの投稿は、議論をするのが目的ですから、ただ出して終わりではなく、そこからが本番です。投稿へのレスを待ち、その1つ1つに答えていく作業を行いました。その他にもう1つ本質的な課題が残っていました。それは、OLS2007のBOFで何を主張し、何を議論するかを決めることです。

LKMLへの投稿はいわばTOMOYO Linuxの自己紹介であり、TOMOYO Linuxとは何かを伝えること、TOMOYO Linuxのコードを読んでもらうことが目的です。それに対して、BOFでは既にメインラインに入っているSELinuxやメインライン提案中のAppArmorなどとの比較が欠かせません。リリースとLKML投稿を経て、最後の課題と直面することになったわけですが、ここでひとつ悩ましい問題がありました。

TOMOYO Linuxはいわゆる「セキュアOS」、つまりセキュリティを強化したOSですが、その方式として2つが存在します。1つはラベル方式、もう1つはパス名方式です。現在Linuxのメインラインに含まれている「SELinux」はラベル方式です。


実はラベル方式の推進派は「パス名方式はセキュリティ上欠陥がある」ということを主張しており、それが一種定説のような形になっています。パス名方式はもともと評判が悪いのです。

その上同じパス名方式として「AppArmor」と呼ばれるセキュアOSが存在していました。AppArmorは昨年のOLSで発表を行っており、TOMOYO Linuxは一年遅れです。


ELCで組み込み関係の開発者に対してデビューしたとはいっても、知名度のないパス名方式の新参者であるTOMOYO Linuxとしては、ただ「こんなものを作りました」では通らないのは自明でした。

こうした状況にあって「何を狙うべきか」について胃を痛める思いをしながら考え続けましたが、結局この根源的な問いには明確な答えはみつかりませんでした。そもそもLKMLへの投稿およびその結果のフォローに多大な時間がかかり、じっくり考えたり資料を書く時間すらとれないような状況だったのです。


開始直前まで行ったプレゼンテーション資料の作成

— ということは、結局資料は作成されなかった?
原田氏:結論からいえば、出国前には資料は1ページも書けませんでした。時間もありませんでしたが、それ以上に「どう提案するか」がまとまらなかったことが最大の原因です。ただ何らかの準備はしたいと思い、事前にスケッチブックとカラーマーカーを、さらに出国ゲートに向かう直前に成田空港で小さな手帳を1つ購入しました。

スケッチブックは、事前にトピック複数を書き出しておいてそれをBOF参加者に見せながら議論したり、スケッチブックを使ってリアルタイムで説明をしようかと考えて用意したものです。手帳はオタワまでの長い機中の時間を利用し、資料や説明の題材を書き留めようと考えて購入したものです。

手帳は機内でずっと手元に置き、何か思いつくたびに断片的な言葉を書き留めておきました。その内容は20ページ弱になりました。

実際に使われたメモ帳とスケッチブック
図1:実際に使われたメモ帳とスケッチブック

— その状況のままOLS2007がはじまったわけですね
原田氏:書きたい、書かなければいけないと思いながら作業できない状態が続いていました。実際に資料を書くことを決意したのは、初日に行われたCELFのTim Bird氏の組み込みLinuxのBOFに参加した際のことです。

CELFのTim Bird氏のBOF
図2:CELFのTim Bird氏のBOF

このBOFが行われた部屋には60名以上の参加者が集まっており、Timは「用意したスライド」を用いて、余裕を持って説明し、参加者からは積極的な割り込みが入っていました。一方的なプレゼンテーションというよりは対話会に近いイメージですが、これはOLS全体に共通する雰囲気です。

Timのスライドから。SELinux、AppArmor、TOMOYO Linuxの名前がみえる
図3:Timのスライドから。SELinux、AppArmor、TOMOYO Linuxの名前がみえる

自分がELCで参加したBOFは、人数はもっと少数で膝をつき合わせて順番に意見を述べるというスタイルで、資料も用意されていませんでした。TOMOYO Linuxのセッションはこれほど人数が集まらないとは思いましたが、資料なしで説明はあり得ませんし、スケッチブックでその場で議論をするのも無理だと思いました。

Timのセッションを聞きながら2日後の自分のセッションを想像し、青ざめる思いをしていました。

— その後、資料を作り始めたのですね?
原田氏:手帳の断片的な言葉を拾い集め、並べ直し、時間をおいて推敲する。このプロセスを繰り返しながら、PowerPointで資料を書きはじめました。資料がある程度形になったのは2日目の午後で、BOF講演の10分前までずっと持参したPCで作業していました。

最初はアウトラインのテキストのみで書きはじめ、行き詰まるとデザインを調整し、また内容に戻る、というように作業を進めました。BOFについては、一概にどう進めるかという決まりはありませんが、資料は参加者のリアクションと進行をある程度予想しながら組み立てました。


1   2  3  次のページ

INDEX
第2回:海外での講演、そして新たなチャレンジへ
独自環境からLinux標準への移植を開始
  10分前に完成した資料で臨んだBOF
  帰国後〜OLSとBOFを振り返って