Azure の仮想マシンではエンドポイント経由でリモートデスクトップ接続をすることができます。
下の画像では 62888 としていますが、外部向けのエンドポイントに割り当てられているポート経由で、仮想マシンの 3389 に接続し、リモートデスクトップを使用することができます。
セキュリティの要件によっては、各仮想マシンの外部向けのエンドポイントでのリモートデスクトップの接続は許可せずに、内部 IP を使用したリモートデスクトップ接続のみ許可するという要件があるかもしれません。
このような場合は RD GW (リモートデスクトップゲートウェイ) を使用するとよいかと思います。
RD GW を使用することで、外部向けには RD GW の TCP 443 (HTTPS) のみを開放していれば仮想マシンに接続することができるようになります。
今回は以下のような RD GW と接続したい VM が同一となっている仮想ネットワークを作成して RD GW on Azure を構築してみたいと思います。
以前投稿した、カスタムスクリプトを使用して仮想マシンをギャラリーから展開時に日本語 UI を設定 で日本語化した VM を 2 台構築した状態から設定をしてみます。
RDGW-2012R2 が RD GW、VM01 が RD GW を経由して接続をする VM となります。
まずは RD GW の導入から実施してみたいと思います。
■RD GW の導入
RD GW の導入はサーバーマネージャーからウィザードベースで実施することができます。
[役割の機能と追加] から [Remote Desktop Services] を追加し、
[Remote Desktop Gateway] をインストールします。
他の設定に関してはすべてデフォルトでインストールしておきます。
インストールが終了したら RD GW の設定をするために [リモートデスクトップ ゲートウェイ マネージャー] を起動します。
RD GW ですが、証明書が必要となるのですが、仮想マシンにはデフォルトで証明書が導入されていますので、これを使用します。
管理コンソールが起動したら [証明書のプロパティの表示または変更] をクリックします。
[証明書のインポート] から [~.cloudapp.net] の証明書をインポートします。
証明書のインポートが終わったら、[接続承認ポリシー] (RD CAP) [リソース承認ポリシー] (RD RAP) を作成します。
まずは、RD CAP を作成するために [接続承認ポリシーの作成] をクリックします。
今回は以下の設定で RD CAP を作成します。
RD GW に接続が可能なユーザーは Administrators グループのメンバーのみと設定しています。
次に RD RAP を作成するために [リソース承認ポリシーの作成] をクリックします。
今回は RD GW をワークグループ環境で作成しているので、ネットワークリソースへの接続の制御はしない設定としています。
# ユーザーは Administrators グループにしています。
RD GW の設定は以上で終了です。
RD GW のサーバーの 443 のエンドポイントを設定していない場合は Azure のポータルから設定します。
■証明書のインポート
今回は自己署名証明書を使用しているため、接続をするクライアントには RD GW で使用している証明書をインポートしておく必要があります。
証明書をインポートしていない場合は、
というようなエラーが発生します。
まずは、RD GW のサーバーで証明書をエクスポートします。
[mmc.exe] を起動して、コンピューターアカウントの [個人] → [証明書] から証明書をエクスポートします。
エクスポートをしたら接続を行うクライアントで mmc.exe を起動して、ユーザー アカウントまたはコンピューター アカウントの [信頼されたルート証明機関] として証明書をインポートします。
以上で、クライアントの設定は完了です。
■リモートデスクトップで接続
ここまでの作業で設定は完了です。
こちらが RD GW を使用して接続をする VM ですが、エンドポイントで 3389 は設定していません。
この状態で、RD GW を介して VM01 の内部 IP アドレスを使用して接続をしてみます。
RD GW の設定のサーバー名には、RD GW サーバーの DNS 名 (~.cloudapp.net) を設定します。
接続先のコンピューターには VM01 の内部 IP アドレスを指定します。
あとは資格情報を入力して接続を行います。
最初に入力する資格情報は RD GW に接続するための情報となります。
# RD CAP で指定したユーザー情報です。
資格情報がうまく認証されない場合はユーザー名の前に [.] を入力して設定します。
# .rdgwuser のような形式でユーザー名を入力します。
次のユーザー情報は RD RAP の情報となります。
今回は RD GW の Administrator のアカウントと、VM01 の Administrator のアカウントは同一ユーザー名/同一パスワードにしていますので、この情報を入力します。
# こちらも . を設定します。
これで、内部 IP を使用して、RD GW 経由で接続ができます。
この設定をすることで、RD GW で HTTPS が許可されていれば、リモートデスクトップで接続できるようになります。
各インスタンスは 3389 用のエンドポイントを設定していなくても接続ができるようになりますので、直接接続できないようにするといったセキュリティ要件があった場合の構成が担保できるかと。