2012-08-28...

35
アカデミッククラウドシンポジウム2012 クライアント向け仮想化ソフトウェア BitVisor のクラウドへの応用 東京大学 准教授 品川高廣 2012824日(金)

description

「クライアント向け仮想化ソフトウェア BitVisor のクラウドへの応用」

Transcript of 2012-08-28...

Page 1: 2012-08-28 アカデミッククラウドシンポジウム(公開版)「クライアント向け仮想化ソフトウェアBitVisorのクラウドへの応用」

アカデミッククラウドシンポジウム2012

クライアント向け仮想化ソフトウェアBitVisor のクラウドへの応用

東京大学 准教授

品川高廣

2012年8月24日(金)

Page 2: 2012-08-28 アカデミッククラウドシンポジウム(公開版)「クライアント向け仮想化ソフトウェアBitVisorのクラウドへの応用」

自己紹介

2012/8/24 チュートリアル「仮想化技術最前線」 Single-VM Virtualization 2

品川 高廣

情報基盤センター 情報メディア教育研究部門 准教授

博士(理学)

研究歴

~2003年 東京大学博士課程 OSによる細粒度保護ドメインの研究 2003年~2006年 東京農工大学助手 OSカーネルでのセキュリティの研究 2006年~2011年 筑波大学講師 仮想化ソフトウェアBitVisorの研究 2011年~現在 東京大学准教授 同上

Page 3: 2012-08-28 アカデミッククラウドシンポジウム(公開版)「クライアント向け仮想化ソフトウェアBitVisorのクラウドへの応用」

ディペンダブルな自立連合型 クラウドコンピューティング基盤の研究開発

2012/8/28 アカデミッククラウドシンポジウム2012:クライアント向け仮想化ソフト

ウェアBitVisor のクラウドへの応用 3

Page 4: 2012-08-28 アカデミッククラウドシンポジウム(公開版)「クライアント向け仮想化ソフトウェアBitVisorのクラウドへの応用」

発表概要

• クラウド環境におけるクライアントの役割

• クライアント向け仮想化ソフトウェア BitVisor

• BitVisor によるディペンダビリティ向上

2012/8/28 4 アカデミッククラウドシンポジウム2012:クライアント向け仮想化ソフト

ウェアBitVisor のクラウドへの応用

Page 5: 2012-08-28 アカデミッククラウドシンポジウム(公開版)「クライアント向け仮想化ソフトウェアBitVisorのクラウドへの応用」

第1部

クラウド環境における

クライアントの役割

2012/8/28 5 アカデミッククラウドシンポジウム2012:クライアント向け仮想化ソフト

ウェアBitVisor のクラウドへの応用

Page 6: 2012-08-28 アカデミッククラウドシンポジウム(公開版)「クライアント向け仮想化ソフトウェアBitVisorのクラウドへの応用」

クラウド時代のクライアント

クラウドへアクセスするための入り口

2012/8/28 アカデミッククラウドシンポジウム2012:クライアント向け仮想化ソフト

ウェアBitVisor のクラウドへの応用 6

クラウド

クライアント

ユーザー

Page 7: 2012-08-28 アカデミッククラウドシンポジウム(公開版)「クライアント向け仮想化ソフトウェアBitVisorのクラウドへの応用」

クライアントの要件

クラウド=シンクライアント? ブラウザさえ動けば何でもよい?

2012/8/28 アカデミッククラウドシンポジウム2012:クライアント向け仮想化ソフト

ウェアBitVisor のクラウドへの応用 7

クラウド クライアント

Page 8: 2012-08-28 アカデミッククラウドシンポジウム(公開版)「クライアント向け仮想化ソフトウェアBitVisorのクラウドへの応用」

2012/8/28 8

NISTのクラウドの定義

Essential Characteristics:

Broad network access. Capabilities are

available over the network and accessed

through standard mechanisms that promote use

by heterogeneous thin or thick client platforms

(e.g., mobile phones, laptops, and PDAs).

アカデミッククラウドシンポジウム2012:クライアント向け仮想化ソフトウェアBitVisor のクラウドへの応用

Page 9: 2012-08-28 アカデミッククラウドシンポジウム(公開版)「クライアント向け仮想化ソフトウェアBitVisorのクラウドへの応用」

クライアントとサーバの性能バランス

クライアントとサーバの適度な連携へ

2012/8/28 アカデミッククラウドシンポジウム2012:クライアント向け仮想化ソフト

ウェアBitVisor のクラウドへの応用 9

サーバ 高性能

サーバ なし

クライアント高性能

クライアント低性能

メインフレーム

