AWSのセッションマネージャでポートフォワーディングができるようになったので、検証してみたいと思います。
今回は設定に伴う、前提知識を整理し、次回に具体的な手順を記載致します。
↓AWS記事はこちら↓
AWS System Manager Sessions Manager を使用した新しい機能 – Port Forwarding | Amazon Web Services ブログ
- ■前置き
- ■ポートフォワーディング(Port Frowarding)とは?
- ■セッションマネージャを利用したポートフォワーディングについて
- ■セッションマネージャを利用したポートフォワーディングの前提事項について
- ■SSM Agentの対象OSについて
■前置き
「踏み台サーバ」と記載していますが、踏み台サーバにも種類があります。
① 踏み台サーバに直接ログインして、踏み台サーバから目的のサーバにログイン(SSHやRDP)する方法
⇒ 踏み台サーバにログインし、踏み台サーバ上でリモートサーバを操作するケース
② Clientと踏み台サーバ間でSSHセッションを確立した状態で、ポートフォワーディングを利用し、ローカルPCから直接接続しているように見せる方法 ⇒ ローカルPC上でリモートサーバを直接操作する(操作しているようにみえる)ケース
※リモートサーバからみると、接続元は踏み台サーバである点に注意!!!
SessionManagerを利用した場合は、上記②が該当します。
■ポートフォワーディング(Port Frowarding)とは?
一般的によく使われるのは、SSHポートフォワーディングです。
文章だとイメージしづらいのと若干語弊がありますが、
「ローカルPCの任意のポートにアクセスした際に、事前に通信先を設定した踏み台サーバが通信を中継し、リモート(サーバ)の接続したいポート(SSHなら22番、RDPなら3389番)に接続することができます」
図だと以下のような感じです。
■セッションマネージャを利用したポートフォワーディングについて
踏み台サーバの構成とセッションマネージャの構成を比較してみると以下のような感じです。
大きく変わっているのは、
・Publicセグメントが不要
・踏み台サーバの代わりとして、SystemsManger(=セッションマネージャ)を使用
・セッションマネージャ用のVPC Endpointsが必要
・EndpointsとInstanceに専用のセキュリティグループが必要
といった感じです。
詳細な通信フローは次回に記載致します。
今は構成イメージのみ認識してもらえばと思います。
■セッションマネージャを利用したポートフォワーディングの前提事項について
【Client】
・Clientにはawscliが必要です。※なるべく実施時の最新版を推奨
・Clientにはsession-manager-pluginが必要です。 ※なるべく実施時の最新版を推奨
【Instance】
・接続するInstanceにはSSM Agentが必要です。※なるべく実施時の最新版を推奨
・接続するInstanceには事前にIAMロールの割り当てが必要です。
■SSM Agentの対象OSについて
公式サイトに対象OSについて記載されております。
まずは、こちらを確認下さい。
サポートされるオペレーティングシステム - AWS Systems Manager
以上です。
次回は実際に手順を紹介します。