Upgrade to Pro — share decks privately, control downloads, hide ads and more …

第108回 雲勉【オンライン】Session Manager を使ってみよう!

第108回 雲勉【オンライン】Session Manager を使ってみよう!

下記、勉強会での資料です。
https://youtu.be/RSVitwN5QJ4

iret.kumoben

July 14, 2023
Tweet

More Decks by iret.kumoben

Other Decks in Technology

Transcript

  1. 0.⾃⼰紹介 2 n 笹崎 ⽇登 (ささざき ひでと) • クラウドインテグレーション事業部 MSPセクション

    ⼆次運⽤第⼆グループに所属 • 前職は理容師してました • 現在は主にクラウドインフラの環境構築や運⽤改善、 監視ツールの導⼊等を⾏っております • サウナ⼤好きです
  2. アジェンダ 3 1. Session Manager について (19:05~19:25) 2. やってみよう (19:25~19:45)

    3. おまけ (19:45~19:50) 4. まとめ (19:50~19:55) 5. 質疑応答 (19:55~20:00)
  3. 本⽇のゴール 4 • Session Manager の概要を理解する • Session Manager を活⽤した

    EC2 への接続⽅法について理解する • Session Manager と EC2 Instance Connect との使い分けを理解する • Session Manager を除いたサービス詳細 • Linux のコマンド説明 AWS CLI , SSM Agent プラグイン , direnv 等の説明 • TCP / IP の説明 やらないこと
  4. 1.Session Manager について – Systems Manager とは 6 オンプレミス /

    AWS の環境で運⽤に必要な作業を実施することができるコックピット リソースのモニタリング • Systems Manager Explorer • Systems Manager Inventory タスクの⾃動化 • Systems Manager Automation • Systems Manager State Manager 双⽅向なシェルアクセス • Systems Manager Session Manager アプリケーションの設定管理 • Systems Manager Parameter Store
  5. 1.Session Manager について – Session Manager の概要 7 踏み台ホスト SSH

    キーが不要 インバウンドポートの 解放や SSH キーの管 理が不要であり、パブ リックIPアドレスの有 無に関わらず接続可能 アクセス制御 と ログ管理 IAM ポリシーによる細 かなアクセス制御と AWS の様々なサービ スを活⽤してログ管理 が可能 様々な運⽤環境 に対応 Windows , Linux , macOS を搭載した EC2 , オンプレサー バー , エッジデバイス といったデプロイメン ト環境に対応
  6. 1.Session Manager について – 踏み台ホスト SSH キーが不要 8 SSM Agent

    IAM 認証 / 認可 Session Manager デプロイメント環境
  7. 1.Session Manager について – 踏み台ホスト SSH キーが不要 18 SSM Agent

    IAM 認証 / 認可 Session Manager デプロイメント環境 ⼊れた! ⼊れた!
  8. 1.Session Manager について – 踏み台ホスト SSH キーが不要 20 SSM Agent

    VPC エンドポイント を利⽤した PrivateLink 接続
  9. 1.Session Manager について – 踏み台ホスト SSH キーが不要 21 SSM Agent

    トンネリングアクセス ( SSH 接続 ) • トンネル経由での SSH / SCP が可能 • ポートフォワーディングによる RDP が可能
  10. 1.Session Manager について –アクセス制御とログ管理 22 IAM 認証 / 認可 •

    SSHしたい︕ • arn:aws:ssm:*:*:document/AWS-StartSSHSession • 対象ノードを限定したい︕ • arn:aws:ec2:ap-northeast-1:XXX:instance/i-XXX • 接続ユーザーを限定したい︕ • arn:aws:ssm:*:*:session/${aws:username}-*
  11. 1.Session Manager について –アクセス制御とログ管理 23 IAM 認証 / 認可 {

    "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:StartSession" ], "Resource": [ "arn:aws:ssm:*:*:document/AWS-StartSSHSession", "arn:aws:ec2:ap-northeast-1:XXX:instance/i-XXX" ] }, { "Effect": "Allow", "Action": [ "ssm:TerminateSession", "ssm:ResumeSession" ], "Resource": [ "arn:aws:ssm:*:*:session/${aws:username}-*" ] } ] } この IAM ポリシーは実際の ハンズオンで利⽤します︕
  12. 2.やってみよう! – 作業環境 28 コンピュータ • MacBook Air M1 macOS

    Monterey ターミナル • iTerm インストール済みソフトウェア • AWS CLI • SSM Agent プラグイン • direnv ※ AWS CLI , プラグインのインストール⽅法や direnv の利⽤⽅法は本講義では取り上げません
  13. 2.やってみよう! – Session Manager ハンズオンの流れ 29 1 2 3 •

    VPC 作成 • セキュリティグループ作成 • VPC エンドポイント作成 • EC2 作成 • IAM ユーザー 作成 • ローカル端末作業 • SSM / SSH / SCP 接続確認
  14. 2.やってみよう! – EC2 Instance Connect Endpoint ハンズオンの流れ 31 1 2

    3 • セキュリティグループ作成 • VPC エンドポイント作成 • EC2 作成 • IAM ポリシー修正 • ローカル端末作業 • 接続確認
  15. 3.おまけ – Session Manager と EC2 Instance Connect Endpont の使い分け

    34 SSH / SCP / RDP / SSM 接続 SSH / SCP / RDP 3 VPC エンドポイント 1 SSM Agent ツール EC2 Instance Connect CloudWatch Logs / S3 / CloudTrail ログ記録 CloudTrail IAM / セキュリティグループ 認証・認可・制御 IAM / セキュリティグループ
  16. 35 ౿Έ୆αʔόʔ Session Manager EC2 Instance Connect Endpoint 使い慣れたシェルアクセスでサーバーへ接続したい場合 コンソール操作や

    AWS CLI を使って対象サーバーへ接続 したい場合、他 Systems Manager 機能を利⽤する場合 簡単に接続を⾏いたい場合 - ユースケース - 3.おまけ – Session Manager と EC2 Instance Connect Endpoint の使い分け
  17. 3.おまけ – Session Manager と EC2 Instance Connect Endpoint の使い分け

    36 ౿Έ୆αʔόʔ Session Manager EC2 Instance Connect Endpoint 使⽤時以外は停⽌することでコストを抑えられる Πϯό΢ϯυϧʔϧ΍ SSH / RDP Ωʔͷ؅ཧ͕ෆཁ ϩά؅ཧͷબ୒ࢶ͕๛෋ EIC ⾃体は無料で利⽤できるのでコストを抑えられる 導⼊が簡単 - メリット -
  18. 3.おまけ – Session Manager と EC2 Instance Connect Endpoint の使い分け

    37 ౿Έ୆αʔόʔ Session Manager EC2 Instance Connect Endpoint インスタンスのメンテナンスや鍵の管理 SSM Agent ͷΠϯετʔϧ VPC ΤϯυϙΠϯτ͔ Nat Gateway ͕ඞཁ EC2 Instance Connect Endpoint が必要 AZ 障害 に備えた別の冗⻑⼿段が必要 - 必要なこと-
  19. 4.まとめ – 復習 39 • Session Manager は Systems Manager

    の⼀部 • 柔軟なシェルアクセスを実現できるサービス • ログは CloudWatch Logs , S3 , CloudTrail に保存可能 • インバウンドのシェルアクセス⽤ポート解放や鍵を必要としない • インスタンスプロファイルでの SSM ⽤ロールが必要 • ローカル端末から接続する際は認証となる IAM のアクセスキー シークレットキーが必要 • 認可として IAM ポリシーで制御が可能 • プライベートサブネット内のサーバーにアクセスする場合は VPC エンドポイントが必要 • SSM と EIC は似ているけどユースケースや必要な事が異なる
  20. 4.まとめ – リンク 40 Session Manager SSM Agent ローカル環境セット アップ

    EC2 Instance Connect Endpoint AWS Systems Manager Session Manager プライベートサブネットへの接続⽅法 AWS CLI の最新バージョンをインストールまたは更新します。 AWS CLI ⽤の Session Manager プラグインをインストールする SSM Agent の使⽤ パブリック IPv4 アドレスを必要としないインスタンスへの接続 EC2 Instance Connect Endpoint のセキュリティグループ
  21. 4