【 ここから本文 】

Microsoftウォッチ

ソーシャルブックマークに登録 : Yahoo!ブックマークに登録 はてなブックマークに登録 del.icio.usに登録 newsing it!に登録 Buzzurlにブックマーク livedoorクリップに登録 Slashdotにタレコむ イザ!ブックマークに登録 Twitterでつぶやく
print 印刷用ページの表示


【解説】
システム管理者のための「IIS 7.0」概論

モジュール化を実現した新世代のWebサーバ

(2008年04月04日)

Windows Server 2008に備わるWebサーバ「インターネットインフォメーションサービス(IIS)」は、最新バージョンの「7.0」だ。IIS 7.0は、Webサーバとしてのコアサービスに加え、アプリケーション開発・実行環境が統合されたアプリケーションプラットフォームとなる。本稿では、特にシステム管理者やWebサイト管理者向けにIIS 7.0のコア部分、WebサーバとしてのIIS 7.0について、改善された機能や新機能を紹介する。

山市 良

IIS 6.0で実証済みのプラットフォーム
互換性を維持しつつ、より強固に

画面1:IIS 7.0はコア部分を含めモジュール化されている。すでに登録済みのモジュールも、不要な場合はいつでも無効化できる

 IIS 7.0はWindows Vistaにも搭載されているが、Windows Server 2008と同じものではない。Windows VistaのIIS 7.0はWebサイト/Webアプリケーション開発やテストでの利用が想定されており、いくつか使用上の制約もある。IIS 7.0にとって、Windows Server 2008が本番環境への事実上のデビューとなる。

 Windows Server 2008のIIS 7.0は、IIS 6.0で実証済みの強化されたセキュリティ(マイクロソフトによるとIIS 6.0は出荷以来4年以上、脆弱性評価の深刻度で「緊急」レベルのパッチはリリースされていない)を継承し、さらに強固かつハイパフォーマンスなプラットフォームとなるべく、アーキテクチャが大幅に変更されている。最も大きな変更点は、“モジュール化されたWebサーバ”になることだ。

画面2:不要な機能は最初からインストールしないか、いつでも完全にアンインストールできる

 IIS 7.0は、Webサーバを軽量なコア部分と、そのコアにプラグインできる40以上の機能モジュールに分割されている。例えば、静的なWebコンテンツをパブリッシュする「StaticFileModule」、Windows(NTLM)認証をサポートする「WindowsAuthModule」、CGI(Common Gateway Interface)プログラムの実行をサポートする「CGIModule」などだ。

 これらのモジュールは、不要な場合は個別に無効にできる(画面1)。もちろん、最初からインストールしないこともできるし、いつでも完全にアンインストールすることができる(画面2)。

 IIS 7.0に含まれるすべてのサーバ機能は、パブリックな拡張API(Application Programming Interface)上に構築されたものなので、開発者はネイティブコードまたは.NET Frameworkのマネージドコードを使用して、既存のサーバ機能を独自の機能と交換したり、カスタムモジュールを開発してIIS 7.0の機能セットに追加したりすることも可能だ。

 これにより、開発者は静的なWebコンテンツを提供するだけの軽量なサーバから、カスタムモジュールを組み合わせた専用サーバまで、容易かつ柔軟な構築と拡張が可能となる。

 コンポーネント化されたアーキテクチャは、攻撃対象領域が劇的に減少し、セキュリティリスクの軽減と、修正プログラムの必要性を最小化するのに役立つ。また、必要なコードのみがサーバに配置・実行されることになるので、パフォーマンスの向上にもつながる。

 アーキテクチャが大幅に見直されたIIS 7.0だが、アプリケーション、管理インタフェースの両面でIIS 6.0との高い互換性は維持されている。

 アプリケーションプラットフォームである「ASP.NET」は、IIS 6.0ではISAPI拡張として実装されていた。これが、IIS 7.0ではASP.NET 2.0と完全に統合される(統合モード)。これにより、これまでIISとASP.NETの双方が備えていた認証機能などの重複がなくなり、シンプルな開発を実現できる。また、C++APIを使用してネイティブコードで開発しなくても、ASP.NET 2.0と.NET Framework上で言語に依存しないマネージドコードでの開発が可能だ。

 一方、IIS 6.0向けに開発されたアプリケーションとの互換性を維持するため、従来のISAPI方式で動作する「クラシックモード」も提供される。ASP(Active Server Pages)、ISAPI、CGIのための拡張モジュールも提供されるので、IIS 6.0向けに開発されたASP、ASP.NET 1.1、ASP.NET 2.0、ISAPI拡張、ISAPIフィルタ、CGIアプリケーションは、コード変更なしでそのままIIS 7.0に移行できるはずだ。

 IIS 6.0では構成情報ストアが、IIS 5.0以前のバイナリ形式のメタベース(Metabase.bin)から、XMLベースの構成ファイル(Metabase.xml)に変更された。IIS 7.0では、この部分が分散構成と階層構成を実現するためにさらに変更され、複数のXMLファイル(applicationHost.configやweb.configなど)で構成される。

 これに伴い、IIS 6.0のメタベースを操作する、あるいはIIS 6.0のWMI(Windows Management Instrumentation)インタフェースを使用するアプリケーションやスクリプトツール、インストーラは、ネイティブなIIS 7.0上では動作しない可能性が高い。この問題に対する回避策もIIS 7.0では用意されており、役割サービスとして「IIS 6管理互換」を追加して対応できるようにしている(画面3)。

 IIS 6.0以前向けに提供されたURLScan機能は、IIS 7.0では「要求リクエスト」モジュール(RequestFilterModule)としてビルトインされている。これまで「URLScan.ini」で定義していたものは、IIS 7.0の新しい構成ストアである「applicationHost.config」や「Web.config」で構成することになるので注意しよう。

