連載
» 2014年01月08日 15時52分 UPDATE

Microsoft Remote Desktopの基礎と実践:最終回 遠隔地のAndroid/iOS端末から社内PCにリモートデスクトップ接続する (1/2)

普段から持ち歩くiOS/Androidスマートフォン/タブレットにとって、外出中にこそリモートデスクトップ接続をする機会は多いはずだ。そこで社外すなわちインターネット経由で社内PCにリモートデスクトップ接続をする方法について解説する。

[島田広道,デジタルアドバンテージ]
Microsoft Remote Desktopの基礎と実践
Windows Server Insider


「Microsoft Remote Desktopの基礎と実践」のインデックス

連載目次

 第1回第2回では、社内のイントラネット環境を前提に、Microsoft純正のリモートデスクトップのクライアントアプリ(以下、RDCアプリ)を用いて、Android端末やiOS端末(iPhone/iPad/iPod touch)からWindowsマシンへリモートデスクトップ接続をする方法を説明した。だがこれらの方法だけでは、外出中あるいは帰宅後の自宅などイントラネット以外のところから社内のWindowsマシンに接続することはできない。

 最終回となる今回は、同じAndroid OS/iOS端末とRDCアプリを対象に、遠隔地からリモートデスクトップ接続を実現する方法について解説する。

遠隔地から社内のコンピューターに接続するには

 イントラネット環境でのリモートデスクトップ接続と同じ手順で、遠隔地から社内のコンピューターへリモートデスクトップ接続をしようとしても、通常は失敗してしまう。これは社内ネットワークがファイアウォールなどで防御されていて、リモートデスクトップ接続のための通信もブロックされてしまうためだ。

 社外から社内ネットワークへの通信は限られたプロトコルだけに許されていて、他のプロトコルはブロック(禁止)されているのが普通だ。Microsoft純正のRDCアプリがリモートデスクトップ接続に用いるRDP(Remote Desktop Protocol)というプロトコルは、ブロック対象とされることが多い。リモートデスクトップで接続できると、その接続先コンピューターを自由に操作できてしまい、セキュリティ上の危険性が高いためである。

 そこで社外からリモートデスクトップに接続するためには、「VPN(Virtual Private Network:仮想プライベートネットワーク)」か「リモートデスクトップゲートウェイ」のいずれかの方法を利用するのが一般的である。

●仮想トンネルを作るVPN(Virtual Private Network)

 VPNとは、本来は別々の異なるネットワークに位置する拠点の間に通信用の仮想的なトンネルを作ることで、直接通信できる仮想的なプライベートネットワークを構築する技術である。このトンネル内を行き交うデータは暗号化されるため、トンネルの外側からは傍受できない。またトンネルはその両端のコンピューター間で認証を経てから作成される。こうした仕組みから、限られたコンピューターだけがVPNで安全に通信できるようになっている。

 VPNの実現方法には多くの種類があるが、インターネットを介してトンネルを作る「インターネットVPN」が廉価に構築できるため、中小規模の組織ではよく利用されている(インターネットVPNについては右の関連記事も参照していただきたい)。以下の図は、インターネットVPNを介してリモートデスクトップ接続をするときのネットワーク構成の概略を表している。VPNの通信に必要なプロトコルはファイアウォールを通過できるように設定されており、社外すなわちインターネットから着信して接続を確立できる。

インターネットVPNで遠隔地から社内コンピューターへリモートデスクトップ接続をする インターネットVPNで遠隔地から社内コンピューターへリモートデスクトップ接続をする
これは、VPN接続を実現する「VPNゲートウェイ」という装置を社内ネットワークあるいはDMZ(緩衝用のネットワーク)に配置する例。接続元のスマートフォン/タブレットでは、まず携帯電話回線や公衆Wi-Fi、あるいはモバイルルーターなどを利用してインターネット接続を確立し、次にVPN接続を行い、その上でリモートデスクトップ接続をすることになる。

 インターネットVPNの場合、接続元であるスマートフォン/タブレットでは、まず携帯電話回線や公衆Wi-Fi、あるいはモバイルルーターなどを利用してインターネット接続を確立してから、VPN接続を確立する。この時点で社内のコンピューターとはRDPを含む各種プロトコルで直接通信できる状態になっているので、あとは第1回第2回で解説した手順でRDCアプリからリモートデスクトップ接続をすればよい。

 小中規模の組織の場合、上図にあるVPNゲートウェイの役割は、社内から社外へのインターネット接続に用いられているブロードバンドルーターが兼ねていることが多いようだ。またWindows Serverのリモートアクセスサービスで実現することも可能だ(詳細は「在宅勤務を実現するリモート・アクセスVPN構築術 Windows OSで作るVPNサーバ」参照)。接続元のスマートフォン/タブレットについては、Android OSもiOSも標準(OSレベル)でVPNクライアント機能を装備しており、複数のVPN用標準プロトコル(PPTPやL2TP、IPsec)に対応している。そのため、アプリなどを追加しなくてもVPNクライアントとして設定することが可能だ*1。その方法については後で説明する。

