Windows Server 2008 R2: リモート デスクトップ サービス - オーナー マニュアル

Windows Server 2008 R2 のリモート デスクトップ サービスを使用すると、新たなサーバーの役割とその他の機能を利用する広範な展開シナリオに対応できるようになります。

Kristin Griffin

Windows Server 2003 のターミナル サービスのユーザーが、どのような場合に、どのリモート デスクトップ サービス (RDS) の役割サービスを利用すればよいのかを理解していないのは、珍しいことではありません。だれもが展開を完全に設計する時間があるわけではないので、"考えるのは後回しにして、まず展開する" という状況に陥りがちです。

Windows Server 2008 R2 の RDS は、Windows Server 2003 のターミナル サービスとは大きく異なります。Windows Server 2003 Standard Edition では、1 台のターミナル サーバーと 1 台のライセンス サーバーしかサポートされていませんでした。

RDS では、ユーザー エクスペリエンスとライセンス管理に多くの機能強化が施されており、セッションとライセンス管理がサポートされます。また、ネイティブの仮想マシン (VM)、検出を容易にするサーバーの役割、接続の仲介、サーバー ファーム (より大規模な展開と冗長性確保のため)、および安全な WAN 経由のアクセスもサポートされます。

これから数か月にわたって、RDS を使用し始める最善の方法を紹介します。今月は、単一サーバー セッションの配信などの一般的なシナリオから始めて、来月は、Windows Server 2008 R2 で新たに追加された仮想デスクトップ インフラストラクチャ (VDI) を紹介します。その後、リモート デスクトップ セッション ホスト サーバー ファームとリモート デスクトップ接続ブローカーを使用し、リモート デスクトップ Web アクセスによる検出を可能にし、リモート デスクトップ ゲートウェイを使用して WAN シナリオに対応する、より大規模な展開シナリオを取り上げます。

単一サーバー セッションの配信

以前、ターミナル サーバーと呼ばれていたリモート デスクトップ セッション ホスト (RD セッション ホスト) サーバーは、RDS のサーバーの役割です。RD セッション ホスト サーバーでは、完全なデスクトップと個別のアプリケーション (RemoteApp プログラム) をどちらも配信するので、拡張性の高いアプリケーションの配信には理想的です。複数のユーザーが RD セッション ホスト サーバーにログインし、個別にアプリケーションを実行できます。

Windows Server では、管理目的の RDP 接続の着信を同時に 2 つまで受け付けますが、リモート デスクトップ プロトコル (RDP) 7 の高度な機能をすべて有効な状態で維持しながら 2 つ以上のリモート接続をサポートできるのは RD セッション ホスト サーバーだけです。

単一サーバー展開は、中小企業やブランチ オフィスなどの小規模な環境に最適です。単一サーバーは、最も簡単に展開できる RDS のシナリオですが、次の点に注意する必要があります。

  • 単一サーバー展開では、対応可能なセッション数が制限されます。
  • 単一サーバー展開では、そのサーバーが単一障害点となります。そのサーバーが使用できなくなると、すべての接続が影響を受けるため、冗長性がありません。

RD セッション ホストの有効化

RD セッション ホスト サーバーを有効にするには、まず Windows Server に RDS の役割をインストールする必要があります。次に、RD セッション ホストの役割サービスをインストールします。インストール中には、次の操作を実行する必要があります。

  • ログオン時にネットワーク レベル認証 (NLA) を要求するかどうかを選択します。NLA により、RD セッション ホスト サーバーで完全なセッションを作成する前に、ユーザーを認証できるようになります。その結果、ログオンをより迅速に行い、サービス拒否 (DoS) 攻撃につながる可能性がある意図的な立て続けの接続から保護できます。
  • サーバーの Remote Desktop Users グループに、RD セッション ホスト サーバーへアクセスを許可する必要があるユーザー グループを追加します。
  • オーディオおよびビデオ再生、オーディオ録音、およびデスクトップ コンポジションを有効/無効にして、ユーザー エクスペリエンスのオプションを構成します (デスクトップ コンポジションを有効にすると、Aero 機能が有効になります)。
  • サーバーのライセンス モードを指定します。RD セッション ホスト サーバーに接続するためには、ユーザーやデバイスごとにライセンスが必要です。接続ユーザー数によるライセンスまたは接続デバイス数によるライセンスを選択します。猶予期間があるため、ライセンス サーバーはすぐに設定する必要はありません。

クライアント側の設定は簡単です。リモート デスクトップ接続 (RDC) クライアントは、Windows OS に同梱されています。Windows 7 より前のバージョンの Windows を使用している場合、最高のユーザー エクスペリエンスを保証するには、最新の RDP クライアントをインストールする必要があります。マイクロソフトの Web サイトから、最新のクライアントをダウンロードできます。

ライセンス要件

ライセンスの猶予期間が過ぎたら、各ユーザーやデバイスが RD セッション ホスト サーバーに接続するためのライセンスが必要になります。また、RD ライセンス サーバーをインストールする必要もあります。RD ライセンスの役割サービスは、(それほど負荷が高くないので) 同じサーバーにインストールするか、または別のサーバーにインストールできます。

RDS クライアント アクセス ライセンス (CAL) を購入し、RD ライセンス サーバーにインストールする必要があります。RDS CAL はサーバーと関連付けられていますが、RDS では、必要に応じて CAL を新たなハードウェアに移行することができます。また、接続ユーザー数によるライセンスと接続デバイス数によるライセンスのどちらもサポートします。ユーザーの数とコンピューターの数のどちらが多いかによって、選択するモデルを決めます。RDS には、同時接続ユーザー ライセンスはありませんが、選択したライセンスと、RD セッション ホスト サーバーを構成したモードは一致している必要があります。