画面3:IIS 6.0のメタベースを操作するアプリケーションやスクリプトツールは「IIS 6管理互換」サービスを追加すれば、IIS 7.0上でも動作させることができる

Web専用サーバのための
Server CoreのIIS 7.0対応

 Windows ServerはWebサーバだけでなく、ファイルサーバ/プリントサーバをはじめ、ディレクトリサービス、DNSサーバ、DHCPサーバ、メディアサーバ、ターミナルサービス、アプリケーションサーバなどの統合プラットフォームでもある。

 IIS 7.0を単なるWebサーバとして構成したい場合には、これらのほとんどの機能は必要ない。逆に、存在することがセキュリティリスクを高めることになるかもしれないのだ。

 Windows Server 2008では、Webサーバに特化したサーバを構成できるように2つのオプションが用意されている。

 1つは、すべてのエディションで利用可能な最小構成のインストールモード「Server Core」だ。Server CoreはGUIレスのWindows Serverであり、Windowsシェル(Explorer.exe)をはじめ、GUIのインタフェースや管理ツールを持たない。インストールされるコンポーネントが少ないぶん、脆弱性の影響を受けにくく、メンテナンス機会も少なくて済むといったメリットがある。

画面4:Server Core環境にIIS 7.0をインストールするには「ocsetup IIS-WebServerRole」コマンドを実行する。個々の役割サービスは「oclist」コマンドでサービス名を確認後、「ocsetup」コマンドで追加すればよい

 Server Coreでは「DHCPサーバ」「ファイルサービス」「印刷サービス」「Active Directoryドメインサービス」「Active Directoryライトウェイトディレクトリサービス」「Webサーバ(IIS)」などの役割を実行できる。

 Server Core環境にWebサーバの役割をインストールするには、「Oclist.exe」と「Ocsetup.exe」コマンドを利用する。

 「Oclist.exe」はインストール可能な役割/機能と現在のインストール状況を表示するコマンド、「Ocsetup.exe」は役割や機能をインストール/アンインストールするコマンドである。例えば、Webサーバの役割をインストールするには、次のコマンドラインを実行すればよい(画面4)。

Ocsetup IIS-WebServerRole

 このコマンドラインによりWebサーバのコア(IIS-WebServer)、HTTP基本機能(IIS-CommonHttpFeatures)など、最小限の役割サービスがインストールされる。あとは、「Oclist.exe」で未インストールの役割サービスから、必要なサービスを「Ocsetup.exe」の引数に指定して追加していけばよい。ただし、Server Coreでは利用できない役割サービスもあるので注意してほしい。

Webサーバ専用のエディション
Windows Web Server 2008

画面5:Windows Web Server 2008はWebサーバの機能に特化したエディション。「Webサーバ(IIS)」と「Windows SharePoint Services」の2つの役割しか存在しない。追加で「Windows Media Services」の役割がダウンロード提供される予定だ

 Windows Server 2003にはWebサーバ専用のエディションとして「Windows Server 2003 Web Edition」があるが、Windows Server 2008でも「Windows Web Server 2008」という専用エディションが提供される。名前のとおり、インターネットWebサーバ構築のための専用OSとなり、Webサーバに必要のない役割、機能は最初から搭載されない。

 デフォルトの役割は「Webサーバ(IIS)」と「Windows SharePoint Services」の2つで、将来的には「Windows Media Services」がダウンロード提供される予定になっている(画面5)。

 追加可能な機能はWindows SharePoint Servicesに必要な「.NET Framework 3.0の機能」や「Windows Internal Database」など、計26機能。ちなみに、Windows Server 2008 Enterprise Editionがサポートする役割は17、機能は36に上る。

 Windows Web Server 2008では、Windows Server 2003 Web Editionの2プロセッサ、最大メモリ2GBまでというハードウェアの制約が緩和され、4プロセッサ、最大メモリ4GB(32ビット版)/32GB(64ビット版)にまで対応する。IIS 7.0、ASP.NET、.NET Framework 3.0に関しては制限がなく、フルに機能を利用できる。

 実は、Windows Web Server 2008にもServer Coreインストールオプションが用意されている。当然、サポートされる役割は「Webサーバ(IIS)」と「Windows SharePoint Services」の2つだけ。通常のWindows Server 2008のServer Coreとの違いがややこしいが、必要な機能やライセンスコストなどを考慮すれば、Windows Web Server 2008のServer Coreを選択するということも現実にありそうだ。

