先日,筆者はセキュリティ対策に仮想マシン技術を利用するというアイデアを執筆した(関連記事)。普段利用するOSを仮想マシン上で稼働させれば,OSがマルウエア(悪意のあるソフトウエア)に感染したとしてもすぐに復旧できる,という内容であった。今回はこれの補足として,セキュリティ対策として仮想マシンを使うのであれば,ホストOSとゲストOSの種類を変えた方がよい,という主張をしたい。

 ホストOSとは仮想マシンを動作させているOSであり,ゲストOSとは仮想マシン上で動作するOSのことを指す。WindowsをゲストOSとして使うのであれば,ホストOSはWindowsであるよりも別のOSにした方が,恐らく全体のセキュリティ水準を向上できるだろう。2つのOSのぜい弱性を狙うことは,1つのOSのぜい弱性を狙うよりも難しいからである。

 WindowsをゲストOSとして利用するならば,ホストOSをLinuxやBSD,Mac OS X,Solarisにするのだ。もし悪意のある侵入者によってゲストOSのWindowsが狙われたとしても,ユーザーは仮想マシンを再セットアップすることで,システムを簡単に復元できる。侵入者はWindowsがどのOSにホストしているのかを調べなければ,システム全体を攻撃できない。

 この方法の欠点は,ユーザーが2種類のOSをメンテナンスしなければならないことと,オープン・ソースのOSを使うのでなければホストOSのライセンスの費用もかかることである。前の記事で筆者は,「Microsoft Virtual Server 2005 R2」と「VMware」,「Parallels Workstation」という3種類の仮想マシンソフトを紹介した。これ以外にも,米Serenity System Internationalの「Serenity Virtual Station」という仮想マシンもある(Webサイト)。Serenity Virtual Stationは,LinuxとFreeBSDをホストOSとして利用できる。ゲストOSとして利用できるのは,WindowsとLinuxである。

 最後に,前回の記事では紹介しなかった仮想化技術のもう1つの選択肢を紹介しよう。それは,「仮想プライベート・サーバー」(VPS,Virtual Private Server)である。VPSとVMとには大きな違いがある。まず今回の話題に関して言うと,VPSではホストOSとゲストOSの種類を変えることはできない。また真の仮想マシンはハードウエアのレベルで動作するものだが,VPSはソフトウエア・レベルだけで動作し,各ユーザーに対して個別の仮想的なOS環境を提供する。もしVPSをWindows XP上で利用したなら,そのシステム上に存在するユーザー個別の仮想OS環境は,VPSをインストールしたWindows XPがベースになっている。

 現在,米SWsoftが「Virtuozzo」というVPSソフトを販売している(日本語サイト)。VirtuozzoはWindowsとLinuxに対応している。Virtuozzoの技術的な詳細については,同社のWebサイトを参照して頂きたい。SolarisにはVPS技術が標準で搭載されているし,FreeBSDにも「FreeBSD Jail」というVPS技術が組み込まれている。他のVPSソフトとしては,Linux用になるが「Linux-VServer」(Webサイト)という製品がある。