RD セッション ホストの役割サービスをインストールしたのと同様に、RD ライセンスの役割サービスをインストールします。インストール後には、次の操作を実行する必要があります。

  • RD ライセンス サーバーのライセンス認証を行います。
  • RDS CAL をインストールして、RD ライセンス サーバーで、ユーザーとデバイスに CAL を割り当てられるようにします。
  • RD セッション ホスト サーバーが RD ライセンス サーバーを使用するように設定します (同じサーバーに 2 つの役割サービスが割り当てられている場合も、設定する必要があります)。

サーバーのサイズ設定

セッション ホストになじみがない方から、同時に何人までサーバーを使用できるのかという質問をよく受けます。残念ながら、この質問に答えるのは容易ではありません。というのも、その数は、実行するアプリケーションや使用するデータの種類などの状況によってまったく異なるからです。

多くの場合は、パイロットに基づいて実際のサイズの数値を見積もります。RDS 製品グループでは、使用のモデリングに役立つホワイト ペーパー (英語)負荷シミュレーション ツール (英語) を作成しました。幸運なことに、Windows Server 2008 R2 には 64 ビット版しかないので、32 ビット版の OS とは異なり、メモリがボトルネックになることはありません。

RD セッション ホスト サーバーを仮想化することもできますが、多くの場合、サーバーでサポートできる同時実行可能セッション数が減少します。使用するのと同じコンピューターの種類 (物理マシンまたは仮想マシン) でモデリングするようにします。仮想 RD セッション ホスト サーバーを構築した場合、物理マシンと仮想マシン間のメモリ マッピングのオーバーヘッドを抑えるため、セカンドレベル アドレス変換 (SLAT) をサポートするプロセッサを実装したサーバーを使用する必要があります。また、オーバーヘッドを抑えるには、Type 2 のハイパーバイザーではなく、Hyper-V のような Type 1 のハイパーバイザーを使用することもお勧めします。

完全なデスクトップ セッションと RemoteApp

RD セッション ホスト サーバーでは、ローカル デスクトップと分離された完全なデスクトップおよびローカル デスクトップと視覚的に統合された RemoteApp プログラムの 2 つの配信モデルをサポートしています。ユーザーは、RemoteApp プログラムをローカル アプリケーションとして知覚します。ユーザーが 2 つのデスクトップを切り替える必要がないため、RemoteApp プログラムは、ローカル アプリケーションとリモート アプリケーションを組み合わせて実行している環境に最適です。

同じユーザーが同じサーバーで起動した RemoteApp プログラムは、すべて同じセッションで実行されます。必要なのは、開いたプロファイルのコピーだけです。このしくみにより、セッションを実行するのに必要な核となるプロセスのコピーを 1 つ起動するだけでよいので、サーバーのオーバーヘッドを抑えられます。

この記事では、単一サーバー展開、セッションを使用する目的、RemoteApp とセッションの違い、およびライセンス モデルについての簡単な概要を紹介しました。来月は、Microsoft VDI を紹介します。

RDS の展開方法の詳細と設計ガイダンスについては、『Windows Server 2008 R2 Remote Desktop Services Resource Kit』(Microsoft Press、2010 年) を参照してください。

Kristin Griffin

Kristin Griffin は、リモート デスクトップ サービスの MVP です。サーバー ベース コンピューティングのコミュニティに役立つマイクロソフト フォーラム (social.technet.microsoft.com/Forums/ja-jp/winserverTS/threads/、英語) を運営しており、RDS に関するブログ (blog.kristinlgriffin.com、英語) を公開しています。また、Mark Minasi の著書『Windows Server 2008 パーフェクトガイド』(翔泳社、2010 年) と『Windows Server 2008 R2 パーフェクトガイド』(ソフトバンククリエイティブ、2010 年) の執筆に貢献し、『Microsoft Windows Server 2008 Terminal Services Resource Kit』 (Microsoft Press、2008 年) と『Microsoft Windows Server 2008 R2 Remote Desktop Services Resource Kit』 (Microsoft Press、2010 年) を Christa Anderson と共同で執筆しました。

関連コンテンツ

補足記事

RDS に関してよく寄せられる質問

ここでは、リモート デスクトップ サービス (RDS) の構成と使用に関してよく寄せられる質問とそれに対する回答を、いくつか紹介します。

Q. RemoteApp を起動したときに、完全なデスクトップを実行したときとは異なる実行可能ファイルがタスク マネージャーで実行されていることに気付きました。なぜですか。

A. RemoteApp と完全なデスクトップでは、使用するシェルとログオン メカニズムが異なります。完全なデスクトップでは、ユーザーにデスクトップを提供するのに EXPLORER.EXE を使用するのに対し、RemoteApp では RDPSHELL.EXE を使用します。また、RemoteApp では、完全なデスクトップ セッションで使用される USERINIT.EXE に相当する RDPINIT.EXE を使用します。どちらでも、次に、RDPSHELL.EXE を起動し、クライアント側のタスク バーを更新し、ログオフのロジックを処理します。

Q. RemoteApp プログラムを使用するときにも、サーバーをロックダウンする必要はありますか。

A. もちろんです。RemoteApp プログラムは、表示の利便性を考慮したもので、セキュリティ機能ではありません。ユーザーがファイル システムにアクセスできれば、アクセスできる任意の実行可能ファイルを実行できます。そのため、サーバーをロックダウンする必要があります。サーバーのロックダウンには、AppLocker (またはソフトウェア制限ポリシー)、NTFS アクセス許可、およびグループ ポリシーを使用できます。

Q. ユーザーに RemoteApps を使用した接続のみを許可し、デスクトップへの接続をブロックするようにサーバーを構成できますか。

A. いいえ。そのようなオプションはサポートしていません。

—K.G.