メールサーバ(postfix)- 接続許可・拒否 - ドメイン正規表現


 クラウディア


1. 概要
2. 定義
3. 設定
4. 参考サイト

1. 概要

 前ページで、「.cn」を全部拒否してしまおうと目論んでいましたが、トップレベルドメインが使えないのとわかりまして。  途方に暮れようとしていたら、「ChatGPT」くんが、良い提案をしてくれました。  正規表現を使う方法があるようです。

2. 定義

 定義ファイルを作成します。

vi /usr/local/etc/postfix/sender_access.pcre
 国別ドメインで、「cn」をすべて拒否する場合は。

/.*\.cn$/   REJECT
 これで「.cn」ドメインすべてにマッチしたものを拒否(ワイルドカードでいえば、「*.cn」に相当しますな)することになります。  これは、ハッシュの必要がありません。

3. 設定


vi /usr/local/etc/postfix/main.cf
 「smtpd_client_restrictions」の記述の後あたりに、下記を記述します。

smtpd_sender_restrictions =
    check_sender_access pcre:/usr/local/etc/postfix/sender_access.pcre,
    check_sender_access hash:/usr/local/etc/postfix/sender_access,
    reject_unknown_sender_domain
 文法チェックして、再起動。

postfix check

service postfix reload

4. 参考サイト

 本ページは、「ChatGPT」くんを参考にさせていただきました。