🧩

AWS EC2でWindowsサーバーを立ち上げてリモートデスクトップ接続をする手順

2022/01/23に公開

EC2でWindowsOSのEC2を立ち上げて、ローカルコンピュータからリモートデスクトップ接続をする方法をまとめています。

大きくは、以下の流れで行います。

  1. VPC環境を作成
    1. VPCの作成
    2. サブネットを作成
    3. インターネットゲートウェイの作成とアタッチ
    4. ルートテーブルの作成とアタッチ
  2. EC2を起動
    1. EC2の各種設定を行う
    2. パブリックIPを確認する
  3. リモートデスクトップ接続
    1. ログオン用のパスワードを取得
    2. クライアントツールからの接続

それぞれの手順を詳しく見ていきましょう。
今回はマネジメントコンソールで作成していきます。

料金

その前に、一応料金を紹介しておきます。
普通にやったら100円も掛からないで出来ます。立ち上げっぱなしにならないように気をつけましょう。

  • 以下料金は、『東京リージョン 2022/01/18時点』ということに注意すること。
  • 1USD = 100円 で計算している。

EC2

抜粋: https://aws.amazon.com/jp/ec2/pricing/on-demand/
※ここではオンデマンド(お金/時間)課金のみ考え、データ転送料金は無視する。

OS: Windows

インスタンス名 オンデマンドの時間単価 vCPU メモリ ストレージ ネットワークパフォーマンス
t2.nano 0.0099 USD 1 0.5 GiB EBS のみ
t2.micro 0.0198 USD 1 1 GiB EBS のみ 低~中

例)ハンズオンを3時間で終える場合
EC2インスタンス(t2.micro, Windows) * 3h = 0.0198USD * 3h = 0.0594USD(5.94円)

EBS

抜粋: https://aws.amazon.com/jp/ebs/pricing/
※ここではIOPSとベースラインパフォーマンスの課金は無視する。

ボリュームタイプ 料金
汎用 SSD (gp3) - ストレージ 0.096USD/GB 月
汎用 SSD (gp3) - IOPS 無料の 3,000 IOPS、および 3,000 を超えた分について 1 か月におけるプロビジョンド IOPS あたり 0.006USD
汎用 SSD (gp3) - スループット 無料の 125 MB/秒、および 125 を超えた分について 1 か月におけるプロビジョンド MB/秒あたり 0.048USD

例)gp3の30GiBで、ハンズオンを3時間で終え、月の日数が30日、の場合
EBS(gp3) * 30GiB * 3h = (秒単位の課金額) * (起動秒数) * 30Gib = (0.096USD / (86400 * 30)) * (3600 * 3) * 30Gib = 0.012USD(1.2円)
※EBSは月割の料金制で記載されているが、実際は秒間課金である。そのため、31日の月より30日の月の方が秒間の料金が高い。

構成

今回の構成を軽く紹介します。
パブリックサブネットに置いたWindowsOSのEC2インスタンスにリモートデスクトップ接続をします。
構成図

AWSの構成図用アイコンがあんまり好きでは無いので、簡単な四角で表しています。

VPC環境を作成

一般的なVPCにパブリックサブネットが1つだけある構成を作成します。
作り方がわかる方は飛ばして自分で作っても大丈夫です。

1. VPCの作成

AWSマネジメントコンソールにてVPCの作成を行う。
VPCを作成から、以下の設定を入力して作成する。

VPCコンソール

名前タグ: 任意の値
IPv4 CIDR: 10.0.0.0/16
他: デフォルトのまま

2. サブネットを作成

VPCコンソールの左メニューより「サブネット」を選択
サブネットを作成を押下し、以下の設定を入力して作成する。

サブネット設定

サブネット名: 任意の名前
IPv4 CIDRブロック: 10.0.0.0/24
他: デフォルト

この状態では、外からの接続が出来ないプライベートサブネットの状態なので、設定を編集していきます。

3. インターネットゲートウェイの作成とアタッチ

VPCコンソールの左メニューより「インターネットゲートウェイ」を選択
インターネットゲートウェイの作成を押下し、以下の設定を入力して作成する。

名前タグ: 任意の名前

