web-dev-qa-db-ja.com

Amazon EC2がポート25を制限するのはなぜですか?

ここ .。

Amazon EC2は、ポート25を介して送信されるEメールにデフォルトの送信制限を課し、それらの制限を超えようとすると、アウトバウンド接続を抑制します。これらの制限を削除するには、電子メール送信制限の削除リクエストを送信してください。ポート465またはポート587を介してAmazonSESに接続することもできますが、どちらも調整されていません。

ポート465と587を調整しないのはなぜですか?なぜ誰もが25の​​代わりにこれらのポートを使用してスロットルの問題を完全に回避しないのですか?

10
Ian Warburton

SESの送信制限を明確にするには、制限には2つのタイプがあることを理解する必要があります:最大送信レートクォータの送信

これらの制限とは別に、ポート25の送信レートはデフォルトでスロットル-ですが、そのスロットルは削除できます。

最大送信速度

AmazonSESがアカウントから1秒間に受け入れることができるEメールの最大数。

クォータの送信

24時間以内に送信できるメールの最大数。すべての新しいSESアカウントはサンドボックスにセットアップされ、24時間あたり200通の電子メールのデフォルトの送信クォータがあります。ニーズと実際の使用パターンに基づいて、この制限の引き上げをリクエストできます。

質問に直接答えるには:

ポート465と587を調整しないのはなぜですか?

ポート25は一般的な送信ポートであるため、デフォルトのレート制限が適用されます。これにより、このポートで大量のスパムが送信されます。これを防ぐために、AWSEC2はデフォルトでポート25を抑制します。ポート465と587はあまり知られておらず、スパムの悪用の影響を受けにくいです。

なぜ誰もが25の​​代わりにこれらのポートを使用してスロットルの問題を完全に回避しないのですか?

彼らのソフトウェアがそれらのポートの使用を許可するかどうか、彼らはできる/すべきである。一部のレガシーアプリケーションはポート25しか使用できません。そのような場合は、スロットルの削除を要求できます。

SES送信制限に関する要約:

  • ポートTCP/465およびTCP/587は調整されません
  • ポート25はデフォルトで調整されていますが、要求に応じて削除できます。
  • SESアカウントの1日あたりの送信クォータの制限が常に適用されます
  • SESアカウントの1秒あたりの最大送信レート制限が常に適用されます
2
Rodrigo M

これはスパム対策です。

この制限がなければ、新しいAmazonアカウントを作成し、EC2マシンを起動して、何もする前に数百万のスパムメッセージを送信することができます。接続を調整することにより、新しいユーザーアカウントがそのシナリオを利用できなくなります。

465/587は認証されたポートであり、特にメールの一括送信用に設計され、スパマーによる使用を検出するように調整されたAmazon Simple Email Service(SES)について言及しています。

SES情報を追加するために編集

SESに最初にサインアップすると、サンドボックスに配置されます。これにより、アカウントに次の制限が課せられます。

  • メールはAmazonSESメールボックスシミュレーターと確認済みのメールアドレスとドメインにのみ送信できます
  • 確認済みのメールアドレスとドメインからのみメールを送信できます。
  • 24時間あたり最大200件のメッセージを送信できます。
  • Amazon SESは、アカウントから1秒あたり最大1つのメッセージを受け入れることができます。

これは基本的に、明示的に確認したアカウントとの間でのみ送信できるため、本番シナリオでSESを使用する場合を意味します。送信制限の引き上げをリクエストする必要があります。これは、コンソールから、またはサポートチケットを発行することによって実行できます。

その後、新しい送信制限が適用され、1日あたりの割り当てが発生します。たとえば、私の開発アカウントでは、1日あたり50,000の割り当てと、1秒あたり14の送信制限があります。

(ポートに関係なく)SMTPを介して1秒あたり14を超えるメッセージを送信しようとすると、このSMTPエラーメッセージが表示されます454 Throttling failure: Maximum sending rate exceeded 50,000を超えるメッセージを送信しようとすると、454 Throttling failure: Daily message quota exceeded

スロットルがどのように機能するかを理解するには、発生しているプロセスについて考える必要があります。

(任意のポートで)SMTP経由でSESに接続すると、認証情報を渡すと、AWSはアカウントの制限を確認し、制限に対するカウントを開始します。その時点で、あなたは認証されたエンドポイントを経由する認証されたユーザーです(SES経由で匿名で送信することはできません-SESで電子メールを受信できますが、メッセージサイズを除いて、受信電子メールの制限は適用されません)そのコンテキストでは、スロットリングを確認できます特定のポートはまったく無意味です。

ポート25でデフォルトのスロットルを使用する唯一のAWSサービスはEC2です。

[〜#〜] only [〜#〜] SESがメッセージをスロットルする時間は、許可された制限を超えたときです。

これらの制限を削除することはできません。増やすことしかできません(かなり異常な数に増やすことはできますが)

SESの使用に熱心に取り組み、ブロック/バウンスメッセージの処理に熱心に取り組んでいる場合、これらの制限は時間の経過とともに大きくなります。

要約すると、.

  • SES しないスロットルポート25、ポート465、またはポート587。
  • SESはのみクォータに基づいてメッセージをレート制限します。
  • SESレート制限は、TCPポート番号に完全に独立して適用されます。
16
Michael B