web-dev-qa-db-ja.com

AWSのプライベートサブネットにウェブサーバーを配置し、ポート80で世界に公開するにはどうすればよいですか?

可用性の高いAWSMagentoデプロイをセットアップしようとしています。ここにリファレンスデプロイメントがあります: http://docs.aws.Amazon.com/quickstart/latest/magento/architecture.html

これに基づいて、私は自分で構築したいと思います。NATインスタンスのみがパブリックサブネットにあるという彼のアイデアが好きです。

RDSインスタンスとウェブサーバーはどちらもプライベートサブネットのNATの背後にあります。これは、ウェブサーバーがパブリックサブネットにある必要があるというこれまでの私の理解のほとんどからの逸脱であることがわかりました。インターネットからアクセスできるようにする。

私が見逃しているのは、パブリックサブネットで実行されているNATインスタンスを、ポート80/443をNAT inの対応するWebサーバーにポート転送するように構成する方法です。プライベートサブネット。これは、NATインスタンスのみのセキュリティグループを介して実行できるとは思いません。

2
Ali

通常、この目的では、NATインスタンスを使用しません。これは実際にはPAT(ポートアドレス変換、NATのサブセット)インスタンスと呼ばれます。NATインスタンスは、プライベートサブネット上のインスタンスにインターネットおよびほとんどのAWSサービス(SQSやSNSなど)へのアウトバウンドアクセスを提供するために存在します-プライベートサブネット上のインスタンスによって開始されるアウトバウンド要求トラフィック(プライベートIPアドレスのみを持つ定義)は、NATインスタンスのパブリックIPアドレスを介してマスカレードされます。静的ポートマッピング以上でNATインスタンスを構成するのは可能です) iptablesを介して、またはNATインスタンスでリバースプロキシを実行することによる、内部サービスへの高度なアクセス。ただし、これは一般的な構成ではありません。

インターネットを介したWebサーバーへのアクセシビリティは、リンクされたドキュメントの図2に示されています。パブリックサブネットにデプロイされたElasticLoad Balancerには、パブリックIPアドレスとプライベートIPアドレスがあります。パブリック側でインターネットからのトラフィックを受け入れ、プライベート側でWebサーバーに転送します。

ELBは、外部から内部のすべてのインスタンスへの単一の論理アクセスポイントを提供し、「正常」と見なされないインスタンスにトラフィックを転送しません。

3

私はそれについていくつかの実用的なルールで投稿を書きました:

https://thepassionatecraftsman.com/where-to-put-your-server-in-a-private-or-public-subnet-ab1fa971269c#.hwx0gsaiy

0
rtacconi