*1VPN接続にアプリが必要な場合もある。例えばiOS端末でSSL-VPNを利用する際、VPNゲートウェイのベンダーが提供しているアプリのインストールが求められることがある。


●RDPプロトコルを中継するリモートデスクトップゲートウェイ

 Microsoft純正のRDCアプリで遠隔地からのリモートデスクトップ接続を実現するもう1つの方法は、Windows Serverの「リモートデスクトップゲートウェイ」(以下、RDゲートウェイ)という機能を利用することだ。これは社外からリモートデスクトップ接続を社内ネットワークに中継するための機能で、Windows Server 2008以降に標準で装備されている(WindowsクライアントOSには実装されていない)。その仕組みは、クライアントとRDゲートウェイ間にHTTPSで暗号化された仮想的なトンネルを作り、そこにRDPを通すことで安全に社内コンピューターとのリモートデスクトップ接続の通信を確立するというものだ。

リモートデスクトップゲートウェイ(RDゲートウェイ)を用いて遠隔地から社内コンピューターへリモートデスクトップ接続をする リモートデスクトップゲートウェイ(RDゲートウェイ)を用いて遠隔地から社内コンピューターへリモートデスクトップ接続をする
リモートデスクトップゲートウェイはWindows Server 2008以降の標準機能で、社外から社内へのリモートデスクトップ接続を中継できる。Microsoft純正のAndroid OS/iOS用RDCアプリはRDゲートウェイに対応しているため、接続設定さえ済ませれば、イントラネット環境と同じ操作方法で社外からリモートデスクトップに接続できる。

 上図のネットワーク構成は前述のVPNとよく似ているが、RDゲートウェイはリモートデスクトップ専用なのでVPNのような汎用性(ファイル共有など他の通信も可能)はない。また、RDゲートウェイはWindows Serverで実装する必要がある。その一方で、クライアント側ではRDCアプリだけで社外からの接続を確立できるため、あらかじめVPN接続を済ませておくといった手間は不要だ。

 リモートデスクトップゲートウェイを構築する方法については、運用「Windows Server 2008ターミナル・サービス・ゲートウェイ実践構築入門」を参照していただきたい。Windows Server 2008を対象としているため、最新のWindows Serverとは異なる点もあるが、基本的な概念や構築手順については参考になるだろう。

VPNを利用してリモートデスクトップに接続する(Android OS)

 さてここからは、遠隔地から社内コンピューターにリモートデスクトップ接続をする際、クライアントとなるスマートフォン/タブレットで必要な設定について説明しよう。

 まずはAndroid OSが標準装備しているVPNクライアント機能を使って、社内のVPNゲートウェイに接続するための設定について説明する。前述のようにVPN接続が確立すれば、あとは通常の手順でRDCアプリからリモートデスクトップ接続が可能だ。

 ただ、VPNのプロトコルにはたくさんのバリエーションがあり、クライアントの設定方法も一様ではない。ここでは小中規模の組織で比較的よく使われるPPTPとL2TP/IPsec(事前共有鍵方式、PSK: Pre-shared key)を対象として解説する。例として用いているAndroid端末はNexus 7(2013年版)+Android OS 4.4である。

●Android OS標準のVPN接続をセットアップする

 Android OSのホーム画面から[設定]アイコンをタップし、「無線とネットワーク」欄の[その他]−[VPN]とタップするとVPN接続の一覧画面が現れる(最初は空欄のはずだ)。ここで右上にある[+]をタップしてVPN接続の新規作成を始める。なお、手順の途中で画面ロックの設定を求められたら、指示に従ってPINコードあるいはパスワード、画面ロック解除パターンのいずれかを設定し、その後にVPNの接続設定を再開すること。

Android OSのVPN接続設定の画面 Android OSのVPN接続設定の画面
ホーム画面から[設定]−「無線とネットワーク」欄の[その他]−[VPN]とタップしていくと、この画面が表示される。
  (1)[+]をタップするとVPN接続の新規作成画面が現れる。

 VPN接続の新規作成画面では最初にVPNのプロトコルを選ぶ。PPTPの場合は[タイプ]から「PPTP」を選び、[サーバーアドレス]にVPNゲートウェイのホスト名(FQDN)かIPアドレスを記入する。

