Linux Daily Topics

2017年9月25日AppArmorをDebianでもデフォルトに!? ―Tails開発者が提言

UbuntuやFedora、openSUSEなどメジャーなLinuxディストリビューションのほとんどは、何らかのMAC(Mandatory Access Cotnrols: 強制アクセス制御)を実装したセキュリティモジュールをデフォルトで有効化している。たとえばUbuntu/openSUSEならAppArmor、FedoraならSELinuxといった具合だ。だがDebianの場合、これまで特定のセキュリティモジュールをカーネルレベルでデフォルトでイネーブルにしたことはなかった。そうした中、Debian開発者の間では「DebianにおいてもそろそろAppArmorをデフォルトにすることを考える時期なんじゃないか」という議論が起こり始めている。

議論のきっかけはDebian開発者でもあり、Tails(匿名化/プライバシー保護を目的としたDebianベースのディストロ)開発者としても知られる"intrigeri"が、8月4日付けで開発者向けメーリングリストに投稿したポストに端を発している。

Let's enable AppArmor by default (why not?)

intrigeriはこのポストにおいて「Debianがセキュリティ機構を実装するために何をどれくらいすべきか、プロアクテクィブな議論を行っていきたい」としており、自身からの提案として「⁠⁠SELinuxやその他のモジュールではなく)AppArmorのテストをsidで開始し、約1年をかけてAppArmorに関する情報や課題を整理、その後、⁠次期Debian 10となる)Busterにデフォルトとして実装するかどうかを決めたい」としている。

AppArmorは2008年にUbuntuがデフォルトで採用して以来、SELinuxと勢力を二分するセキュリティモジュールに成長しており、Canonialの開発者たちの貢献もあり、カーネルのメインラインにおけるメンテナンスも活発に行われている。Debianにおいては2011年からオプションとして選択できるようになっており、2014年にはバイナリパッケージも作成されている。intrigerは参考として、AppArmorパッケージを使っているDebianユーザ数が以下のように順調に増加していることを示している。

  • 2015年1月 … 400
  • 2016年1月 … 700(1年で75%増)
  • 2017年1月 … 1300(1年で85%増)
  • 2017年8月 … 1870(7ヵ月で44%増)

なお、SELinuxに対しては「現時点ではDebianユーザの間ではSELinuxのほうがAppArmorより人気があり、Red Hatのデフォルトでもあるため扱いに慣れているシステム管理者も多いかもしれないが、SELinuxのポリシーに従ってライティングやメンテナンス、デバッグなどを行うためには、複雑な概念モデルを理解しなくてはならない。その困難さはAppArmorの比ではないと言われている。また、Red Hatの管理者たちとの話を総合すると、SELinuxユーザは何か問題があるとをSELinuxを無効にすることに慣れているようで、AppArmorとは非常に対照的だ。加えて、Debian派生のディストリビューションでSELinuxをデフォルトでイネーブルにしているものを私は知らない。つまり、DebianがSELinuxを採用すれば深刻なポリシー互換に向き合わなくてはならないことになる」と、Debianとはポリシーやカルチャーの面で根本的に合わないとしている。

もっともAppArmorにすればセキュリティの課題がすべてが解決するわけでは当然なく、intrigeriは「サーバソフトウェアに関してはAppArmorでカバーできるが、デスクトップアプリケーションにはWaylandのようなサンドボックス系の技術が進化し、同時にUXが使いやすくなる必要がある」としており、Debianのセキュリティシステム強化のためにはAppArmorとサンドボックスの両方が必要だとしている。

intrigerがポストに対し、Debian開発者好意的な反応が多く寄せられている。うまく運べばBusterリリース時にはAppArmorがデフォルトのMACとして実装されることが十分に期待できそうだ。

おすすめ記事

記事・ニュース一覧