ローカルPC

リッチクライアント(Ajax, Flash, HTML5)

シンクライアント

スマートフォン+アプリ

ChromeOS + Google

Page 10: 2012-08-28 アカデミッククラウドシンポジウム(公開版)「クライアント向け仮想化ソフトウェアBitVisorのクラウドへの応用」

集中処理 ⇒ 集中管理

集中管理のために集中処理をしている

2012/8/28 アカデミッククラウドシンポジウム2012:クライアント向け仮想化ソフト

ウェアBitVisor のクラウドへの応用 10

サーバ集中管理のメリット

• セキュリティ管理が容易

• 情報漏洩防止,情報破壊防止

• システム管理が容易

• インストール,アップデート,バックアップ

サーバ集中処理のデメリット

• 性能・効率の低下

• レスポンス(応答性)

• デバイスの活用

• 機能の分断,電力消費増加

Page 11: 2012-08-28 アカデミッククラウドシンポジウム(公開版)「クライアント向け仮想化ソフトウェアBitVisorのクラウドへの応用」

集中管理 ≠ 集中処理

「集中管理 & 分散処理」は実現可能

2012/8/28 アカデミッククラウドシンポジウム2012:クライアント向け仮想化ソフト

ウェアBitVisor のクラウドへの応用 11

セキュリティ管理

• データのセキュリティ

• 暗号化,バックアップ

• プログラムのセキュリティ

• サンドボックス(e.g. Chrome)

システム管理

• 安全・容易なアプリケーション配信

• HTTP+HTML&JavaScript

• iTunes ストア

プログラム データ

サーバ

クライアント

Page 12: 2012-08-28 アカデミッククラウドシンポジウム(公開版)「クライアント向け仮想化ソフトウェアBitVisorのクラウドへの応用」

クライアントとクラウドの連携

クライアントに出来ることはクライアントに

クライアントの膨大な計算パワーを有効活用

ネットワークに余分な負荷をかけない

物理的に避けられないネットワークレイテンシを回避

クラウドにしか出来ないことはクラウドで

管理(セキュリティ,運用)

超高速計算

超大容量ストレージ

2012/8/28 アカデミッククラウドシンポジウム2012:クライアント向け仮想化ソフト

ウェアBitVisor のクラウドへの応用 12

Page 13: 2012-08-28 アカデミッククラウドシンポジウム(公開版)「クライアント向け仮想化ソフトウェアBitVisorのクラウドへの応用」

本研究の目指すクライアント

高機能のまま「安全」「容易」にする 既存のクライアント(PC)をディペンダブルに

2012/8/28 アカデミッククラウドシンポジウム2012:クライアント向け仮想化ソフト

ウェアBitVisor のクラウドへの応用 13

セキュリティ管理

(安全)

• 情報漏洩を防止する

• ウィルスに感染しない

システム管理

(容易)

• 複雑な設定が不要

• 確実に利用可能

Page 14: 2012-08-28 アカデミッククラウドシンポジウム(公開版)「クライアント向け仮想化ソフトウェアBitVisorのクラウドへの応用」

第2部

クライアント向け

仮想化ソフトウェア

「BitVisor」

2012/8/28 14 アカデミッククラウドシンポジウム2012:クライアント向け仮想化ソフト

ウェアBitVisor のクラウドへの応用

Page 15: 2012-08-28 アカデミッククラウドシンポジウム(公開版)「クライアント向け仮想化ソフトウェアBitVisorのクラウドへの応用」

クライアント仮想化の形態

• サーバ実行型 画面転送型シンクライアント

仮想PC型

サーバーベース型

ブレードPC型

• ローカル実行型 OS配信型クライアント

ネットワークブート型

ローカルVM型

2012/8/28 アカデミッククラウドシンポジウム2012:クライアント向け仮想化ソフト

ウェアBitVisor のクラウドへの応用 15

Page 16: 2012-08-28 アカデミッククラウドシンポジウム(公開版)「クライアント向け仮想化ソフトウェアBitVisorのクラウドへの応用」

VMM(仮想マシンモニタ)

VM(Virtual Machine):仮想マシン

仮想的な実行環境

VMM(Virtual Machine Monitor):仮想マシンモニタ

仮想マシンを作り出す仮想化ソフトウェア

2012/8/28 アカデミッククラウドシンポジウム2012:クライアント向け仮想化ソフト

ウェアBitVisor のクラウドへの応用 16

VMM

ゲストOS

ハードウェア

VM

ゲストOS

VM

ハードウェア

ゲストOS

