この記事の要点
- 送信回数の上限は、CAPTCHAなどが破られたときの最後の砦になる
- 「1時間あたり」と「1日あたり」の2段で決めると、急増と持続の両方に備えられる
- 上限値は、普段の最大件数を調べてから余裕を持って決める
- 上限に達したら通知し、原因を確認できるようにしておく

送信回数の上限(レート制限)とは、一定時間にフォームから送れるメールの数に上限を設け、それを超えた分を止める仕組みです。結論から言うと、悪用の被害は「大量に送られること」で拡大するため、上限を置けば、ほかの対策が破られても被害を小さくでき、送信元IPの信用も守りやすくなります。
なぜ送信回数に上限が必要なのですか?
悪用の被害は、送信の数に比例して大きくなるからです。
CAPTCHAやハニーポットは入口で機械を見分けますが、完全ではありません。すり抜けられた場合でも、1時間・1日あたりの送信数に天井があれば、数千通が出てしまう事態を避けられます。迷惑メールの発信元として扱われる前に、止められる可能性が高まります。
上限はどのくらいに設定すればよいですか?
決まった正解の数字はなく、そのサイトの普段の件数が出発点です。

- 過去の問い合わせ・予約の件数を調べ、1時間と1日の最大値を把握する
- 最大値に余裕を持たせて上限を決める(キャンペーン時の増加も想定する)
- 運用しながら、上限に近づく頻度を見て調整する
数字は例えば、1日に数件しか来ないサイトなら、上限もそれに見合った小さな値にできます。大きな値にしておくと、悪用されたときに止まるまで時間がかかります。
1時間と1日の2段にする理由
| 上限 | 防ぐもの | 設定の考え方 |
|---|---|---|
| 1時間あたり | 短時間の集中攻撃 | 普段の1時間の最大値に余裕を足す |
| 1日あたり | 少しずつ続く送信 | 普段の1日の最大値に余裕を足す |

何に対して上限をかけるのですか?
全体の送信数に加えて、送信元ごとの制限も併用すると効果的です。
- 全体: サーバーからフォーム経由で出るメールの総数
- IPアドレスごと: 同じ送信元からの連続送信
- 宛先アドレスごと: 同じアドレスへの自動返信の繰り返し
宛先ごとの制限は、特定の人に自動返信を何度も送りつける嫌がらせの防止になります。
上限に達したときはどうしますか?
止めるだけでなく、気づける状態にしておくことが重要です。
- 上限到達時に管理者へ通知を出す
- お客さまには「しばらくしてからお試しください」と案内する
- 通常の利用者の問い合わせを取りこぼさない手段(別の受付経路)を用意する
注意したいのは、上限を厳しくしすぎると、本物の問い合わせまで止めてしまう点です。上限は一度決めて終わりではなく、送信量の監視と合わせて見直す必要があります。
スタイルチューンができること
スタイルチューンは、フォーム悪用でスパムリストに載った事案の再発防止として、1時間あたり・1日あたりの送信数の上限を設定し、古いフォーム送信の拒否や送信量の監視と組み合わせてきました。サイトごとの普段の件数に合わせた設定と、上限到達時の通知の仕組みづくりまで対応します。
送信数の上限設定をご検討の方は、お問い合わせフォームからご相談ください。
