外から家のマシンにアクセス |
家の中のLAN環境を充実させたら、今度は外から家のマシンにアクセスしたくなるものです。FTPサーバをインストールすれば、外部からファイルのアップロード・ダウンロードができるようになりますが、それに加えて、家の中のマシンそのものを、出先から操作したくなります。こういう局面で役に立つのがリモートアクセス・ソフトウェアです。家の中のマシンで、外から操作したいマシンに、リモートアクセスサーバ部分をインストールし、外からアクセスするマシンには、リモートアクセスクライアントソフトをインストールするのが一般的な使用方法かと思います。Windows
XP Professionalではリモートデスクトップという名称でリモートアクセス機能が標準で搭載されています。もともとはWindows
2000 Serverに搭載されているターミナルサーバという機能を拡張し、ユーザ1人分だけにしたものがWindows XPのリモートデスクトップにあたります。Me/98や、XP
Home にはリモートデスクトップは搭載されていませんので、市販品やフリーウェアのリモートアクセスソフトをインストールする必要があります。市販品ではSymantecのPCAnywhereであるとか、Mac用だとCarbon
Copy Mac(だったっけか?)などがあります。ここではフリーウェアのVNCと、XP Proのリモートデスクトップを紹介しておきます。
VNCを使う |
VNC(Viartual Network Computer)が何よりも優れているのは、タダだということです。Windows XPでもPro版を買わなければリモートデスクトップはついてきませんし、2000サーバなんて18万ほどします。パッケージ版のソフトでも、企業ニーズが中心なのでお高めの値付けになってます。VNCはフリーウェアですから、やってみたければダウンロードして動かすだけです。
VNCの優れた点を以下に書いておきます。
リモートデスクトップを使う |
XPはProを買うか、Homeにするかなかなか難しいところですが、自宅や会社のマシンを遠隔地からアクセスしする必要があったら、迷わずXP
Proを導入しましょう。説明したとおり、この機能を標準で搭載しているのはXP Proだけだからです。これまではWindows 2000 Serverだけに搭載されていたリモートアクセス機能が標準でついてくるだけでも、約5000円分よけいに払う価値があると思います。
リモートデスクトップは、VNCのようにサーバマシンの画面をエミュレートするのではなく、Unixのようにリモート側でマシンにログインを行う形になります。したがって画面の書き換えなどの情報は必要最低限だけがおくられてくるため、実際の実行スピードはVNCとくらべてかなり高速になります。サーバ側のブロードバンド接続の登り方向スピードが十分あれば、ストレスなくリモートサーバにログインすることができます。
Bフレッツ100Mで接続されているサーバに接続してみたら、まるでローカルマシンを使っているかのようにサクサク動きました。
また、リモートデスクトップにはVNCと同じ機能が搭載されていることに加え、オーディオがサポートされているのが特徴です。サーバ側で実行されているソフトなどの音は、リモートのマシン側から流れます。(98マシンでリモートログインすると、XPのスタートアップサウンドが出てXPの画面に切り替わるのはちょっと不思議です)また、リモートクライアントから新たにログインプロセスを行いますので、画面の解像度もクライアント側に合わせた形でリモートセッションが起動し、まるでもう一台のマシンがデスクトップ上でブートしているかのようです。VNCの場合だと、サーバ側が1600x1200、クライアント側が800x600だったりするとかなり使い勝手が悪くなるのとくらべると対照的です。
ただし、大きな問題はリモートアクセスをすると、サーバマシン側からのアクセスができなくなることです。これはXP Proがシングルユーザライセンスであることに関係しています。というのも、2000
Serverの同等機能、ターミナルサーバでは複数のリモートクライアントからのアクセスまでできるようになっているからです。と言っても、ターミナルサーバも標準では2クライアントまでしか接続できませんが、1クライアントしかないということは、リモートかローカルか片方からしかログインができないということになります。実際問題としてこれはかなり不便です。この制限が問題になる人はWin2000サーバを導入するか(XP
サーバってのがまだないのも問題だ>MS)、VNCなどを使うことになります。
リモートログインすると、ローカルマシンにはこのダイアログが表示され、
管理者権限のあるユーザしかアンロックできなくなる。もちろんここから
ログインすれば、リモートユーザは切り離される。大変不便。

サーバマシンとユーザのリモートアクセス設定
さすがにOS内蔵だけあって、インストールは大変シンプルです。というより、単にコントロールパネルのシステムからリモートアクセス可能に設定するだけで、Admin権限のあるユーザはリモートで接続できるようになります。リモートアクセス可能なユーザを追加するには、ユーザを追加して、同じ設定項目からそのユーザにリモートアクセス権限を与えるだけです。

クライアントソフトの導入
リモートアクセスするマシンにクライアントソフトをインストールするには、XP ProのCDをそのマシンに入れ、設定項目から追加コンポーネントを選んでインストールするだけです。クライアントソフトは98/Me/2000で動作します。NT3.5やWindows
3.1ではWin2000サーバのターミナルコンソールをインストールすればこれも接続できるようですが、試していないので実際どのようになるのかわかりません。
クライアントソフトを立ち上げると、このようなウィンドウが出てきます。(※手元に英語版のXPしかないのでこのページの画面は全部英語版になります。あしからず)

