0Pricing
Cloud & IT Cert Prep · レッスン

開放ポートを使わないSession Manager

インバウンドアクセスを一切開けずに、SSM経由でインスタンスへ接続します。

「開放ポートを使わないSession Manager」はCoddyKit上の無料Cloud & IT Cert Prepレッスンです。 これはレッスン2/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはCloud & IT Cert Prep学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Cloud & IT Cert Prepコースには全4レッスンが含まれています。

ドアのないシェルアクセス

AWS Systems Manager (SSM) の機能であるSession Managerを使用すると、インバウンドポートを一切開放せずに、EC2 インスタンスやオンプレミスサーバーへの対話型シェルアクセスが可能になります。これを実現する仕組みを正確に理解することは、踏み台ホストを使わない最新の管理方式の基盤となるため、試験で非常に重要なテーマです。

SSM Agent

この仕組みは、ほとんどの AWS AMI(Amazon Machine Images)にあらかじめインストールされているソフトウェア、SSM Agentから始まります。Agent はインスタンス上で実行され、Systems Manager サービスのエンドポイントへのアウトバウンド接続を開始します。インスタンス側から接続するため、インバウンドルールは一切必要なく、セキュリティグループですべてのインバウンドトラフィックをブロックできます。

インスタンスロール

SSM を動作させるには、インスタンスプロファイルを介して、Systems Manager の権限を付与するIAM ロールがインスタンスに必要です。通常は、管理ポリシー AmazonSSMManagedInstanceCore を使用します。このロールがないと Agent は登録できないため、インスタンスがマネージドノードとして表示されない場合は、適切なロールがアタッチされているかを最初に確認します。

arn:aws:iam::aws:policy/AmazonSSMManagedInstanceCore

パブリック IP は不要

Session Manager は、パブリック IP のないプライベートサブネット内のインスタンスでも動作します。Agent は、NAT ゲートウェイ経由、またはより安全な方法として、ssm、ssmmessages、ec2messages 用のVPC インターフェイスエンドポイント(PrivateLink)経由で SSM に接続します。エンドポイントを使用すると、すべてのトラフィックがインターネットに触れることなく AWS ネットワーク内に留まります。

セッションの開始

認証されたユーザーは、コンソール、CLI、または SDK からセッションを開始します。以下のコマンドは、SSH クライアント、キー、開放ポートを一切使わずに、マネージドインスタンス上のシェルを開きます。ユーザーがセッションを開始できるかどうかは IAM が決定します。

aws ssm start-session --target i-0abcd1234efgh5678

IAM によるアクセス制御

セッションを開けるユーザーは、ssm:StartSession アクションに対するIAM ポリシーによって完全に制御されます。タグで特定のインスタンスにアクセス範囲を限定したり、接続できるユーザーを制限したり、使用できる SSM ドキュメント(セッションタイプ)を限定したりできます。これにより、SSH キーの配布を、集中管理され監査可能な IAM 制御に置き換えられます。

タグベースの制限

強力なパターンとして、インスタンスのタグでセッションアクセスの範囲を限定できます。たとえば、ポリシーで ssm:StartSession を Environment=Dev のタグが付いたインスタンスにだけ許可すれば、開発者は開発環境には接続できますが、本番環境には接続できません。この属性ベースの制御は、インスタンスごとのポリシーを使わずにきれいに拡張でき、最小権限を適用します。

転送中の暗号化

セッションデータは TLS を使用して転送中に暗号化されます。また、セッションチャネルにKMS 暗号化を必須にして、さらに保証を高めることもできます。開放ポートがないことと組み合わせることで、管理トラフィックはインターネットから見えず、エンドツーエンドで保護されるため、厳格なコンプライアンス要件を満たせます。

ポートフォワーディング

Session Manager はポートフォワーディングもサポートしています。安全な SSM チャネルを介して、ローカルマシンのポートからインスタンス上(またはその先)のポートへトンネリングできます。これにより、ポートをパブリックに公開せずに RDP やデータベースへ接続でき、チームが踏み台ホストを使い続けていた別の理由も解消できます。

安全である理由

このセキュリティモデルには大きな利点があります。攻撃対象となるインバウンドポートがなく、漏洩するSSH キーもなく、アクセス制御はIAM ベースで、オプションでプライベートエンドポイントを使用でき、全体を通じて暗号化されます。従来のリモートアクセスの弱点をすべて解消するため、試験では Session Manager が安全な管理のデフォルトの答えとして扱われます。

全体をつなげる

Session Managerは、アウトバウンド接続を行うSSM Agentと、AmazonSSMManagedInstanceCoreを持つインスタンスロールを使用して、インバウンドポート、パブリック IP、キーなしでシェルアクセスを提供します。アクセスはIAM(ssm:StartSession)で制御され、タグで範囲を限定できます。転送中は暗号化され、VPC エンドポイント経由でプライベートに接続できます。安全なポートフォワーディングにも対応しています。

クイックチェック

Session Manager の仕組みを確認します。

まとめ

Session Managerは、アウトバウンド接続を行うSSM Agentとインスタンスロール(AmazonSSMManagedInstanceCore)を介してシェルアクセスを提供し、インバウンドポート、パブリック IP、キーを必要としません。アクセスはIAM(ssm:StartSession)で管理され、タグで範囲を限定できます。TLS/KMS で暗号化され、ssm、ssmmessages、ec2messages 用のVPC エンドポイントを介してプライベートに動作します。安全なポートフォワーディングにも対応しています。

よくある質問

「開放ポートを使わないSession Manager」レッスンは無料ですか?

はい。「開放ポートを使わないSession Manager」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Cloud & IT Cert Prepコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Cloud & IT Cert Prepコースには全4レッスンが含まれています。

「開放ポートを使わないSession Manager」で何を学びますか?

インバウンドアクセスを一切開けずに、SSM経由でインスタンスへ接続します。 ブラウザで直接実行するハンズオンコードでCloud & IT Cert Prepを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

Cloud & IT Cert Prepを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのCloud & IT Cert Prepは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン2/4です。

「開放ポートを使わないSession Manager」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このCloud & IT Cert Prepレッスンでコードを書いて実行できますか?

はい。すべてのCloud & IT Cert Prepレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. Bastionホストがリスクを高める理由
  2. 開放ポートを使わないSession Manager
  3. 管理者セッションの監査とログ記録
  4. エンドポイントとPatch Managerの強化
← Cloud & IT Cert Prepに戻る