Page 17: 2012-08-28 アカデミッククラウドシンポジウム(公開版)「クライアント向け仮想化ソフトウェアBitVisorのクラウドへの応用」

VMMを使う利点

OSに依存しないディペンダビリティの向上

• セキュリティ管理 強力

OSが乗っ取られても大丈夫

強制的 ユーザが勝手に無効にできない

• システム管理 互換性

OSを変更しなくてよい

2012/8/28 アカデミッククラウドシンポジウム2012:クライアント向け仮想化ソフト

ウェアBitVisor のクラウドへの応用 17

VMM

ゲストOS

ハードウェア

VM

セキュリティ管理

システム運用

Page 18: 2012-08-28 アカデミッククラウドシンポジウム(公開版)「クライアント向け仮想化ソフトウェアBitVisorのクラウドへの応用」

VMMの構造

2012/8/28 18

ホストOS

VMM

ゲストOS ゲストOS

デバイスドライバ

デバイスモデル Domain 0 ゲストOS

デバイスドライバ リソース管理

抽象化層

ハードウェア

デバイスモデル

ホスト型 (Type-II VMM)

ハイパーバイザ型 (Type-I VMM)

ハイブリッド型

アカデミッククラウドシンポジウム2012:クライアント向け仮想化ソフトウェアBitVisor のクラウドへの応用

VMM

ゲストOS ゲストOS

デバイスドライバ

デバイスモデル

リソース管理

ハードウェア

VMM

リソース管理

ハードウェア

VM VM

VM VM

VM VM

Page 19: 2012-08-28 アカデミッククラウドシンポジウム(公開版)「クライアント向け仮想化ソフトウェアBitVisorのクラウドへの応用」

従来のVMMの問題

• VMM自身のセキュリティ OSを丸ごと含む巨大・複雑なシステム

o E.g. ホストOSに定期的にパッチを当てる必要がある

• ハードウェアの有効活用を阻害 仮想化されたデバイスしか使えない

VM切り替えのオーバーヘッド

2012/8/28 アカデミッククラウドシンポジウム2012:クライアント向け仮想化ソフト

ウェアBitVisor のクラウドへの応用 19

ホストOS

VMM

ゲストOS ゲストOS

デバイスドライバ

デバイスモデル

リソース管理

抽象化層

ハードウェア

VM VM

Page 20: 2012-08-28 アカデミッククラウドシンポジウム(公開版)「クライアント向け仮想化ソフトウェアBitVisorのクラウドへの応用」

VMM

仮想マシンモニタ「BitVisor」

クライアントに特化した軽量なVMM [Shinagawa et al. VEE ‘09]

2012/8/28 アカデミッククラウドシンポジウム2012:クライアント向け仮想化ソフト

ウェアBitVisor のクラウドへの応用 20

ゲストOS デバイスドライバ

ATA VGA HID USB NIC

拡張機能

拡張機能1

拡張機能2 ATA USB NIC

ハードウェア

Page 21: 2012-08-28 アカデミッククラウドシンポジウム(公開版)「クライアント向け仮想化ソフトウェアBitVisorのクラウドへの応用」

VMMのソースコード・サイズ

2012/8/28 21

Domain 0 ゲストOS

デバイスドライバ

デバイスモデル

(VMWare ESX Server) 20万行

(Xen) 20万行

(hypervisorのみ)

アカデミッククラウドシンポジウム2012:クライアント向け仮想化ソフトウェアBitVisor のクラウドへの応用

VMM

ゲストOS ゲストOS

デバイスドライバ

デバイスモデル

リソース管理

ハードウェア

VMM

リソース管理

ハードウェア

VM VM

VM VM

ゲストOS

VMM

拡張機能

ハードウェア

VM

(BitVisor) 3万行

Page 22: 2012-08-28 アカデミッククラウドシンポジウム(公開版)「クライアント向け仮想化ソフトウェアBitVisorのクラウドへの応用」

BitVisor の利点

• VMMのセキュリティ向上

VMMのサイズ削減・シンプル化

VMM自身のセキュリティ・アップデートが不要

• 既存環境との互換性

クライアント側の多様なデバイスをフル活用できる

既存の環境への適用可能

仮想化によるオーバーヘッドを削減

2012/8/28 アカデミッククラウドシンポジウム2012:クライアント向け仮想化ソフト

ウェアBitVisor のクラウドへの応用 22

Page 23: 2012-08-28 アカデミッククラウドシンポジウム(公開版)「クライアント向け仮想化ソフトウェアBitVisorのクラウドへの応用」

BitVisor の制限

• 同時に動作するゲストOSは1つだけ デスクトップ用途では必須ではない

