web-dev-qa-db-ja.com

EC2セキュリティグループ、ホスト名によるインバウンドアクセスの制限

Paypal IPN用のWebフックを作成しましたが、ポート80/443のPaypalサーバーからエンドポイントをホストするEC2インスタンスへのアクセスのみを許可したいと思います。

EC2セキュリティグループコンソールでは、IP /範囲でのみフィルタリングできます。 PaypalがIPアドレスをランダムに予告なしに変更すると言っているので、これは適切ではありません。そのため、ホスト名を使用する必要があります。

IPブロックの拡大などを推奨する回答を見てきましたが、実際の直接的な解決策はありません。提案された解決策の1つは、AWSAPIを使用してセキュリティグループを更新することでした。

これは最良のオプションですか?私にできることは、Paypalホストが解決する現在のIPを最後の既知のIPアドレスと比較するためのスケジュールされたタスクを持つことです。それらが異なる場合は、AWSEC2グループを更新します。

同じマシンでそのタスクを実行します。マシンが停止すると、エンドポイントにアクセスできなくなるためです。

これが最も適切な解決策ですか?同様の問題を抱えている自宅でも同じことをします。

3
jim

セキュリティグループはホスト名フィルタリングを行わず、AWS内のIP範囲またはその他の論理参照のみを行います。

AWSはSG用のAPIを提供しているため、IPアドレスの変更に応じて更新できますが、その方法は本番サービスには少し壊れやすいように聞こえます。

他にも多くのオプションがありますが、もう少し作業が必要です。たとえば、プロキシを設定すると、たとえばホスト名を介してアクセスを制御できます。

AWSは、ここでsquidのインストールと構成に関する詳細なガイドを提供しています https://aws.Amazon.com/articles/6884321864843201

これは、何が関係しているのかを理解するための簡単なスニペットです。

$ Sudo vim /etc/squid/squid.conf

acl s3 dstdom_regex .*s3\.amazonaws\.com
acl s3 dstdom_regex .*s3\.ap-southeast-2\.amazonaws\.com
acl s3 dstdom_regex .*s3\.ap-southeast-1\.amazonaws\.com
http_access allow localnet s3

$ Sudo service squid restart
1
Drew Khoury

フィルタリングはAWSレベルで行う必要がありますか?インスタンスに(またはIGWとインスタンス間の別のインスタンスとして)追加のソフトウェアファイアウォールを追加できます。Pfsenseはホスト名に基づいてファイアウォールのブロックを許可する必要があります。

1
47cloud