オプションのところを押すと、細かい設定ができるようになっています。 回線が遅い場合には、
DisplayタブからColorを256colorsにしたり、ExperienceタブのドロップBOX から、遅い回線用の
設定を選ぶと多少パフォーマンスが改善します。
LAN接続されている場合はサーバマシンのプライベートアドレスを入力します。ネット経由でリモート接続する場合は、サーバマシンにグローバルIPが割り当てられている必要があります。ルータ経由などでプライベートアドレスを使用している場合は、ポート転送設定で動かすことができます。リモートデスクトップで使うポートはTCP3389ですので、ルータに3389へのアクセスをサーバマシンに転送する設定をしておきます。そうすれば、リモートマシンの画面から、ルータのグローバルIPアドレスを入力してやれば接続できます。
ポートの変更
リモートデスクトップが使用しているポートを3389以外に変更する必要がある場合は、regeditを使う必要があります。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcpの、PortNumberを開くと、16進か10進でポートナンバーが入ってます(d3d/3389)ので、これを変更したい数値に変えてやればOKです。テストしていないので定かではないですが、この方法で、各マシンに違うポート番号を、ルータにはその転送の設定をすれば家の中にある複数のクライアントに外からリモートログインできるのではないかと思います。
無事接続できると、見慣れたXPのログイン画面がでてきます。先述の通り、つなぐたびにXPへのログインが必要になっているわけです。設定をしない限り、フルスクリーンでリモートセッションが開きます。

画面の上方に見慣れないタブが出ています。これはリモートセッションの画面であ
ることがわかるように付けられているもののようです。裏では自分のデスクトップが
動いた状態になっており、タブの上部にあるアイコンを押してウィンドウ表示にする
ことができます。 ここからユーザ名とパスワードを入れてログインすれば、XPの起
動音とともに、そのユーザのデスクトップが表示されます。
この時点で、サーバ側のコンソールは、前述のようにロックがかかった状態になって、サーバ側でローカルログインをしないと、アクセスができないようになっています。また、
Admin権限のあるユーザでリモートログインすると、自動的にこの状態になるのですが、権限のないユーザがすでにログインしているサーバに入ろうとすると、リモートログインを拒絶されてしまいます。アドミニストレータだけは他のユーザがログインしていても強制排除できますが、特権ユーザ以外は、自分以外のユーザがログインしているときにはログインできません。大変不便なのでなんとかして欲しいものです>MS
リモートデスクトップWeb Connection(tsweb)の導入
XPのリモートデスクトップも、VNC同様ブラウザからリモートアクセスすることができるようになっています。大きく違うのが、リモートデスクトップではwebベースのリモートアクセスをHTTPDサーバに依存している点です。この機能を使用するにはXPに付属しているwebサーバを導入する必要があります。そして、tswebという名前のディレクトリを公開することにより、この機能にリモートでアクセスすることができるようになるわけです。tswebが運用されているサーバのtswebディレクトリにアクセスすると下のような画面がでます。ここからログインすると、コントロールがリモートデスクトップ部分に渡されて、通常のリモートログインと同じ画面がでてきます。そんで、最初のログイン時に、Terminal
Services Advanced Client(TSAC)というActiveXのプラグインが導入されます。ということは、JAVAベースで実現しているVNCのwebクライアントとは違って、IEが動作しているPCでしかアクセスできんということですね。

tswebのログイン画面。サーバ名のところで入力するのはローカルIPアドレスになります。
ちなみに、web経由からのアクセスだからと言って、ポート80だけで通信できるというわけではないようです。単にサーバマシンへのログインのプロセスの受け渡しと、webベースのリモートクライアントのロードだけをブラウザでやっているだけで、通常のクライアントと同じく3389を使用します。
PocketPCでもリモートログイン
Windows CEやPPC用のクライアントでもログインすることができます。といってもリモートデスクトップ用ではなく、ターミナルサービス用のクライアントなので音も出ませんし、色数も限られています。でも、P-inとかH"で外出先から家のマシンにログインできるのはなんか使い道があるかも?PPC用クライアントソフトは、マイクロソフトのこのページ(英語)からダウンロードできます。
iPAQでWin XP Proマシンにログインしているところ。Compact Flash
の802.11bワイアレスLANを使って接続しています。
スピードは不満ないのですが、ちょっと画面が小さすぎて厳しいです。
セキュリティ・セキュリティ |
さて、年がら年中セキュリティの話をしていて気が引けるのですが、リモートアクセスサーバを年中動かしたい方は、パスワードの管理などに細心の注意を払いましょう。VNCやリモートデスクトップなどを利用する間にパスワードをインターネット経由で盗まれる可能性は少なくても、他のパスワードと一緒だったり、わかりやすいパスワードをつけていたり、だれかにパスワードを盗まれやすい設置環境だったりすると結局意味がないです。いったんリモートアクセス権を取られてしまえば、もうジ・エンドです。家中のマシンの中身は侵入者の自由になってしまいます。
|