Windows XP(リモートデスクトップ)
ここではWindows XP Professionalの新機能の一つであるリモートデスクトップについて紹介致します。
(Windows XP Homeのリモートデスクトップ共有方法はこちらで紹介しています)
Windows XPのリモートデスクトップ機能はWindows XPのデスクトップを他のPCから遠隔操作できるようにする機能です(クライアントOSとの同時利用可)。
クライアントOSとしては標準でWindows 9x/Me/NT/2000/XPが使えます。
またWebブラウザ上にWindows XPのデスクトップを表示して操作することもできます。
このリモートデスクトップは従来のWindows 2000 Server以上のターミナルサービス技術をベースに開発された分散コンピューティング環境です(ターミナルサービスの利用例)。
簡単に言えばターミナルサービスの簡易版で、プロトコルはRDP(Remote Desktop Protocol)を使用しています。
但し、ターミナルサービスとは異なりリモートデスクトップでは1台のWindows XPマシンにリモートログオンできるユーザは1人に限定されています。
分散コンピューティング環境が個人レベルで使用するOSにも標準で備わって手軽に使えるようになったことはそれなりに評価できるかと思います。
尚、同じターミナルサービス技術に基づいて開発されたものとして「ユーザの簡易切り替え機能」というものもありますがリモートデスクトップとの併用はできないようです。
従来よりマルチプラットフォーム対応のVNC(Virtual Network Computing)というものがあり、VNCもリモートマシンをローカルマシンから操作する分散コンピューティング環境です(ブラウザによる操作も可能)。
リモートデスクトップもVNC並みに複数OS用のクライアントソフトがあればありがたいと思います。
(1)リモートデスクトップオプションの有効化
Windows XP(ホスト)をリモートデスクトップ環境で使用するにはシステムのプロパティで「このコンピュータにユーザーがリモートで接続することを許可する」というオプションを有効にします。
更にリモート接続を許可するユーザも登録しておきます。
尚、Administratorsグループに属するユーザは特に登録しなくてもリモート接続は可能です。
但しパスワード設定のないユーザでのリモートログオンはエラーとなります。
(2)リモートデスクトップ接続ソフト
Windows XPにリモートデスクトップ接続するためのソフトはWindows XPの場合には「アクセサリ」の「通信」の中に「リモートデスクトップ接続」として標準搭載されています(これをビルトインバージョンと言います)。
しかしWindows 9x/Me/NT/2000にはWindows XPのCD-ROMに含まれているリモートデスクトップ接続を別途セットアップする必要があります。
具体的にはWindows XPのCD-ROMで表示されるメニューから「追加のタスクを実行する」を選択し、「リモートデスクトップ接続をセットアップする」を実行します。
セットアップが完了すると「アクセサリ」の「通信」の中に「リモートデスクトップ接続」が登録されます。
尚、Windows XPにリモートデスクトップ接続をセットアップしようとするとビルトインバージョンが既に存在しますという旨のメッセージが出てセットアップは中止されます。
(3)リモートデスクトップファイルの準備
リモートデスクトップ接続するための各種の情報はRDPファイルとして用意しておきます。
アクセサリの「リモートデスクトップ接続」を起動し、接続先,ユーザ名,リモートデスクトップのサイズなどを指定したものをRDPファイルとして保存しておきます。
(4)実際の接続
アクセサリのリモートデスクトップ接続を起動してRDPファイルを開き、「接続」ボタンを押すとリモートログオンできます。
RDPファイル(またはそのショートカット)をダブルクリックして接続することもできます。
Windows XP(ホスト)側が作業中のウィンドウを開いた状態のままクライアントからそのユーザでリモートログオンするとクライアント側にはWindows XP(ホスト)の画面状態がそのまま引き継がれて表示され、作業中のウィンドウもそのまま表示されます。
またWindows XP(ホスト)側が作業中の状態で、クライアントから別のユーザでリモートログオンしようとするとログオン警告メッセージが表示されます(続行すると応答すれば自動リモートログオフされてクライアントからのリモート接続がOKとなります)。
- まずは接続バーの表示
全画面表示モードの場合、リモート接続するとクライアント側の画面上部にまず接続バーが表示されます。
- Windowsへログオン画面の表示
次に「Windowsへログオン」画面が一瞬表示されてからデスクトップ画面が表示されます。
- Windows Me内での全画面表示例
画面上側にある横長のものが「接続バー」です。
全画面表示にするとWindows MeマシンにあたかもWindows XPがインストールされているかのようにWindows XPを利用することができます。
リモートデスクトップ接続が成功するとWindows XP(ホスト)側はロック状態(コンピュータのロックの解除画面)になります(「ようこそ画面を使用する」モードではユーザ選択画面となります)。
- 接続バーの説明
接続バーの左側にある虫ピンをクリックして外すと接続バーは上に隠れるようになっています。
接続バー操作で全画面表示をウィンドウ表示にすることもできます。
また「閉じる」ボタンは「切断」の役目をします。
- リモートデスクトップ操作
- アプリケーションの実行例
クラインアト側のエクスプローラとWindows XPのエクスプローラとの間でのファイルのドラッグ&ドロップはできませんがターミナルサービス同様に両OSのメモ帳間でのコピー&ペーストは行えます。
Windows Media PlayerでのWAVファイルなどの再生時はクライアント側のスピーカから音が聞こえます。
実寸画像はこちらです(1280x1024)。
- スタートメニュー
- ログオフ
ログオフするとWindows XPの画面が消えます(ユーザセッションは保存されません)。
メモ帳などで未保存データのウィンドウが開いたままの場合、保存の確認ダイアログが出ます。
- 切断
切断はユーザセッションを保存したままWindows XPの画面が消えます。
メモ帳などで未保存データのウィンドウが開いたままであっても保存の確認ダイアログは出ません。
ユーザセッションが保存されるため再度接続するとユーザセッションが復元されて「切断」直前のデスクトップが表示されます(未保存データのウィンドウも表示されます)。
- シャットダウン
Windowsセキュリティを選択してリモートにあるWindows XPマシンをシャットダウンすることができます。
- Windows XPからWindows XPへの接続ケース
(5)Web接続
Windows XP(ホスト)側でIISを起動しておくとクライアントのブラウザ(Internet Explorer)からリモート接続できます。これをWeb接続と呼びます。
クライアントからhttp://ホストアドレス/Tsweb/を開いてWeb接続を開始します。
(6)インターネット環境でのリモートデスクトップ接続
Windows XP(ホスト)に対するクライアントからのリモートデスクトップ接続はインターネット環境でも利用できます。
LAN環境と比べてトラフィック量に左右されやすく表示にもたつきが感じられるケースも多々あります。
インターネット環境でのリモートデスクトップ接続設定での接続先は通常グローバルIPアドレスを指定します。
また同じリモートデスクトップ接続設定で接続速度も指定しますが帯域幅が小さい場合にはデスクトップの背景画像表示やドラッグ中のウィンドウ表示などが無効となるように自動設定されます。
デスクトップの背景画像表示が無効に設定された場合には当然画面のプロパティでの背景画像設定もできなくなります。
但し、帯域幅が小さい場合でも接続速度として「カスタム」を指定すれば背景画像表示やドラッグ中のウィンドウ表示もできるようになります。
この場合、画面のプロパティで背景画像の変更もできたりしますが全体的に画面表示性能はかなり劣化するようです。
- リモートデスクトップ画面
以下の画像はホスト及びクライアントが共にWindows XPの例です。
- 全画面表示モード
- ウィンドウ表示モード
インターネット接続環境でもWindows Media PlayerでのWAVファイルなどの再生時はクライアント側のスピーカから音が聞こえます。
- リモートデスクトップ接続でのローカルディスク利用
リモートデスクトップ接続設定の「ローカルリソース」タブでディスクドライブを利用可能にするとリモート接続している間だけリモートデスクトップからクライアント側のハードディスク,CD-ROM,FDなどが共有ドライブのように利用できるようになります。
尚、ディスクドライブを利用可能な設定にして接続する場合接続セキュリティ警告が表示されます。
ローカルディスクはリモートデスクトップのマイコンピュータの「その他」のところに「クライアントマシン名のドライブ名」として表示されます。
リモートデスクトップ内のアプリケーションからローカルディスクにファイル保存する場合は「クライアントマシン名のドライブ名」という表示のあるローカルドライブを選択すればOKです。
リモートデスクトップのエクスプローラで各ローカルディスクを開くとそのパスは\\tsclien\ドライブ名\yyyというように表示されます。
- リモートデスクトップ接続でのローカルプリンタ利用
リモートデスクトップ接続設定の「ローカルリソース」タブで「プリンタ」にチェックを入れておくとローカルマシンで「通常使うプリンタに設定」されているプリンタがリモートデスクトップ内での通常使うプリンタとなります。
もちろんファイル印刷する際にローカルプリンタとリモートプリンタの選択も行えます。
ローカルプリンタをリモートデスクトップで使用する際に使われるプリンタドライバはWindows XP用のプリンタドライバが使用されます。
- Windows XPパーソナルファイアウォール
Windows XPのダイヤルアップ接続定義時に単純に「パーソナルファイアウォール機能」を有効にするとリモートデスクトップ接続で使用するポートも塞がれてしまいます。
そのようなWindows XP(ホスト)に対してリモート接続を行うと接続エラーとなります。
Windows XPのパーソナルファイアウォールに限らず他のファイアウォールを導入している場合でもリモートデスクトップ接続が使用できるような設定にしておく必要があります。
例えばWindows XPのファイアウォールを有効にした状態でリモートデスクトップ接続を使う場合には次のようにします。
- パーソナルファイアウォール機能の有効化
まずダイヤルアップ接続のプロパティでパーソナルファイアウォール機能を有効にします。
- リモートデスクトップポートの閉塞解除
次にプロパティの「設定」をクリックして「リモートデスクトップ」のポートを通すようにします。
リモートデスクトップで使用するポート番号はリモートデスクトップのサービス設定画面で確認できます。
- 接続ログの取得設定
他のマシンからインターネット経由でリモートデスクトップ接続されたログを取得するようにログ設定を行います。
C:\Windows\pfirewall.logの中にはいつ、どのマシンから当該マシンにリモート接続していつ切断したかの情報が蓄積されていきます(利用されたポート番号も含まれています)。
当該マシンにリモート接続してきたマシンのIPアドレスから一応そのドメイン情報(組織情報、運用責任者含む)が簡単に割り出せます。
上記の手順でWindows XP(ホスト)を設定しておけばクライアントからリモートデスクトップ接続して使えるようになります(パーソナルファイアウォールを設定したWindows XPに対するリモートデスクトップ画面例)。
尚、クライアント側のインターネット接続形態はウィンドウズメッセンジャーでの画像通信機能とは違って一般のルータ経由でも特に問題はないようです。
- ノートン・パーソナルファイアウォール
Windows XP(ホスト)側にNorton Internet Security 2002のノートン・パーソナルファイアウォールを導入している場合でもインターネット経由でのリモートデスクトップ接続は可能です。
- ログオフ時のPPP自動切断抑止対策
Windows XP(ホスト)側がPPPでインターネット接続している場合に別のユーザアカウントでリモート接続すると既にログオンしていたユーザは自動的にリモートログオフされます。
しかし自動ログオフされる際にはPPP接続も自動切断されてしまうためインターネットでのリモート接続はできなくなります。
このようなケースに対応するためにはログオフ時のPPP自動切断抑止対策が必要となりますがログオフ時のPPP自動切断抑止オプションは標準では備わっていません。
対策としてはレジストリエディタで「HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon」に対してKeepRasConnectionsエントリを作成してその値を1に設定すればOKです。
- その他
ネットワークエラー等、インターネット接続環境に問題があると「リモートコンピュータへの接続が壊れています」というエラーが表示される場合があります。
(7)複数のWindows XPへの同時リモート接続
リモートデスクトップでは1台のWindows XPマシンにリモート接続できるユーザは1人に限定されていますが、1台のクライアントからは複数のWindows XPマシンに同時接続することができます。
まずクライアントから1台のWindows XPマシンにリモート接続し、次に別のWindows XPマシンにもリモート接続すれば複数のWindows XPマシンを同時に遠隔操作できるようになります。
別々のWindows XPのメモ帳などの間でのコピー&ペーストも問題なく実行できます。
(8)その他
- リモートデスクトップに関するマイクロソフト社のQ & Aサイトの内容
- 用途
リモートデスクトップの用途はいろいろ考えられます。
出先でオフィスのWindows XPに接続して商談を進めたり、遠隔地からWindows XPのトラブル対策をしたり、Windows XPにしかインストールされていないアプリを使ったりなどいろいろです。
家庭でもWindows XPマシンと別のマシンの間を行ったりきたりする手間が省けていろいろ便利に使えそうです。
- セキュリティの強化
リモートデスクトップはある意味ではWindows XPマシンを大きな危険にさらすことになります。
IIS経由のWeb接続環境を含めてセキュリティポリシーをしっかり設定しておくことが必要です。
- 性能について
リモートデスクトップを利用する場合アプリケーションの実行性能はWindows XP(ホスト)側のCPUに左右されます。
一方画面の表示性能はクライアント側の画像表示能力に左右されます。
LAN環境でリモートデスクトップを利用する場合は同一マシンで複数OSを動作させるVMwareやVirtualPCよりかなり軽快に動作する印象を受けました。
(リモートデスクトップはホストとクライアントで負荷分散しているので当然なのでしょうが...)
- 制限事項など
- リモートデスクトップ接続設定の制限
Windows XPのCD-ROMからインストールした「リモートデスクトップ接続」での設定ではパスワードの保存ができない、Windowsの組み合わせキーの適用先の変更ができないなどの制限があります。
- 簡易ユーザ切り替えの制限
リモートデスクトップ接続ではユーザの簡易切り替え機能は使用できませんが、「別のユーザとして実行」は使用できます。
- 設定変更や利用アプリの制限
リモートデスクトップではWindows XPの機能をほとんど使えますが中には「画面のプロパティで画面の詳細設定を変更することはできない」などの制限もあります。
またWindows Media PlayerでDVDを再生しようとしたところ(チャプター一覧は表示されますが)「現在DVDビデオを再生できません」というエラーになるなどリモートDVD再生は困難なようです。
- 「ようこそ画面を使用する」オプションについて
Windows XP(ホスト)側で「ようこそ画面を使用する」というデフィルトモードではリモートログインしたときにWindows XP(ホスト)側はロック状態(コンピュータのロックの解除画面)にはならずユーザ選択画面が表示されてしまいます。
Windows XP(ホスト)が複数ユーザで共用するマシンの場合、リモート接続中に別の人が誤ってログオンしないようにするためにリモートデスクトップ接続中はWindows XP(ホスト)がロックされていることが分かるように「ようこそ画面を使用する」オプションは外しておいた方が無難かも知れません。
- VNCやXサーバ等との連携について
分散コンピューティング環境を実現するものとしてVNCやXサーバなどもあります。
リモートデスクトップとそれらのソフトを連携させて可能性を広げてみるのも面白いのではないでしょうか。
ここではVNCやXサーバ及びエミュレ−タの使用例を紹介します。
- Xサーバの例
これはMac OSからのSolarisアプリを操作している例です。
- VNCの例
これはWindows側からMac OSを操作している例です。
VNCを使ってWindows 98からWindows XPを操作することも試してみました。
今回使用したVNCのバージョンはVer 3.3.3r9です(2001年3月版)。
- サーバ側(Windows XP)
サーバ側でVNCサーバを起動するとタスクトレイにVNCサーバのアイコンが表示されプロパティ設定などが行えます。
- クライアント側(Windows 98)
VNCによるリモートホスト操作はリモートデスクトップ接続に比べるとかなり動作が重くなりますが一応操作はできます。
クライアント側の画面はこちらです(1024x768)。
クライアント側でリモートホストを操作している最中はホスト側の画面にもそれと同期して同じ画面が表示されます(リモートデスクトップやターミナルサービスでのホスト側画面にはそのような画面は表示されません)。
- VMwareの例
これは1台のPCの中でLinux用ドミノとWindows用ノーツクライアントを連携させた例です。
- VirtualPCの例
これはMac OS上でLinuxも一緒に使ってみた例です。
- Wineの例
WineはWindowsエミュレータで1台のPCで複数OSを動作させるというものではありませんが、これはLinux上でWindowsアプリを動作させてみた例です。
- Windows 2000 Serverのターミナルサービスとの連携
Windows XPのリモートデスクトップ接続ソフトはWindows 2000 Serverのターミナルサービスクライアントとしてもそのまま使えます。
- ターミナルサービス
- ターミナルサービスへの接続
- ターミナルサービスデスクトップ
当然ながら、クライアント側にターミナルサービスのデスクトップ画面が表示されてもサーバ自体の画面は何も変わりません。
実寸画像はこちらです(1024x768)。
- 切断
スタートメニューのシャットダウンメニューから「切断」を選択するとそのユーザセッションはサーバに保存され、次回再接続すると前のデスクトップ状態が復元されます(未保存データのウィンドウもそのまま復元されます)。