web-dev-qa-db-ja.com

パブリックサブネット内のプライベートIPアドレスを持つec2インスタンスのインターネットアクセスを許可しますか?

  • ルートテーブルにインターネットゲートウェイを指すルートを持つパブリックサブネット(S1)があります。
  • S1内でec2インスタンス(I1)を起動しましたが、パブリックIPを割り当てなかったため、インスタンスにはプライベートIPアドレスしかなく、インターネットから到達できません。
  • ゲートウェイからインスタンス(I1)への経路ベースのルーティングをセットアップしました。これは問題なく機能します。つまり、ゲートウェイへのリクエストは支障なく処理されます。
  • 問題は、インスタンスI1からインターネットの一部のリソースにアクセスする必要があるが、インスタンスは外部から到達できないようにする必要があることです。

インスタンスがゲートウェイを介してインターネットと通信できると考えるのは間違っていますか(wifiネットワーク内のプライベートIPを持つモバイルがアクセスポイントのパブリックIPを介してインターネットと通信するのと同じように)?!

ソフトウェアのインストールにもインターネットアクセスが必要なため、パブリックIP/Elastic IPをインスタンスに割り当てなくてもこのケースを達成できるかどうか知りたいだけです。この要件を実装するにはどうすればよいですか。

注:プライベートサブネットの場合NATゲートウェイは正常に動作しますが、これはパブリックサブネットです。NATゲートウェイを指す場合、ルートを削除する必要がありますインターネットゲートウェイを指します。つまり、ゲートウェイはインスタンスと通信できません(ALB /ゲートウェイはAWSのパブリックサブネット内のインスタンスとのみ通信するためです。!)

PS:初心者はawsです。事前に感謝して、知識のギャップを悪用しないでください。

-ヤシュ

2
Yasasvee

パブリックサブネットとプライベートサブネットを誤解/誤用している。

パブリックサブネットには、インターネットゲートウェイ(IGW)があります。パブリックサブネットのインスタンスがインターネットにアクセスするには、パブリックIPアドレスが必要です。

プライベートサブネットにはNATゲートウェイまたはNATインスタンスがあります。プライベートサブネット内のインスタンスにはパブリックIPアドレスがありません。

要約すると、サブネットにIGWがある場合、それはパブリックサブネットです。サブネットにNAT=がある場合、それはプライベートサブネットです。

あなたの問題の解決策:

  1. 新しいサブネットを作成します。
  2. NATゲートウェイを作成します。NATゲートウェイをサブネットに割り当てます。
  3. プライベートサブネットに移動する必要があるインスタンスごとにAMIを作成し、それらのインスタンスをシャットダウンします。後でそれらを終了できますが、次の手順が正しく完了したことがわかるまで待ちます。
  4. 手順3で作成した各AMIから新しいEC2インスタンスを起動します。
  5. すべてが機能していることを確認します。次に、古いインスタンスを終了します。 AMIは、それらのインスタンスのバックアップとしても機能します。

要件に役立つものは次のとおりです。

「インスタンスでパブリックIPアドレスを使用して、セキュリティグループでロックダウンできます。リスクは、許可されるアクセスのタイプと場所から異なります。」

5
John Hanley