セキュリティ管理,システム管理が目的

• デバイスごとに対応が必要 全てのデバイスに対応する必要はない

主要デバイスは対応済み

2012/8/28 アカデミッククラウドシンポジウム2012:クライアント向け仮想化ソフト

ウェアBitVisor のクラウドへの応用 23

Page 24: 2012-08-28 アカデミッククラウドシンポジウム(公開版)「クライアント向け仮想化ソフトウェアBitVisorのクラウドへの応用」

第3部

BitVisor による

ディペンダビリティ向上

2012/8/28 24 アカデミッククラウドシンポジウム2012:クライアント向け仮想化ソフト

ウェアBitVisor のクラウドへの応用

Page 25: 2012-08-28 アカデミッククラウドシンポジウム(公開版)「クライアント向け仮想化ソフトウェアBitVisorのクラウドへの応用」

「BitVisor」の応用例

• クライアントのセキュリティ管理 / システム管理 クラウドとも連携して集中管理を実現

VMMによりローカル実行を安全・簡単に実現

2010/11/2 25

• セキュアVM

• システムファイル保護

セキュリティ

管理

•透過的VPN切り替え

•透過的VPNネットワークブート

システム

管理

Page 26: 2012-08-28 アカデミッククラウドシンポジウム(公開版)「クライアント向け仮想化ソフトウェアBitVisorのクラウドへの応用」

セキュアVM

• PCからの情報漏洩を防止

ストレージからの情報漏洩防止

HDDやUSBメモリ等を強制的に暗号化

ネットワークからの情報漏洩防止

ネットワーク通信を強制的に暗号化

ICカードでの鍵管理

暗号化の鍵の安全な保存

接続先・ユーザ認証

2012/8/28 アカデミッククラウドシンポジウム2012:クライアント向け仮想化ソフト

ウェアBitVisor のクラウドへの応用 26

ICカード

ネットワーク

ストレージ

Page 27: 2012-08-28 アカデミッククラウドシンポジウム(公開版)「クライアント向け仮想化ソフトウェアBitVisorのクラウドへの応用」

ゲストOS

Device

Device Driver

拡張機能

セキュアVM(実現)

• I/Oを暗号化する

ストレージI/Oを捕捉・暗号化 ATA/ATAPI 及び USB1.1/2.0を捕捉

AES-XTSで暗号化

ネットワークI/Oを捕捉・暗号化 NIC(Intel PRO 100/1000)を捕捉

IPSecでVPN接続

ICカードで鍵管理・認証 USB接続のカードリーダにアクセス

PC/SC, CCIDプロトコル

2012/8/28 アカデミッククラウドシンポジウム2012:クライアント向け仮想化ソフト

ウェアBitVisor のクラウドへの応用 27

ATA NIC USB

ストレージ管理

ネットワーク管理

ID管理

Device Mediator

ATA NIC USB

ATA NIC USB

セキュアVM

VMM

ハードウェア

Page 28: 2012-08-28 アカデミッククラウドシンポジウム(公開版)「クライアント向け仮想化ソフトウェアBitVisorのクラウドへの応用」

システムファイル保護

• Rootkit からの保護 [Chubachi et al. SAC ‘10]

システムファイルの書き込みを禁止する OSの重要なファイル

o カーネル,デバイスドライバ,…

セキュリティソフトウェア

o アンチウィルス,…

カーネルレベルでも書けない

再起動すれば元に戻る 最終ラインでのディフェンス

2012/8/28 アカデミッククラウドシンポジウム2012:クライアント向け仮想化ソフト

ウェアBitVisor のクラウドへの応用 28

Page 29: 2012-08-28 アカデミッククラウドシンポジウム(公開版)「クライアント向け仮想化ソフトウェアBitVisorのクラウドへの応用」

システムファイル保護(実現)

• ストレージへの書き込みを監視する

システムファイルの書き換えを検出

o ファイルのデータ領域

o メタデータ領域

o ディレクトリ構造

ファイルとセクタのマッピング

を管理 o セマンティックギャップを克服

o 低オーバーヘッドで実現

2012/8/28 アカデミッククラウドシンポジウム2012:クライアント向け仮想化ソフト

ウェアBitVisor のクラウドへの応用 29

ゲストOS

Device

Device Driver

拡張機能

ATA NIC USB

保護モジュール Device Mediator

ATA

ATA NIC USB

VM

VMM

ハードウェア

保護ポリシー

Page 30: 2012-08-28 アカデミッククラウドシンポジウム(公開版)「クライアント向け仮想化ソフトウェアBitVisorのクラウドへの応用」

