Red Hat Training

A Red Hat training course is available for Red Hat Linux

第4章 sVirt

sVirt は Red Hat Enterprise Linux 6 に導入されている技術のことで、SELinux と仮想化を統合します。sVirt はゲスト仮想マシンの使用時には Mandatory Access Control (MAC) を適用してセキュリティーを強化し、ハイパーバイザー内のバグに対してシステムを堅牢にします。これはホスト物理マシンや他のゲスト仮想マシン上の攻撃を防ぐのにとくに役立ちます。 
本章では、Red Hat Enterprise Linux 6 での sVirt による仮想化技術の統合について説明します。
非仮想化環境

非仮想化環境では、ホスト物理マシンは物理的に相互に分離しているため、各ホスト物理マシンは web サーバーや DNS サーバーなどのサービスで構成される自己完結型の環境を有しています。こうしたサービスは独自のユーザー空間や、ホスト物理マシンのカーネル、および物理ハードウェアと直接通信し、ネットワークにそれぞれのサービスを直接提供します。以下の図は、非仮想化環境を示しています。

14

ユーザー空間: すべてのユーザーモードのアプリケーションと一部のドライバーが実行されるメモリー領域です。

2

Web アプリケーション (web アプリケーションサーバー): ブラウザーでアクセスできる Web コンテンツを配信します。

36

ホストカーネル: ホスト物理マシンの特権カーネル、カーネル拡張およびほとんどのデバイスドライバーを実行する目的で厳密に確保されます。

5

DNS サーバー: DNS レコードを保存し、ユーザーが IP アドレスではなく論理名を使って Web ページにアクセスできるようにします。
仮想化環境

仮想化環境では、複数の仮想オペレーティングシステムを、ホスト物理マシン上にある単一のカーネル上で稼働させることができます。以下の図は、仮想化環境を示しています。

4.1. セキュリティーと仮想化

サービスを仮想化していない場合、マシンは物理的に分離されています。ネットワーク攻撃は別として、セキュリティー上の弱点は通常、攻撃を受けたマシンに内在します。複数のサービスを仮想化環境に集めると、追加の脆弱性がシステム内に発生します。ゲスト仮想マシンが不正利用する可能性のあるセキュリティー上の不具合がハイパーバイザーにある場合、このゲスト仮想マシンはホスト物理マシンだけでなく、そのホスト物理マシン上で実行している他のゲスト仮想マシンも攻撃できることになります。こうした攻撃は、ゲスト仮想マシンの範囲を超えて、他のゲスト仮想マシンを攻撃にさらす可能性もあります。
sVirt は、ゲスト仮想マシンを隔離して、不正利用されている場合に追加の攻撃を開始する能力を抑制するためのものです。以下の図が示すように、攻撃はゲスト仮想マシンの範囲を超えることはできず、他のゲスト仮想マシンに侵入することができません。
SELinux は、MAC (Mandatory Access Control) の実装内で仮想化インスタンス用のプラグ可能なセキュリティーフレームワークを導入します。sVirt のフレームワークにより、ゲスト仮想マシンとそのリソースに対する固有のラベル付けが可能になります。ラベルが付けられると、ルールの適用が可能になり、異なるゲスト間のアクセスを拒否できるようになります。