SendmailのデフォルトのGreetPauseを数10秒に設定して、日本に割り当てられたIPアドレスをaccessファイルで1秒程度に設定します。
デフォルトを1秒程度に設定して、日本以外に割り当てられたIPアドレスをaccessファイルで数10秒に設定しようとすると、accessファイルに記述するIPアドレスが膨大になってしまいます。
日本に割り当てられたIPアドレスに対しても、稀にSMTPのプロトコル違反で最初のメッセージを待たずにコマンドを送信してくるホストもあるので、0秒にせずに1秒程度を設定します。
SendmailのデフォルトのGreetPauseは、sendmail.mcで遅延時間をミリ秒単位で設定します。
例えば、30秒の遅延時間にするには、以下のように設定します。
FEATURE(`greet_pause', `30000')
accessファイルは、設定の変更の頻度や設定の種類によって、いくつかのファイルに分割しておき、それらを統合して最終的なaccessファイルを生成するようにすると管理しやすくなります。
どのような分割でも自由ですが、意図したとおりの順番でファイルを統合できるように、ファイル名の途中を番号にしておきます。
ファイル名 | 想定変更頻度 | 設定内容 |
---|---|---|
access-00-localnet.txt | 低 | 自ドメインの中継許可 |
access-40-reject.txt | 中 | 接続拒否のホストやIPアドレス |
access-80-greetpause-JP-IPv4.txt | 低 | 日本に割り当てられたIPv4アドレス |
access-80-greetpause-JP-IPv6.txt | 低 | 日本に割り当てられたIPv6アドレス |
access-81-greetpause-1sec.txt | 低 | 日本以外でもGreetPauseを日本と同様の設定にするドメインやIPアドレス |
分割したaccessファイル ( access-*.txt ) は、以下のように統合してaccessファイルを生成し、makemapコマンドでaccess.dbを生成します。
cat access-*.txt > access makemap hash access.db < access
ループバック・アドレスや自ネットワークの受信許可です。
設定しておいたほうが良い受信拒否リストです。
受信拒否、中継拒否のリストは、必要に応じてそれぞれのサイトでメインテナンスして下さい。
access-40-reject.txt
日本に割り当てられたIPv4アドレスに対してGreetPauseを1秒にするファイルは、約4万3千行あります。(2022年6月)
access-80-greetpause-JP-IPv4.txt
Sendmailのaccessファイルは、CIDRで設定できないため、バイト境界(クラスA、クラスB、クラスC)での設定になります。
IPv4のアドレス枯渇といっても、若干の新規割り当てやアドレス移転により、日本への割り当ては変わりますので、1年に1回程度は、地域インターネット・レジストリの情報より更新することが望まれます。
日本に割り当てられたIPv6アドレスに対してGreetPauseを1秒にするファイルは、約225万行あります(2022年11月)。
ファイル・サイズが大きいためZIP圧縮してあります。ダウンロード後、解凍してご利用下さい。
access-80-greetpause-JP-IPv6.zip
Sendmailのaccessファイルは、プリフィックス長を指定できないため、16ビット境界(IPv6表記のコロンの区切り)での設定になります。
地域インターネット・レジストリ ( RIR ) から日本への割り当てが千行以下でも、プリフィックス長が16、32、48、64以外は、16ビット境界で指定するために展開・増幅するため200万行以上になります。
日本への割り当ては変わりますので、1年に1回程度は、地域インターネット・レジストリの情報より更新することが望まれます。
日本以外でもGreetPauseを日本と同様に1秒にする設定にするドメインやIPアドレスを設定します。
必要に応じてそれぞれのサイトでメインテナンスして下さい。
access-81-greetpause-1sec.txt
2022/11/29 | IPv6のGreetPauseのファイルを追加 |
2020/12/30 | 公開。 |