LoginSignup
0
0

CloudShell をVPCで試してみた

Last updated at Posted at 2024-06-26

背景・目的

本日、AWS CloudShell now supports Amazon Virtual Private Cloud (VPC)が発表されました。
VPC内で CloudShellが使用できるとのことですので試してみました。

まとめ

下記に特徴をまとめます

特徴 説明
概要 VPCでCloudShellが使えるようになる
制約 IAMプリンシパル毎に最大2つのVPCの作成まで

VPCには最大5つのSGまで割り当てが可能

アップロード、ダウンロードオプションは使用できない

ストレージは一時的なもの

概要

Using AWS CloudShell in Amazon VPCを基に整理します

AWS CloudShell は VPC のネットワーク構成を継承し、VPC 内の他のリソースと同じサブネット内で AWS CloudShell を安全に使用し、それらに接続できるようにします。

  • VPCでCloudShellが使えるようになる

Operating constraints

AWS CloudShell VPC 環境には次の制約があります。

  • IAM プリンシパルごとに最大 2 つの VPC 環境を作成できます。
  • VPC 環境には最大 5 つのセキュリティ グループを割り当てることができます。
  • VPC 環境の [アクション] メニューでは、CloudShell のアップロードおよびダウンロード オプションは使用できません。
  • IAMプリンシパル毎に最大2つのVPCが作成できる
  • VPCには最大5つのSGを割り当てられる
  • アップロード、ダウンロードオプションは使用できない

VPC 環境では永続的なストレージはサポートされません。ストレージは一時的なものです。アクティブな環境セッションが終了すると、データとホーム ディレクトリは削除されます。

  • 一時的なストレージのみ

AWS CloudShell 環境は、プライベート VPC サブネット内にある場合にのみインターネットに接続できます。

  • プライベートサブネットがあるVPCにのみ接続できる

デフォルトでは、パブリック IP アドレスは CloudShell VPC 環境に割り当てられません。すべてのトラフィックをインターネット ゲートウェイにルーティングするようにルーティング テーブルが設定されたパブリック サブネットに作成された VPC 環境はパブリック インターネットにアクセスできませんが、ネットワーク アドレス変換 (NAT) が設定されたプライベート サブネットはパブリック インターネットにアクセスできます。このようなプライベート サブネットに作成された VPC 環境はパブリック インターネットにアクセスできます。

  • デフォルトではパブリックIPアドレスがはCloudShell VPCには割り当てられていない
  • IGWにルーティングするようにルーティングテーブルが設定されたパブリックサブネットに作成された、VPCはインターネットにアクセスできない
  • インターネットアクセスするには、NATをアタッチする

実践

CloudShellの起動

VPCの作成

  1. VPCに移動します
  2. 「VPCの作成」をクリックします
  3. 下記のような構成のVPCを構築します
    • Public Subnetなし
    • Private Subnet1つだけ
    • VPCeなし
      image.png

EC2の起動

  1. EC2に移動します
  2. 「インスタンスの起動」をクリックします
  3. 作成したVPCで、キーペア無し、パブリックIP無しでインスタンスを起動します

セキュリティグループの修正

  1. 上記のEC2で作成したSGを修正します
  2. VPC内からのICMPだけ受け付けるように変更します

CloudShellの起動

  1. CloudShellを選択します

  2. 「+」>「Create VPC envrionment(max 2) 」を選択します
    image.png

  3. 下記を入力し、「Create」をクリックします

    • VPC envrinment
    • VPC:作成したVPCを指定
    • Subnet:作成したSubnet
    • Security Group:任意
      image.png
  4. 起動されました
    image.png

  5. 上記の事前準備で作成したEC2と通信します(pingを打ちます)
    image.png

インターネットに接続可能な環境でCloudShellを起動する

VPCの作成

  1. VPCに移動します
  2. IGW、NATGWを作成したVPCを作成します
    image.png

CloudShellの起動

  1. CloudShellを選択します
  2. 「+」>「Create VPC envrionment(max 2) 」を選択します
    image.png
  3. 作成したVPCとPrivate Subnetに作成します
  4. できました
    image.png
  5. curl でインターネットにアクセスします。接続できました
    image.png

考察

VPCでCloudShellが起動できるようになり、今後は踏み台やSession Managerなど使用するためにVPCeやインスタンスを用意していましたが、それらは不要になりそうだと思いました!

参考

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0