【column 01】
IIS 7.0をインストールする4つの方法

 Windows Server 2008にIIS 7.0をインストールするには、標準で次の4つの方法が提供される。

[1] 役割の追加ウィザード(初期構成タスク/サーバーマネージャ)
[2] ServerManagerCmd.exe
[3] PkgMgr.exe
[4] Ocsetup.exe

 通常はWindows Server 2008のインストール完了後に表示される「初期構成タスク」や「サーバーマネージャ」から起動する「役割の追加ウィザード」を使用して、「Webサーバ(IIS)」の役割を選択し、必要なコンポーネント(役割サービス)や関連機能をインストールすればよい。

 残り3つは、コマンドラインからインストールするためのツールである。このうち、Server Core環境で利用できるのは「Ocsetup.exe」と「PkgMgr.exe」だ。また、「ServerManagerCmd.exe」と「PkgMgr.exe」では、1行のコマンドラインでインストールを実行できる。


 |1234 > 次のページへ



関連記事

▲ページの先頭へ戻る


キーパーソン

ゲイツ氏、開発者に別れを告げる――TechEdで最後のスピーチ

「Microsoftの成功は、開発者の皆さんのおかげ」

マイクロソフトのバルマーCEOが語った「Vista・仮想化・検索の今後」

「Vistaは発展途上。ただしハードウェア要件などには変更を加えない」

プロジェクト責任者に聞く「Windows Server 2008」開発の舞台裏

「目指したのは高い信頼性と真の実用性」

「ITは次の革命期を迎えつつある」――CeBITでバルマー氏が講演

みずからの引退時期を示唆? 「あと9年IT業界にとどまれば、次の革命も体験できる」

マイクロソフトのDB責任者に聞く、「SQL Server 2008」の開発目標と導入効果

「リレーショナル・データベースの枠を越えて“顧客の声”にこたえる」

マイクロソフトのバルマー氏、「Google Apps」を一蹴

「Officeの二番煎じ。われわれの脅威ではない」

マイクロソフトはもはや“セキュリティ後進企業”ではない!

「TwC(信頼できるコンピューティング)」担当副社長、セキュリティ強化戦略の“今”を語る

キャッチアップ

マイクロソフトのバルマーCEOに捧ぐ「10の提言」

ゲイツ氏退任後、同社が勝ち残るためにすべきこと

マイクロソフトのセキュリティ戦略――ゲイツ氏の“功罪”とは

問題の元凶から改革の旗振り役に転向したトップのメッセージ

岐路に立つマイクロソフト――黄金時代は終わりを告げるのか

ITアナリストらが指摘する、業界ガリバーの“ジレンマ”と“課題”と“可能性”

[徹底検証]マイクロソフトのユニファイド・コミュニケーション戦略

サーバ・ソフト、クライアント・アプリ、Webカメラで構成されるUCプラットフォーム&エコシステムとは

マイクロソフトが秘密裏に進める「Albany」プロジェクト

正体はグーグル対抗のハイブリッド型オフィス・スイート?

会社を挙げて“緑革命”を――MicrosoftのグリーンIT戦略

同社が目指す「地球環境にやさしい」企業の姿とは

バルマーCEO、「ソフトウェア+サービス」ビジョンを日本のパートナー企業に説明

「新たな価値を創造するチャンス」

マイクロソフト、「Windows Live」の正式版を発表

「ソフトウェア+サービスを実現させたサービスだ」――バルマー氏が力説

Windows Server 2008移行案内

アップグレードに足る9つの理由――製品出荷の最終段階に入ったベータ3を徹底検証

Windows Vista移行案内

企業クライアントOSとしての「メリット」と「注意点」――本格導入の前にこれだけは知っておきたい

Windows Vistaのセキュリティを検証する

UAC、BitLockerなど主要強化点の実用度をチェック

マイクロソフトが統合コミュニケーション・サービスの提供を計画中

ホステッド・サービスとしてさまざまなアプリケーションと連携

マイクロソフト、Windows Server 2008の新機能を国内イベントで披露

「システム管理者の負担を劇的に軽減する機能が満載」とアピール

バルマー氏、「ソフトウェア・プラス・サービス」戦略を明らかに

ホスティング型ビジネス・サービスの手始めはハイブリッド・モデル

「GPLv3適用ソフトは一切サポートしない」――マイクロソフトが明言

「われわれのいかなる活動にもGPLライセンスは不要だ」

Weekly Ranking

集計期間:11/26〜12/02



Computerworld Global
米国
英国
中国
ドイツ
オーストラリア
シンガポール
その他の国