その後、インターネットゲートウェイの一覧に戻り、作成したインターネットゲートウェイの名前があることを確認する。また、状態が"Detached"であることを確認する。
確認ができたら、作成したインターネットゲートウェイにチェックを入れてVPCにアタッチを押下。
以下を設定してインターネットゲートウェイのアタッチを行う。

使用可能なVPC: 先ほど作成したVPC

インターネットゲートウェイはVPCから外のインターネットに通信するためのゲートになります。
こちらを設定することで、ローカルPCとVPC内のEC2が通信可能になります。

4. ルートテーブルの作成とアタッチ

VPCコンソールの左メニューより「ルートテーブル」を選択
インターネットゲートウェイの作成を押下し、以下の設定を入力して作成する。

ルートテーブル
名前: 任意の名前
VPC: 先ほど作成したVPC

作成後画面にて、「ルートを編集」を押下する。
遷移後画面でルートの追加を押下し、以下の設定を行う。

送信先: 0.0.0.0/0
ターゲット: 先ほど作成したインターネットゲートウェイ

ルートテーブルの一覧に戻ったら、作成したルートテーブルを選択し、アクションから「サブネットの関連付けを編集」を押下する。
先ほど作成したサブネットを選択し、「関連付けを保存」を押下。

忘れがちですがアタッチまで行わないと何の意味もありません。

EC2を起動

EC2のコンソールに移動してください。

1. EC2の各種設定を行う

EC2の起動を押下。
以下の手順で各種設定をしていく。

  1. AMIの選択で「Microsoft Windows Server 2019 Base」を選択。Windows Serverの新しいイメージがあればそれを使っても良い。
  2. インスタンスタイプはt2.microを選択。t2.nanoでもいいが、動作がかなり遅いので今回はt2.microにする。
  3. インスタンスの詳細設定は少しややこしいので以下を丁寧に設定する。
    EC2の設定
    1. ネットワーク: 先ほど作成したVPCを選択
    2. サブネット: 先ほど作成したサブネットを選択
    3. 自動割り当てパブリックIP: 「有効」になっていなかったら有効を選択
    4. 他: デフォルト
  4. ストレージ: サイズ:30GiB ボリュームタイプ: General Purpose SSD(gp3)
  5. セキュリティグループは以下を設定
    1. タイプ: RDP
    2. ソース: プルダウンから「マイIP」
  6. 「確認と作成」に進み、新しいキーペアの作成 -> キーペア名に任意の名前を入力し、キーペアのダウンロードを行う。その後、「インスタンスの作成」を押下。

インスタンスの一覧に戻り、次の手順へ進む。

リモートデスクトップ接続

ここまでは普通にEC2インスタンスをパブリックサブネット上に作成しただけで、面白味もなにもない。
EC2インスタンスへのリモートデスクトップ接続は若干特殊なやり方なので、書いておきたかった。とはいえ内容は、こちらの記事をまとめているだけ。
https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/WindowsGuide/connecting_to_windows_instance.html

1. ログオン用のパスワードを取得

パスワード取得
EC2のコンソールに移動。先ほど作成したEC2インスタンスを選択し、「接続」を押下。
RDPクライアントのタブに移動し、「パスワードを取得」を押下。

Browse を押下し、先ほどキーペアの作成時にダウンロードしたpemファイルを選択する。
「パスワードを復号化」をクリックし、パスワードをメモする。

2. クライアントツールからの接続

「リモートデスクトップファイルのダウンロード」を押下し、クライアントツールにてダウンロードしたファイルを実行する。
※クライアントツール:Windowsなら「リモートデスクトップ接続」、Macなら「Microsoft Remote Desktop」など

上手くいくと資格情報の入力を求められるので、先ほどメモしたパスワードを入力し、接続を行う。

無事設定できると、画像のようにWindows画面が表示される。
Windows画面

まとめ

WindowsOSのEC2インスタンスへのリモートデスクトップ接続が初めてだったので、備忘を兼ねてまとめてみました。
パブリックサブネットの作成やEC2インスタンスの設定など、既にどこにでも情報が載っていることを長々と書いてしまったので記事作成に時間がかかってしまったのが今回の反省点です!
少しでも誰かのお役に立てば幸いです。

Discussion