透過的VPN切り替え

• クラウド接続の可用性を確保する[Matsuhashi et al. FGCS ‘12]

ネットワーク/サーバ障害対応 インターネット層での経路障害

VPNサーバ故障

OS/ユーザは意識しない 基盤として高可用性を実現

ユーザ・管理者に負担をかけない

2012/8/28 アカデミッククラウドシンポジウム2012:クライアント向け仮想化ソフト

ウェアBitVisor のクラウドへの応用 30

クライアント

データセンター

(クラウド)

専用線

VPN

ルータ2

VPN

ルータ1 Internet

× ×

Page 31: 2012-08-28 アカデミッククラウドシンポジウム(公開版)「クライアント向け仮想化ソフトウェアBitVisorのクラウドへの応用」

透過的VPN切り替え(実現)

• VPN接続を切り替える

定期的にネットワーク到達性をチェック

VMMからサーバにPingを送る

VPN切断・再接続を実施

利用可能なサーバの選択

IPsecでのコネクションを確立

IPアドレスの不整合などを吸収

TCP接続が切れない

切り替え時間は3秒程度

2012/8/28 アカデミッククラウドシンポジウム2012:クライアント向け仮想化ソフト

ウェアBitVisor のクラウドへの応用 31

ゲストOS

Device

Device Driver

拡張機能

ATA NIC USB

VPNクライアント

ID管理

Device Mediator

NIC

ATA NIC USB

セキュアVM

VMM

ハードウェア

Page 32: 2012-08-28 アカデミッククラウドシンポジウム(公開版)「クライアント向け仮想化ソフトウェアBitVisorのクラウドへの応用」

透過的ネットワークブート

• 任意のOSをネットワークから

ブート可能にする[表ら.ACS論文誌 ‘11]

OS・設定に依存しない Windowsをそのままブート可能

Linuxも一切設定なしでブート可能

ローカルのハードウェアをフル活用 内蔵機器・周辺機器をOSが完全管理

o Blu-ray,USB3.0,各種PCIデバイス,…

o 省電力(電源制御),最適化(デフラグなど),…

2012/8/28 アカデミッククラウドシンポジウム2012:クライアント向け仮想化ソフト

ウェアBitVisor のクラウドへの応用 32

クライアント

サーバ

(クラウド)

Page 33: 2012-08-28 アカデミッククラウドシンポジウム(公開版)「クライアント向け仮想化ソフトウェアBitVisorのクラウドへの応用」

透過的ネットワークブート(実現)

• ディスクアクセスを ネットワークへ転送する

ATAのインターフェイスを提供

ローカルディスクと同じアクセス方法

o MS-DOSでも起動する

ATAアクセスをAoEに変換

ATA over Ethernet

パケットをネットワークへ転送

ディスクイメージをサーバで集中管理

2012/8/28 アカデミッククラウドシンポジウム2012:クライアント向け仮想化ソフト

ウェアBitVisor のクラウドへの応用 33

ゲストOS

Device

Device Driver

拡張機能

ATA NIC USB

ATA監視

NICアクセス

ATA-AoE変換

Device

Mediator

ATA

NIC

NIC USB

VM

VMM

ハードウェア

ATA

Page 34: 2012-08-28 アカデミッククラウドシンポジウム(公開版)「クライアント向け仮想化ソフトウェアBitVisorのクラウドへの応用」

まとめ

• クラウド時代のクライアント 高機能クライアントも必要

セキュリティ管理,運用管理

• クライアント向け仮想マシンモニタ「BitVisor」 準パススルー型アーキテクチャ

VMM自身のセキュリティ,透過性向上

• 「BitVisor」に基づくディペンダビリティ向上 セキュリティ管理: セキュアVM,システムファイル保護

システム管理: 透過的VPN切り替え,透過的ネットブート

2012/8/28 アカデミッククラウドシンポジウム2012:クライアント向け仮想化ソフト

ウェアBitVisor のクラウドへの応用 34

Page 35: 2012-08-28 アカデミッククラウドシンポジウム(公開版)「クライアント向け仮想化ソフトウェアBitVisorのクラウドへの応用」

BitVisor の宣伝

• BitVisor に関する情報 ホームページ

http://www.bitvisor.org/

メーリングリスト(@bitvisor.org) bitvisor-user(日本語), bitvisor-user-en(英語)

bitvisor-devel(日本語), bitvisor-devel-en(英語)

ソースコード http://sourceforge.net/projects/bitvisor/

• 有償サービス (株)イーゲルが提供

2012/8/24 チュートリアル「仮想化技術最前線」 Single-VM Virtualization 35