質問: permit_sasl_authenticated,reject_unauth_destination ご指摘頂けたらと思います。
回答: この回答では「内部」をあなたの会社の社内lan、「外部」をそれ以外(あなたの組織の外部)という意味で使い、社内メールサーバマシン内外という意味では使わない。また、「受信」という言葉はメールサーバーがsmtpクライアントからのメールを拒否せずに受け取る(受け取った後どうするかは別として)事を意味する。 smtpd_recipient_restrictions = permit_sasl_authenticated,reject_unauth_destination これは次の行と同義になる。 smtpd_recipient_restrictions = permit_sasl_authenticated,reject_unauth_destination,permit すなわち、内部→内部は、 1.permit_sasl_authenticated→sasl認証していないのでマッチしない。 2.reject_unauth_destination→送信先が自ホストなのでマッチしない。 3.permit→えにしんぐおーけーえぶりばでぃかもーん。マッチ。受信ok。 という動きになっていてサーバが受け取ってしまうわけナリよ。 残念ながらこれ(※)を1つのsmtpdで行う事はできない。外部→内部と内部→内部で許可しなきゃいけない内容が違う(具体的には、よその組織から送られてきたメールにはsmtp_authを強要する事ができない)ためで、別のsmtpdをmaster.cfで指定して起動すれば良いだろう。ひょっとしたらできるのかも知れないけど。 ※:これ 外部→外部:smtp_authの場合どこあてでも受信する。それ以外は全て拒否。 外部→内部:自ドメインあてのメールのみ受信する。それ以外は全て拒否。 内部→外部:smtp_authの場合どこあてでも受信する。それ以外は全て拒否。 内部→内部:smtp_authの場合自ドメインあてのメールのみ受信する。それ以外は全て拒否。