VPN接続を新たに作成する(PPTPの場合) VPN接続を新たに作成する(PPTPの場合)
  (1)ここをタップして表示されるVPNのプロトコルの選択肢から、[PPTP]を選ぶ。
  (2)この接続に付ける分かりやすい名前を記入する。
  (3)VPNゲートウェイのホスト名(FQDN)かIPアドレスを指定する。
  (4)チェックを入れてオンにする。
  (5)チェックを入れてオンにすると、DNS検索ドメインと参照用DNSサーバー、転送ルートを設定できる。VPNゲートウェイの管理者から特に指定されていなければ、設定しなくてよい。

 L2TP/IPsec(事前共有鍵方式)の場合は、[タイプ]から「L2TP/IPSec PSK」を選択してから、[サーバーアドレス]にVPNゲートウェイのホスト名(FQDN)かIPアドレスを記入し、VPNゲートウェイに設定されている事前共有鍵の文字列を[IPSec事前共有鍵]に記入する。VPNゲートウェイの管理者から指定されている場合は、[L2TPセキュリティ保護]や[IPSec ID]も記入すること(指定されていなければ空欄のままでよい)。

VPN接続を新たに作成する(事前共有鍵方式のL2TP/IPsecの場合) VPN接続を新たに作成する(事前共有鍵方式のL2TP/IPsecの場合)
  (1)ここをタップして表示されるVPNのプロトコルの選択肢から、[L2TP/IPSec PSK]を選ぶ。
  (2)この接続に付ける分かりやすい名前を記入する。
  (3)VPNゲートウェイのホスト名(FQDN)かIPアドレスを指定する。
  (4)VPNゲートウェイに設定されている事前共有鍵の文字列を記入する。
  (5)VPNゲートウェイの管理者から指定されている場合は、これらも記入する。指定されていなければ空欄のままでよい。
  (6)チェックを入れてオンにすると、DNS検索ドメインと参照用DNSサーバー、転送ルートを設定できる。VPNゲートウェイの管理者から特に指定されていなければ、設定しなくてよい。

 必要な項目を記入して[保存]をタップしたら、VPN接続の作成は完了だ。

●Android OSからVPNを介してリモートデスクトップに接続する

 まずVPN接続を確立してから、RDCアプリでリモートデスクトップ接続を実行する。

 ホーム画面の[設定]−「無線とネットワーク」欄の[その他]−[VPN]とタップすると、作成したVPN接続が表示されるので、それをタップしてVPN接続を始める。

Android OSでVPN接続を始める Android OSでVPN接続を始める
これはホーム画面から[設定]−「無線とネットワーク」欄の[その他]−[VPN]とタップして表示される画面。
  (1)作成したVPN接続設定。これをタップするとVPN接続に必要な認証アカウントの入力ダイアログが表示される。ちなみに、長押し(ロングタップ)すると設定の変更や削除ができる。
次へ
VPN接続の認証ダイアログ VPN接続の認証ダイアログ
  (2)VPN接続の認証ができるアカウントのユーザー名を記入する。
  (3)(1)のパスワードを記入する。
  (4)これにチェックを入れてオンにすると、次回の接続から(1)(2)をいちいち記入しなくても即座にVPN接続ができるようになる。もちろん、他人に端末を操作されてVPNに接続されないように、端末の取り扱いには十分に注意する必要がある。
  (5)これをタップするとVPN接続が実際に開始される。

 [アカウント情報を保存する]にチェックを入れてオンにすると、次回の接続から、いちいちユーザー名とパスワードを入力せずに済むので便利だ。しかし、その端末を入手すれば誰でもVPN接続に成功してしまうので、端末の取り扱いには十分に注意する必要がある。

 [接続]をタップするとVPNゲートウェイへの接続が実際に始まり、成功すると画面上端の左端にVPN接続中であることを表す鍵マークのアイコンが表示される。

接続に成功した後のVPN接続設定の画面 接続に成功した後のVPN接続設定の画面
  (1)VPNに接続している間は、このアイコンが常時表示される。

 あとはRDCアプリを起動し、イントラネット環境の場合と同じくリモートデスクトップ接続を実行する(詳細な手順は第1回を参照)。

 VPN接続には成功するのにリモートデスクトップ接続が失敗する場合は、リモートデスクトップの接続先コンピューターのホスト名(FQDN)をIPアドレスに変えてみよう。VPN接続環境によっては、リモートから社内コンピューターの名前解決ができないことがあるからだ。

●Android OSでVPN接続を切断する

 VPN接続を切断するには、VPN接続の一覧画面で接続中のVPN接続をタップし、表示されたダイアログで[切断]をタップする。

RDゲートウェイ経由でリモートデスクトップに接続する(Android OS)

 続いてAndroid端末からRDゲートウェイを利用してリモートデスクトップに接続する方法を説明する。

 RDゲートウェイを利用するには次の設定が必要だ。

  • RDCアプリにRDゲートウェイの情報を登録する
  • 既存のリモートデスクトップ接続の設定で、RDゲートウェイ経由で接続するように設定を変更する

