AWS Systems Manager の機能である Session Manager を使用してポート転送を作成したいと考えています。
簡単な説明
ポート 80 のポート転送セッションを作成し、ローカルマシンのローカルホストアドレスからウェブサイトをロードできます。セキュリティグループまたはネットワークアクセスコントロールリスト (ネットワーク ACL) でマネージドインスタンスのインバウンドポート 80 を開く必要はありません。ポート 80 のポート転送セッションを作成すると、AWS のセキュリティ体制が強化されます。
前提条件:
- Systems Manager により Amazon Elastic Compute Cloud (Amazon EC2) インスタンスが管理されていること。詳細については、「Systems Manager の EC2 インスタンスのセットアップ」および「Linux 用 EC2 インスタンスに手動で AWS Systems Manager Agent (SSM Agent) をインストールする」を参照してください。
- 最新バージョンの AWS コマンドラインインターフェイス (AWS CLI) を使用していること。
- AWS CLI の Session Manager プラグインをインストールしていること。
解決策
1. 次のコマンドを実行します。
注: example の値を必要な値に置き換えてください。
Linux または macOS:
# aws ssm start-session \
--target example-EC2-instance-ID \
--document-name AWS-StartPortForwardingSession \
--parameters '{"portNumber":["80"], "localPortNumber":["example-local-port"]}'
Windows:
> aws ssm start-session
--target "example-EC2-instance-ID" --document-name AWS-StartPortForwardingSession --parameters "portNumber"=["80"],"localPortNumber"=["example-local-port"]
2. ローカルマシンでブラウザを開き、http://localhost:example-local-port をロードして Amazon EC2 インスタンスのウェブサーバーのコンテンツを確認します。