質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Postfix

Postfixは、電子メールサーバソフトウェアで、 メールを配送するシステムMTAの一種です。

Q&A

解決済

2回答

6690閲覧

postfixで送信元サーバ・Fromドメインを制限したい

DOGinGOD

総合スコア1

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Postfix

Postfixは、電子メールサーバソフトウェアで、 メールを配送するシステムMTAの一種です。

0グッド

0クリップ

投稿2020/05/12 08:05

編集2020/05/13 04:42

前提・実現したいこと

CentOS Linux release 7.7
postfix mail_version = 2.10.1

postfixでメール中継サーバを作ろうとしており、
以下を実現しようと試みています。

  • 特定のサーバ(192.168.10.1)からは無条件でリレーするかつ

別の特定のサーバ(192.168.20.1)からは、Fromメールアドレスのドメインのみ許可する(@examplexx.jp)

発生している問題・エラーメッセージ

上記のようなメールリレー元の制限及びFromアドレスの制限ができない

試したこと

現在以下の設定を試しましたが、
1.特定のサーバ(IPアドレス)からは、無条件でリレーすることは以下の設定で可能になりました。

#main.cf ・・・ mynetworks = 192.168.10.1 smtpd_client_restrictions = permit_mynetworks,reject

2.また、Fromメールアドレスのドメインのみ許可する(@examplexx.jp)ことも以下の設定で可能になりました。

#main.cf ・・・ smtpd_sender_restrictions = check_sender_access hash:/etc/postfix/access,reject (accessには、@examplexx.jpを記載)

ただし、以下の様に単純に設定を組み合わせても最初に述べたような
特定のサーバからは無条件でリレーするかつ別の特定のサーバからは、Fromメールアドレスのドメインのみ許可する
という事が実現できておりません。

具体的には、以下の場合mynetworks記載のIPアドレスかつFromメールアドレスのドメインが@examplexx.jpという制限になってしまいます。

#main.cf ・・・ smtpd_client_restrictions = permit_mynetworks,reject smtpd_sender_restrictions = check_sender_access hash:/etc/postfix/access,reject

他にも、
smtpd_sender_restrictions = check_sender_access hash:/etc/postfix/access,reject
のみとし、accessファイルにIPアドレスとFromメールアドレスのドメインを記載し、動作を確認しましたが、こちらはFromメールアドレスのドメインが優先となり、特定のサーバ(IPアドレス)からは、無条件でリレーすることができませんでした。

このように、細かな設定が出来るのかも現時点では不明ですが
以上、よろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

scsi

2020/05/12 11:22

制限するというのは、そのドメインのみ拒否するということでしょうか、それともそのドメインのみ許可するということでしょうか
DOGinGOD

2020/05/12 11:49

条件が不足しており失礼しました。 ドメインのみを許可したいです。
guest

回答2

0

ベストアンサー

check_client_accesscheck_sender_access を組み合わせるといいと思います。
そのままでは多段にできないので、smtpd_restriction_classes で独自のアクセス制限を定義します。

postfix デフォルトでは smtpd_relay_restrictionspermit_mynetworks などのルールが既にあるので、そこに設定を追加するといいと思います。
(smtpd_client_restrictions, smtpd_sender_restrictions はデフォルトのまま)

sh

1(デフォルト値の確認) 2 3# postconf -d smtpd_relay_restrictions 4smtpd_relay_restrictions = permit_mynetworks, permit_sasl_authenticated, defer_unauth_destination 5 6# postconf -d parent_domain_matches_subdomains 7parent_domain_matches_subdomains = debug_peer_list,fast_flush_domains,mynetworks,permit_mx_backup_networks,qmqpd_authorized_clients,relay_domains,smtpd_access_maps
-------- /etc/postfix/main.cf -------- smtpd_relay_restrictions = permit_mynetworks, permit_sasl_authenticated, check_client_access hash:/etc/postfix/client_access, defer_unauth_destination smtpd_restriction_classes = only_mydomain_sender only_mydomain_sender = check_sender_access hash:/etc/postfix/sender_access, reject parent_domain_matches_subdomains = debug_peer_list,fast_flush_domains,mynetworks,permit_mx_backup_networks,qmqpd_authorized_clients,relay_domains -------- /etc/postfix/client_access -------- 192.168.20.1 only_mydomain_sender -------- /etc/postfix/sender_access -------- examplexx.jp OK

parent_domain_matches_subdomains から smtpd_access_maps を削除しているのは、From (envelope from) が User@foo.examplexx.jp など、サブドメインにマッチさせないためです。

投稿2020/05/13 13:33

TaichiYanagiya

総合スコア12146

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

DOGinGOD

2020/05/14 07:30 編集

smtpd_restriction_classesの利用でおっしゃる通り実現できました。 具体的には、記載して頂いた通りの設定で可能となりましたが mynetworksには無条件にリレーしたいサーバを client_accessにはFromドメインを固定したいサーバを記載することで可能となりました。 分かりやすく記載していただき、ありがとうございました。
guest

0

試してませんが、header_checksを使えば実現できそうな気がします。
http://www.postfix-jp.info/trans-2.2/jhtml/header_checks.5.html

投稿2020/05/12 11:36

scsi

総合スコア2840

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問