この記事を読むことで出来ること
- SystemsManagerセッションマネージャーのポートフォワーディング機能でのRDPを、バッチファイルで実行できる。
- 自分の環境用のバッチファイルを作成できる。
SystemsManagerセッションマネージャーのポートフォワーディング機能については、こちらの記事を参考にしてください。
目次
検証環境
- 検証日: 2021/10/31
- PC環境:
- Windows10 Home Ver21H1
- AWS CLI:
aws-cli/2.1.34 Python/3.8.8 Windows/10 exe/AMD64 prompt/off
-- profile aws_PF
: SystemsManagerポートフォワーディング用
- AWS CLI:
- Windows10 Home Ver21H1
注意事項
- 本記事の内容は
Windows コマンドプロンプト
で検証しています。 - AWS CLIは
バージョン2
を使用しています。 - コマンド内の変数やパラメータやは検証で使用したものを記載しています。ご自身の環境に合わせ、書き換えて使用してください。
- 個人で検証しているため実行結果に責任は持てません。必ずご自身でも検証してから使用してください。
1. 事前準備
踏み台サーバなしでAWS上のサーバへ接続するには、SystemsManagerセッションマネージャのポートフォフォワーディング機能を使用します。
本機能の使用方法は別途記事を書いていますので、そちらを参照してください。
2. RDP接続用のバッチファイル
以下の内容を環境毎に修正してください。
修正した内容を拡張子 .bat
のファイルへ記述した後、ファイルを実行します。
@echo off setlocal @rem 変数部分のみ環境に合わせて修正してください。 @rem - SERVER : 変更不要、ポート転送のためlocalhostへの接続となります。 @rem - PORT : 複数サーバを接続する場合、サーバ毎に変えてください。13001~13099は空き。 @rem - PROFILE : AWS CLIで設定したProfile。admin権限とかで専用に作っていない場合は「default」。 set ENV=本番 set SYSTEMS=blog set HOSTNAME=Win-TestServer set INSTANCE=i-1234567890AAAAAAA set SERVER=localhost set PORT=13001 set PROFILE=aws_PF @echo ///// Server Info ///////////////////// @echo 環境 : %ENV% @echo サーバ用途 : %SYSTEMS% @echo ホスト名 : %HOSTNAME% @echo インスタンスID: %INSTANCE% @echo 接続先情報 : %SERVER%:%PORT% @echo プロファイル : %PROFILE% echo; echo; @echo ///// Start RDP /////////////////////// @echo ・5秒後にリモートデスクトップ接続が開きます。 @echo ・ログイン情報を入れてRDPしてください。 @echo ・一緒に開く最小化されたCMDは、RDP終了時に自動で閉じます。 echo; echo; Start "" /min cmd /c "timeout 5 && mstsc /v:%SERVER%:%PORT% /w:1280 /h:800" @rem mstscオプション @rem - /f : 全画面表示モードで接続 @rem - /w:<width> /h:<height> : 画面サイズを指定して接続 @rem /w:1920 /h:1080 : Full HD @rem /w:1600 /h:1024 : WSXGA @rem /w:1440 /h:900 : WXGA+ @rem /w:1280 /h:800 : WXGA @rem /w:1024 /h:768 : XGA @rem /w:640 /h:480 : VGA @rem - /admin : 管理者モードで接続 @echo ///// Start PortForwardingSession ///// @echo ・SystemsManagerへの接続コマンドを実行します。 @echo ・コマンドプロンプトはRDP終了まで閉じないでください。 @echo ・RDP終了後、コマンドプロンプトは「×」で閉じてください。。 echo; echo; aws ssm start-session ^ --target %INSTANCE% ^ --document-name AWS-StartPortForwardingSession ^ --parameters "portNumber=3389, localPortNumber=%PORT%" ^ --profile %PROFILE% cmd /k