●Android版RDCアプリにRDゲートウェイを登録する

 まずはRDCアプリでRDゲートウェイに関する設定を追加する。それにはRDCアプリを起動してメニューから[Gateways]を選択し、右上の[+]をタップする。

Android OS版RDCアプリにRDゲートウェイを登録する Android OS版RDCアプリにRDゲートウェイを登録する
これはRDCアプリの起動直後の画面で、(1)をタップしたところ。
  (1)これをタップするとRDゲートウェイ一覧画面が表示される。最初はこのように空欄のはずだ。
  (2)これをタップしてRDゲートウェイの新規登録を始める。

 RDゲートウェイを登録するための「Edit Gateway」画面が表示されるので、各項目をタップして適宜記入していく。[Server]にはRDゲートウェイのホスト名(FQDN)かIPアドレスを入力する。また[CREDENTIALS]には、RDゲートウェイに対する認証のためのアカウント情報を指定する。空欄のままにしておくと、接続先コンピューター(リモートデスクトップサーバー)に対して設定した認証アカウントの資格情報が、RDゲートウェイの認証にも流用される。

RDCアプリのRDゲートウェイ登録画面 RDCアプリのRDゲートウェイ登録画面
  (1)これから登録するRDゲートウェイを表す分かりやすい名前を記入する。
  (2)RDゲートウェイのホスト名(FQDN)かIPアドレスを指定する。VPNゲートウェイがデフォルト(443番)以外の通信ポートで着信を待ち受けている場合は、ホスト名またはIPアドレスの後に「:<ポート番号>」を加える必要がある。
  (3)RDゲートウェイに対する認証ができるアカウントのユーザー名を記入する。空欄のままにしておくと、接続先コンピューター(リモートデスクトップサーバー)に対して設定した認証アカウントの資格情報が、RDゲートウェイの認証にも流用される。
  (4)(3)のパスワードを記入する。

 必要な項目を記入して右上の[DONE]をタップすれば、RDゲートウェイの登録は完了だ。

●RDゲートウェイ経由で接続するように設定を変更する

 次に、登録したRDゲートウェイ経由でリモートデスクトップに接続するように設定する。まず既存のリモートデスクトップ接続の一覧から、対象の接続設定の右端にあるペンを模したアイコンをタップして設定画面を開く。ここで[Gateway]の[No gateway configured]をタップし、表示されたダイアログで先ほど登録したRDゲートウェイをタップする。

RDゲートウェイ経由で接続するようにリモートデスクトップ接続の設定を変更する RDゲートウェイ経由で接続するようにリモートデスクトップ接続の設定を変更する
これはリモートデスクトップ接続の一覧画面から、対象の接続設定の右端にあるペンを模したアイコンをタップして設定画面を開いたところ。
  (1)デフォルトでは「No gateway configured」すなわちRDゲートウェイを使わない設定になっているはずだ。ここをタップするとRDゲートウェイの選択ダイアログが現れる。
次へ
RDゲートウェイを選択する RDゲートウェイを選択する
  (2)前述の手順で登録したRDゲートウェイをタップする。

 RDゲートウェイを選んだあとは、右上の[DONE]をタップすれば設定は完了だ。

●接続手順はイントラネットの場合とほぼ同じ

 ここまでの設定が完了したら、RDCアプリの接続一覧から対象のものをタップして実際に接続してみよう。RDゲートウェイの証明書に関するエラーが表示されたら、[Trust Once]あるいは[Trust Always]をタップする。

RDゲートウェイのサーバー証明書を確認するためのダイアログ RDゲートウェイのサーバー証明書を確認するためのダイアログ
RDゲートウェイ経由で接続する場合、RDゲートウェイが持っているサーバー証明書も検証される。ここで何らかのエラーが生じると、このようなダイアログが表示される。
  (1)ここに表示されているホスト名で、このエラーの対象がRDゲートウェイか接続先コンピューターなのか判断できる。
  (2)これをタップすると引き続きリモートデスクトップ接続が進行する。次回の接続時にも同じダイアログが表示される。
  (3)これをタップすると引き続きリモートデスクトップ接続が進行する。(2)と違ってRDゲートウェイを永続的に「信頼」したことになり、次回以降の接続時には同じダイアログが現れなくなる。

 続いて接続先コンピューターの証明書に関するエラーが表示された場合は、同様に[Trust Once]あるいは[Trust Always]をタップすると、リモートデスクトップが表示されるはずだ。

 RDゲートウェイやその周辺のシステムの設計にも依存するが、社外だけではなく社内ネットワークからでもRDゲートウェイ経由でのリモートデスクトップ接続は可能だ。そのため、社内/社外に関係なく同一の接続設定のままリモートデスクトップ接続ができる。


       1|2 次のページへ

Copyright© 1999-2017 Digital Advantage Corp. All Rights Reserved.

@IT Special

- PR -

TechTargetジャパン

この記事に関連するホワイトペーパー

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。