インタビュー:OpenBSDのTheo de Raadtに聞く

Unix系オペレーティング・システムOpenBSDの新バージョン3.9が間もなくリリースされる。新バージョンと同プロジェクトの財政状況について、またフリーソフトウェアを利用して利益を上げるばかりで何ら貢献しようとしない企業について、同プロジェクトのリーダーTheo de Raadtに聞いた。

NewsForge:よろしくお願いします。まず始めに、ご自身についてお話しいただけますか。OpenBSDプロジェクトではどのようなお仕事をなさっているのでしょうか。

Theo de Raadt:OpenBSDのプロジェクト・リーダーになって10年以上になります。いろいろなことがありましたが、グループの開発者たちと乗り切ってきました。関連プロジェクトもいくつかあり、Unixの世界で皆さんに広く使われています。OpenSSHなどですね。

NF:OpenBSDには、現在、何人の開発者がいるのでしょうか。

TdR:プロジェクト内の開発者は少しずつ増えてきました。当初は40名でしたが、今では80名ほどになっています。もちろん、これは内部の開発者だけです。ほかに、プロジェクトを外部から助けてくれる人たちが沢山います。不具合を報告してくれる人、改修法や新しいコードを寄せてくれる人たちです。ほかのソースにあるコードを一部借用することだってあるのですよ。もちろん、そうした利用が許されていればのことですけど。(プロジェクト内部の開発者と外部の人たちを分けていますが)内部の開発者は責任が重く――担当領域を実際に維持管理する――、外部の人たちはそれに比べれば責任は軽くなります。ですから、外部の人が内部の人を羨むことはなく、不具合を発見し改修法を考え報告することに専念しているはずです。多くの(適切な)改修法を報告してくれる人がいれば、内部の開発者として招請しています。

NF:hackathonと呼ばれているイベントを定期的に開催していますね。これは、どういうイベントでしょうか。

TdR:hackathonは、何年も前から開催しているイベントです。みんなが一か所に集まって(通例、カンファレンスの前か後です)コードを書きます。まさに仕事をするための場で、おしゃべりはほとんどありません。みんな、やるべきことは基本的にわかっていますからね。会議でもなく、発表会でもなく、いわゆるサミットでもありません。ソース・ツリーに関する作業をする場です。今すぐ確かめたいことがあれば、その当の相手がすぐ近くに座っている。そういう環境です。

NF:OpenBSDは、現在使われているオペレーティング・システムの中でもきわめて安全性が高いと言われています。どのような対策を取っているのでしょうか。

TdR:この10年というもの、私たちはOpenBSDの安全性を高めるために過剰なくらい真剣に取り組んできました。第1に、あらゆることについて抜本的な検討をためらわないこと。私たちは後方互換性が失われることも厭いませんでした。第2に、システムのどこであろうとも欠陥を一つ見つけたら同じ欠陥がほかにもあるはずだと考えること。私たちは同じ欠陥を徹底的に洗い出しました。第3に、ソフトウェアの欠陥を攻撃しにくいものにする手法をいくつか開発し、それらを組み合わせたことです。

私たちはこうした3つの対策を徹底的に守ってきましたが、この点では他のベンダーより遥かに先行しています。私たちのようにソースコードを扱っているベンダーはないでしょう。私たちはソースコードを完成品だとは思っていません。常に手をかけ少しずつ改善していくものだと考えています。

詳しいことは、wikipediaに私たちの安全対策を論じた労作がありますのでご覧ください。あちこちのカンファレンスで私が発表してきた『Exploit Mitigation Techniques』という報告書もあります。

NF:OpenBSDを使うべき理由はありますか。安全性以外にですが。

TdR:私は論評する立場にはありません。人それぞれ使いたいものを使うべきですし、「何を使うべし」とご託宣を述べるのは私の任ではありません。しかし、冒険好きの人がいたら尋ねてみるとよいでしょう。

NF:この5月1日に次期安定バージョン3.9がリリースされます。3.8から3.9への全変更点が公開されていますが、このリリースの新機能について一言お願いします。macppcアーキテクチャ上のG5ベースのMacがサポートされます。現時点での完成度はいかがでしょうか。

TdR:動いているモデルもありますが、Serverworks SATAチップセットを搭載するマシンの一部で不可解な不具合が見つかっており、まだ解決できていません。このチップセットの解説資料がないのです。よくあることですが。

