web-dev-qa-db-ja.com

AWS Cloudfront for VPC / VPN

AWSは、ウェブサイトの使用にCloudfrontの使用を許可していますか? Webサイトは、企業VPN内でのみアクセスできる必要があります。 1つのネットワーク内で制限されたアプリケーションを使用する場合、クラウドフロントでWebページをキャッシュすることは良い考えですか?

17
Chiran Ravani

@daxlerodが指摘しているように、CloudFrontで比較的新しい Web Application Firewall サービスを使用して、コンテンツへのアクセスをIPアドレス範囲などで制限することができます。

そしてもちろん、その前でCloudFrontを使用するために、Webサイトが実際にAWS内でホストされている必要はありません。

しかし、「うまくいくでしょうか?」そして、「必要な構成のすべての影響はセキュリティの観点から受け入れられますか?」 2つの異なる質問です。

CloudFrontをサイトで使用するには、CloudFrontのために、Originサーバー(コンテンツがリクエストされているEdgeノードのキャッシュにないコンテンツをCloudFrontがフェッチするWebサーバー)にインターネットからアクセスできる必要があります。これに接続するには、プライベートサイトをあるレベルでインターネットに公開する必要があります。

CloudFrontのIPアドレス範囲は公開情報であるため、オリジンサーバーのファイアウォールを使用してオリジンサーバーへのアクセスを部分的に保護できますが、これはCloudFront以外からのアクセスを防ぐだけであり、それだけでは十分ではありません。 「保護された」サーバーの名前。自分のCloudFrontディストリビューションを作成し、CloudFront経由でアクセスできます。これは、IPアドレスが同じ範囲になるためです。

CloudFrontが提供するメカニズムは、承認されたCloudFrontディストリビューションからのリクエストとそれを介したリクエストがカスタムOriginヘッダーであることを保証します。これにより、CloudFrontは不明なカスタムヘッダーとシークレット値をOriginサーバーに送信する各リクエストに挿入し、サーバーがリクエストがCloudFrontからだけでなく、特定のCloudFrontディストリビューションからのものであるという事実。もちろん、Originサーバーは、このヘッダーが付いていないリクエストを、説明なしで拒否します。

http://docs.aws.Amazon.com/AmazonCloudFront/latest/DeveloperGuide/forward-custom-headers.html#forward-custom-headers-restrict-access を参照してください。

そしてもちろん、ブラウザーとCloudFrontの間にはhttps、CloudFrontとオリジンサーバーの間にはhttpsが必要です。 CloudFrontを構成して、フロントサイドまたはバックサイドでhttpsを個別に使用(または必須)することができます。そのため、上記のセキュリティ上の考慮事項によってニーズに対応できるソリューションとなる場合は、両方に対して適切に構成する必要があります。

機密性が高くない情報については、CloudFrontのキャッシングまたは他の機能がサイトに有益である場合、これは賢明なアプローチのようです。

19

はい、CloudFrontはウェブサイトの前面にあるキャッシングレイヤーとして設計されています。

CloudFrontへのアクセスを制限する場合は、 Web Application Firewall サービスを使用できます。

2
daxlerod

ウェブサイトをパブリックネットワークに配置する> CloudFrontディストリビューションでWAFルールをアタッチする> WAFルールで会社のIPの範囲をホワイトリストに登録し、その他すべてをブラックリストに登録する

1
thepolina