aws
2024.10.16
2024.10.16
EC2 Windows Serverにアクセスできなくなったとき、SSMを使って復旧した方法
AWS EC2でWindows Serverを利用していると、ファイアウォールの設定変更が原因でリモートデスクトップ(RDP)接続が突然できなくなるというトラブルに直面することがあります。今回は、ファイアウォール設定ミスでRDPが機能しなくなった際に、AWS Systems Manager(SSM)を使用してサーバーにアクセスし、問題を解決した体験を共有します。ファイアウォール設定変更によるRDP接続不能
セキュリティ強化を目的としてEC2上のWindows Serverにファイアウォールの設定変更を行いました。
具体的には、特定のポートを閉じたり、許可されたIPアドレスを制限したりしました。しかし、設定を反映した直後、RDP接続が完全にできなくなってしまったのです。ファイアウォールのルールで3389ポート(RDP用ポート)がブロックされたのが原因でした。「サーバーに接続できない」という状況は非常に焦りますが、冷静に対処するために他のアクセス方法を模索することにしました。AWS Systems Manager(SSM)による救出作戦
AWSにはAWS Systems Manager(以下SSMと呼称します)というサービスがあり、これを使用すればたとえ外からのアクセスが制限されていたとしても入れるようになります。
具体的なプロセスは以下の通りです。EC2インスタンスに適切なIAMロールを付与
EC2にSSMからアクセスする際に適切なIAMロールを付与する必要があります。
ロールの作成
AWSのマネジメントコンソールからIAMを開きロールを選択しましょう
ロールを作成ボタンを押しましょう。次に以下の選択をして進みます。画面から許可ポリシーを選択します。AmazonSSMManagedInstanceCoreにチェックを入れて次へを押します。ロール名は任意の名前で大丈夫です。ここではec2-ssmといったロール名で進めていきます。ロールのアタッチ
続いて作成したロールをEC2にアタッチしていきます。
EC2を開いて該当のインスタンスを選択してください。「アクション」から「セキュリティ」を選択し「IAMロールを変更」を押しましょう。すると選択肢に先ほど作成したロール名があると思いますのでそれを選択し「IAMロールの更新」を押しましょう。これでロールの付与は完了です。ssmからリモート接続
Systems Managerを開き「Systems Managerの使用を開始」を押しましょう。
するとロールを付与したEC2インスタンスがあるはずですのでそれをクリックします。「ノードアクション」から「接続」を選択し「リモートデスクトップで接続」を選択しましょう。ここからはwindows serverのユーザーに必要な認証情報を入力するだけですので、入力後に「接続」を押しましょう。これでserverに入ることができたはずです。まとめ
意外にもファイヤウォールでアクセスの設定ミスをしてもAWSのコンソール画面からこうやってアクセスできるんですね。
私も設定ミスをしてかなり焦りましたが、冷静になって何か方法はあるはずだと調べてみました。オンプレミスでサーバーを管理していた方にとってはサーバー自体がそこにないためどうしても不安になりがちですが、こういう対処法を知っているだけで少しは安心できるかなと思います。