NF:ハードウェア・センサーがサポートされますね(ESM、IPMI、IIC)。サーバーには、特に便利な機能だと思いますが。

TdR:今度のリリースで力を入れてきた部分です。温度・電圧・冷却ファンのセンサー・データを提供するサブシステムが3つあり、それらを中心に統合したシステムを作りました。何か異常があれば、デーモンが警告を発するようにすることができます。

その中の「ic2」サブシステムについてですが、Linuxの世界で使われているlmセンサー・パッケージはマシンごとにあちこちを手作業で構成する必要があります。OpenBSDでは、各デバイスを注意深く探査することで、どのPCでも構成作業なしで使えるようにしました。ほぼすべてのOpenBSD 3.9マシンで、センサーが使えるようになります。

しかし、3.9をリリースするには、まだまだやるべきことが残っています。イベントの通知に関してセンサー・デーモンにまだ弱いところがありますから。私たちは素晴らしく優れたものにしたいのです。

NF:ftp-proxyが新しくなります。従来のFTPプロキシ・デーモンも十分に動いていましたが、新しくした理由をお聞かせください。

TdR:FTPは開始の手順が厄介で、それをプロキシで完璧に処理するのはかなり困難なのです。新しいデーモンでは設計を改善し、IPv6にも対応しました。

NF:NFE(Nvidia nForce MCP Ethernet)アダプターについてですが、どのような方法でこのドライバを作ったのですか。リバース・エンジニアリングでしょうか。

TdR:Nvidiaは解説資料を誰にも開示していません。代わりに巨大なバイナリ・コードの固まりを提供し、利用者はそれをカーネルにロードすればよいと考えているのです。数年前のことですが、ドイツにいるLinux系の人たちがこのドライバをリバース・エンジニアリングしました。ところが、私がざっと聞いた限りでは、Nvidiaから中止を求められ、活動を放棄したのだそうです。まったく驚きです。それはともかく、(ドライバの製作に着手した)Jonathan Grayが技術的な細部について数点彼らに支援を求めたのですが拒否されました。信じられないことですから私からも支援を求めてみたのですが、やはり断られました。Linuxの開発者がですよ。ベンダー提供の中身のわからないバイナリを動かさざるを得ない事態にコミュニティを追い込むようなことをするのですからね。オープンソースの矜恃はどこにいったのでしょうか。しかし、理解しがたい人たちがいるものです。彼らの信念は、私よりもずっと柔軟性があるのでしょう。

ドライバについては、Damien Bergaminiが加勢し、問題点はすべて改修しました。嬉しいことに、Nvidiaのバイナリ塊よりも良好に動作しています。大きさもずっと小ぶりで、ソースコードもきれいです。

NF:以前、OpenBSDコミュニティの運動として、ハードウェア・ベンダーに自社製品(イーサネット、ワイヤレス・ネットワーク・アダプター、RAIDコントローラーなど)の解説資料を開示するよう求めたことがありました。OpenBSDなどのオープンソース・プロジェクト用のドライバを書けるようにするためですね。開示したベンダーもありましたが、要請に応えなかったベンダーもありました。なぜベンダーは開示しないのでしょうか。OpenBSDでは自社製品を使ってほしくないと考えているのでしょうか。

TdR:ベンダーから解説資料を引き出すには、いつでも何らかの働きかけが必要ですが、中には固辞するベンダーもあります。また、Linux開発者がベンダーと非開示契約(NDA)を交わすこともよくあります。その開発者は魔法を使ってLinuxドライバを書けば満足でしょうが、そこに使われた魔法がわかる人は、その開発者を除けば、世界中に誰一人いないことになります。NDAに署名すればLinuxで動くドライバが手に入ります。それは確かですが、その内容には魔法がかかっているため茫洋として理解することができません。不具合があっても他の人には改修できないのです。秘密ばかりなのですから。これでは、バイナリ塊のソースコード版でしかありません。

ベンダーが情報を出そうとしないのには、いろいろな理由があるでしょう。しかし、利用者から見れば、どの理由も理屈が通りません。車であれば、部品の資料はほぼすべて手に入ります。同じように、コンピュータの部品についても資料を入手できるのが当然です。

