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

第9回 雲勉LT【オンライン】EC2 Instance Connect エンドポイントのご紹介

第9回 雲勉LT【オンライン】EC2 Instance Connect エンドポイントのご紹介

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

iret.kumoben

July 21, 2023
Tweet

More Decks by iret.kumoben

Other Decks in Technology

Transcript

  1. 2 • 野崎 ⾼弘(のざき たかひろ) • アイレット株式会社 クラウドインテグレーション事業部 プロジェクト企画推進セクション インフラ技術

    • インフラ構築・保守やSOCセキュリティアナリストをやってました • 現在は技術検証やドキュメント作業が主 • 趣味︓資格取得、⽝の散歩、ドラマ鑑賞、巨⼈ファン • 現在、AWSは全冠、GCPは10冠 3 ⾃⼰紹介
  2. 本LTの⽬的 3 2023.06.13に、EC2 Instance Connect Endpoint (以下、EIC エンドポイント) というパブリックIPアドレ スを使⽤せずにEC2インスタンスにSSHおよびRDP接続できるようにするサービスが提供されたので、効果

    を検証します。 EIC エンドポイントの使⽤に追加料⾦はかかりません。標準のデータ転送料⾦が適⽤されます。なので検証 が終わってもエンドポイントは削除しなくても⼤丈夫です。 そこで本LTでは、EIC エンドポイントを使⽤して、本当に踏み台ホストを作成する必要なく、プライベート IP アドレスを持つインスタンスに SSH/RDP 接続をトンネリングできるのか検証します。 (参考) Amazon EC2 Instance Connect supports SSH and RDP connectivity without public IP address Connect to your instances without requiring a public IPv4 address using EC2 Instance Connect Endpoint
  3. 全体像 4 ① ② ② ③ ④ ⑤ ①EC2インスタンス接続エンドポイントの作成 ②EC2⽤のセキュリティグループの作成

    ③EIC エンドポイントのセキュリティグループの修正 ④EIC エンドポイント経由のEC2 SSH接続 ⑤EIC エンドポイント経由のEC2 RDP接続
  4. 前提条件 5 • 必要な権限やロールはあらかじめ付与されているものとします。 • EC2 Instance Connect エンドポイントは、「使⽤可能」(コンソール) またはcreate-complete(AWS

    CLI) 状態である必要があります。 • 接続先のインスタンスのセキュリティグループが受信トラフィックに対して正しく構成されていること を確認してください。 • EICエンドポイントはアカウントごとに5つ、かつVPCごとに1つのみ作成できます。 (こちら上限緩和申請できるのかどうか確認できていません=おそらく現在まだできないです)
  5. 留意事項 6 • RDP接続の⽅がポートフォワードを⼀旦張る関係上1ステップ余分で若⼲⼿間がかかります。 (SSHは1⾏のコマンドでいけます) • 古いAWS CLIバージョンだと aws ec2-instance-connect

    コマンドがないと怒られます。AWS CLIは 現時点での最新バージョンにバージョンアップしておいてください。 $ aws –version aws-cli/2.12.3 Python/3.11.4 Darwin/22.5.0 exe/x86_64 prompt/off $ aws ec2-instance-connect help EC2-INSTANCE-CONNECT() EC2-INSTANCE-CONNECT() NAME ec2-instance-connect – DESCRIPTION Amazon EC2 Instance Connect enables system administrators to publish one-time use SSH public keys to EC2, providing users a simple and secure way to connect to their instances. AVAILABLE COMMANDS o help o open-tunnel o send-serial-console-ssh-public-key o send-ssh-public-key o ssh
  6. 作業⼿順 9 4. EIC エンドポイント経由のEC2 SSH接続 (Demo) 〔マネジメントコンソール〕 EC2から[接続]を選び、[EC2 Instance

    Connect]タブの接続タイプで[EC2 Instance Connect エンドポイ ントを使⽤して接続する]を選び、ユーザー名をec2-userに修正、最後にEC2 Instance Connect エンドポイ ントを選んで[接続] 〔実⾏コマンド〕 (従来まで) ssh -i nozaki.pem ec2-user@i-0e6a2ad9ed618a627 -o ProxyCommand='aws ec2-instance- connect open-tunnel --instance-id i-0e6a2ad9ed618a627' (新たに実⾏できるようになった) aws ec2-instance-connect ssh --instance-id i-0e6a2ad9ed618a627 --connection-type eice
  7. まとめ 11 ・SSMの場合 EC2インスタンスにSSM接続のためのIAMインスタンスプロファイルの設定が必要になる。 • SSHの場合 マネジメントコンソールからSSMのように接続できます。SSMと違って鍵環境がなくてもブラウザさえあ ればCloudShellで⼊れます。 SSHコマンドだと-o ProxyCommandを使⽤してopen-tunnel

    AWS CLI コマンドを併⽤する必要があり ます。 aws ec2-instance-connect sshコマンドを使⽤すればシンプルになりますが、AWS CLIを導⼊しておく 必要があります。 • RDPの場合 ポートフォワード後にリモートデスクトップする必要があります。