ベンダーから突然話があり、頼みもしないのにハードウェアとソフトウェアを提供されることが、ときどきあります。そうした例は増えていますが、大概はアジアのハードウェア・メーカーですね。彼らは自社のハードウェアがどのシステムでもサポートされることを望んでいます。これに対して、特に米国の企業はますます閉鎖的になっています。どのみち無駄だろうと問い合わせを躊躇することもたびたびです。その結果、高機能あるいは最新の米国製品がなかなかサポートされないという事態が発生します。資料がないという理由だけのためにです。これは問題には違いありませんが、重く考える必要はありません。なぜなら、世界が買っている製品の99%はアジア製ですから。たとえば、アジアの802.11ベンダーが占める市場は5年前には1%しかありませんでしたが、1〜2年以内にインテル(同社のラップトップ向けCentrinoプラットフォーム・ブランドは特定のワイヤレス・チップセットを想定している)と市場を分け合うことになりそうです。アジアの企業は、RAlinkやZydasなどですね。

NF:OpenBSDの利用者は少し増えているようです。今、ハードウェア・メーカーに資料を開示するよう求めれば、受け入れられる可能性が高いかもしれません。

TdR:資料の入手について、状況はよくなっていますが、それがOpenBSDの利用者が増えたためなのかどうかはわかりません。アジアの製品が増えたことも一つの理由でしょう(アジアではビジネスの常識――利用者に必要な資料を提供する――がまだ通用します)。この点については、アジアのビジネスは理解が進んでいると思います。資料請求を拒否するアジアの企業は稀ですが、米国企業では応ずる方が稀です。

NF:OpenBSDはCDの販売と寄付で運営されていると聞いています。それだけで、すべてのプロジェクトを賄うことができるのでしょうか。

TdR:収入は年によって増減します。寄付は増えたり減ったりしますし、製品の売り上げも同じです。FTPサーバーの稼働率は、上がる一方ですが。

収入が落ち込んだときに備えて留保を積んでいますが、基本的な活動は少しずつ低下しているでしょう。少なくとも成長は鈍っています。実は、hackathonの頻度を増やしたいと考えています。そうした場から多くの驚異的な発展が生まれてきたからです。もっと資金が豊富であれば、経済的余裕の少ない開発者に旅費を支給したいとも考えています。実力のある開発者の中には学生や貧困国に住む人たちがいますから。しかし、OpenBSDの財政は、今、そうした施策を実現できるほど豊かではありません。したいことは山ほどありますが、思うにまかせないのです。

私たちのプロジェクトは寄付の課税控除を受けていないので、寄付は一番 頭の痛い問題です。非営利組織になることも検討しましたが、利益云々というのは私たちのプロジェクトには馴染みません。ほとんどの寄付は運営している国以外から来ているのが大きな理由ですが、ほかにも制約や規制が沢山あります。それで、現時点では、納税証明の不要な現金の寄付に頼っているのです。

NF:多くのハードウェア・メーカーがOpenSSHを利用しています。そうしたメーカーから何らかの見返りはありましたか。

TdR:これまでにOpenSSHに関する活動で得たものをすべて合わせると1,000ドルほどになるでしょうか。すべて、個人からのものです。OpenSSHの活動に対して、たとえ1セントでも、それを利用する企業が送ってきた試しはありません。OpenSSHを直接製品に組み込んでいる企業は数百万ドルの節約になっているでしょう。しかし、Cisco、Sun、SGI、HP、IBM、Siemensなど、中規模のファイアウォールを販売する企業は沢山ありますが、1セントさえも送ってきません。Linuxベンダーも同じです。

もちろん、稼ぐためにOpenSSHを作ったわけではありません。私たちは信念に基づいて完全なフリーソフトウェアとして作っています。1980年代の「telnetインフラストラクチャ」に代わるものとしてです。しかし、その価値の一部を何らかの形で還元する企業さえないのは、まったく悲しいことです。

どこかの企業をやり玉にあげるなら、Sunがいいでしょう。Sunは毎年相互運用性のイベントを開催しています。NFSなどのプロトコルがテーマで、SSH実装のテストも含まれています。それらのイベントに参加する開発者に交通費と宿泊費を補助してくれるよう2度頼みましたが、断られました。彼らのSunSSHは私たちのコードを直接参照して作られているという点を考えれば、まったくもって失敬な話です。Sunは恥ずべきです。恥ずかしいことです。実に恥ずかしいことです。

ここで敢えて言わせてもらいます。OpenSSHに欠陥が見つかり、それがSunSSHに引き継がれていたとしても、Sunには教えません。ひょっとすると、そうした欠陥がすでにあるかもしれません。

原文