Quantcast

[postfix-jp: 4372] メールが重複して配送される

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
7 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[postfix-jp: 4372] メールが重複して配送される

HMUP
 こんにちは。山田と申します。

 意図しない重複したメールの配送に悩んでいます。
 「[postfix-jp: 2573] メールが重複して配送されてしまう」という過去ログを見てみましたが、状況が違うようです。
 Postfixの仕様として正常な動きかどうかもよくわかりません。
 ご存知の方がいらっしゃれば、教えていただけると幸甚です。

 バーチャルメールボックス環境下で利用しています。
 例えば、hoge@hoge.net宛のメールをhoge@hoge.netのメールボックスに保存しつつ、fuga@hoge.netに転送したいとします。
 エイリアスの設定は、以下のようにしています。

 [hidden email] : [hidden email], [hidden email]

 このような設定下でhoge@hoge.netに1通のメールを送信すると、hoge@hoge.netのメールボックスに1通のメールが保存されます。
 しかし、fuga@hoge.netのメールボックスには同じ内容のメールが2通保存されます。
 この動作は、Postfixの正常なメール配送なのでしょうか。

 もちろん、私の意図している動作は、hoge@hoge.netとfuga@hoge.netのメールボックスのそれぞれに同じメールが1通ずつ配送されるというものです。

 procmailを用いた重複メールの削除についても検討してみたのですが、バーチャルメールボックス環境下で、かつdovecotと両立させる方法が見当たらなかったので、断念しています。

 その他のサーバの構成は以下の通りです。
 ・OS:CentOS Linux 7.2.1511
 ・httpd 2.4.6 (Apache2.4.6)
 ・PHP 5.4.16
 ・MariaDB 5.5.47
 ・Postfix 2.10.1
 ・Postfix Admin 2.93
 ・Dovecot 2.2.10
 ・amavisd-new 2.10.1
 ・spamassassin 3.4.0
 ・clamav 0.99.1

 Postfixの主な設定は以下の通りです。
#main.cf
myhostname = hogehoge.fugafuga.net
mydomain = fugafuga.net
myorigin = $myhostname
inet_interfaces = all
inet_protocols = ipv4
mydestination = $myhostname, localhost
mynetworks = 127.0.0.0/8
home_mailbox = Maildir/
smtpd_banner = $myhostname ESMTP Unknown
disable_vrfy_command = yes
smtpd_client_restrictions =
     check_client_access hash:/etc/postfix/access
     reject_non_fqdn_sender
     reject_unknown_sender_domain
smtpd_sender_restrictions =
         reject_unknown_sender_domain
smtpd_sasl_auth_enable = yes
smtpd_sasl_local_domain = $myhostname
smtpd_sasl_security_options = noanonymous
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
broken_sasl_auth_clients = yes
smtpd_recipient_restrictions =
     permit_mynetworks
     permit_sasl_authenticated
     reject_unauth_destination
     check_policy_service unix:private/policy-spf
local_transport = local
virtual_transport = dovecot
dovecot_destination_recipient_limit = 1
virtual_mailbox_base = /home/vmail
virtual_alias_maps = mysql:/etc/postfix/mysql_virtual_alias_maps.cf
virtual_alias_domains = $virtual_alias_maps
virtual_mailbox_domains =
mysql:/etc/postfix/mysql_virtual_domains_maps.cf
virtual_mailbox_maps = mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf
virtual_uid_maps = static:10000
virtual_gid_maps = static:10000
virtual_minimum_uid = 10000
content_filter=smtp-amavis:[127.0.0.1]:10024

#master.cf
smtp      inet  n       -       n       -       -       smtpd
submission inet n       -       n       -       -       smtpd
   -o smtpd_tls_security_level=encrypt
   -o smtpd_sasl_auth_enable=yes
   -o smtpd_client_restrictions=permit_sasl_authenticated,reject
smtps     inet  n       -       n       -       -       smtpd
   -o smtpd_tls_wrappermode=yes
   -o smtpd_sasl_auth_enable=yes
   -o smtpd_client_restrictions=permit_sasl_authenticated,reject
smtp-amavis unix  -      -       n       -       2       smtp
      -o smtp_data_done_timeout=1200
      -o smtp_send_xforward_command=yes
      -o disable_dns_lookups=yes
127.0.0.1:10025 inet n   -       n       -       -       smtpd
      -o content_filter=
      -o local_recipient_maps=
      -o relay_recipient_maps=
      -o smtpd_restriction_classes=
      -o smtpd_client_restrictions=
      -o smtpd_helo_restrictions=
      -o smtpd_sender_restrictions=
      -o smtpd_recipient_restrictions=permit_mynetworks,reject
      -o mynetworks=127.0.0.0/8
      -o strict_rfc821_envelopes=yes
      -o smtpd_error_sleep_time=0
      -o smtpd_soft_error_limit=1001
      -o smtpd_hard_error_limit=1000
dovecot  unix    -       n       n       -       -       pipe
      flags=DRhu user=vmail:vmail argv=/usr/libexec/dovecot/deliver -f
${sender} -d ${recipient}
policy-spf unix -       n       n       -       0       spawn
   user=nobody argv=/usr/bin/python /usr/libexec/postfix/policyd-spf
/etc/python-policyd-spf/policyd-spf.conf

 長くなりましたが、お返事をお待ちしております。

_______________________________________________
Postfix-jp-list mailing list
[hidden email]
http://lists.osdn.me/mailman/listinfo/postfix-jp-list
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[postfix-jp: 4373] Re: メールが重複して配送される

Nakane Ryuji
>  意図しない重複したメールの配送に悩んでいます。

>  バーチャルメールボックス環境下で利用しています。
>  例えば、hoge@hoge.net宛のメールをhoge@hoge.netのメールボックスに保存しつつ、fuga@hoge.netに転送したいとします。
>  エイリアスの設定は、以下のようにしています。
>
>  [hidden email] : [hidden email], [hidden email]

エイリアスはどこに設定していますか?
/etc/aliases ?  それとも /etc/postfix/mysql_virtual_alias_maps.cf で参照するデータベース?


それから、/etc/postfix/mysql_virtual_alias_maps.cf と /etc/postfix/mysql_virtual_domains_maps.cf、/etc/postfix/mysql_virtual_mailbox_maps.cf の内容は?

postconf -q [hidden email] mysql:/etc/postfix/mysql_virtual_alias_maps.cf と postconf -q [hidden email] mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf の実行結果は?


憶測では、postconf -q [hidden email] /etc/postfix/mysql_virtual_alias_maps.cf で [hidden email], [hidden email], [hidden email] のように出力されている気がします。

____
Nakane Ryuji  living at Nagoya
// mailto:[hidden email]
// http://www.compnet.jp/

_______________________________________________
Postfix-jp-list mailing list
[hidden email]
http://lists.osdn.me/mailman/listinfo/postfix-jp-list
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[postfix-jp: 4374] Re: メールが重複して配送される

HMUP
 こんにちは。山田です。
 お返事ありがとうございます。


> エイリアスはどこに設定していますか?

 エイリアスの設定は、参照されるデータベース内で行っています。

#/etc/postfix/mysql_virtual_alias_maps.cf
user = postfix
password = ********
hosts = localhost
dbname = postfix
table = alias
select_field = goto
where_field = address

#/etc/postfix/mysql_virtual_domains_maps.cf
user = postfix
password = ********
hosts = localhost
dbname = postfix
table = domain
select_field = domain
where_field = domain
additional_conditions = and active = '1'

#/etc/postfix/mysql_virtual_mailbox_maps.cf
user = postfix
password = ********
hosts = localhost
dbname = postfix
table = mailbox
select_field = maildir
where_field = username

#/etc/postfix/mysql_virtual_mailbox_limit_maps.cf
user = postfix
password = ********
hosts = localhost
dbname = postfix
query = SELECT quota FROM mailbox WHERE username='%s' AND active = '1'

  また、webminでPostfixの設定を確認すると、「仮想ドメイン」の項目で
 [hidden email] : [hidden email], [hidden email]
 と表示されているので、データベースの参照も正しく行えているように見えます。

> postconf -q [hidden email]

  申し訳ありません。-q オプションが使えませんでした。

 お返事お待ちしております。

_______________________________________________
Postfix-jp-list mailing list
[hidden email]
http://lists.osdn.me/mailman/listinfo/postfix-jp-list
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[postfix-jp: 4375] Re: メールが重複して配送される

Nakane Ryuji
#いつの間にか返信がDMになっていたのでMLに投げ返してます。

postmap の結果からは正しく設定されているように見えます。
main.cf も怪しそうな箇所は見当たりません。

postfix が [hidden email] を受信してからメールボックスに配送するまでの間のログには、何か手がかりがないでしょうか。

____
Nakane Ryuji  living at Nagoya
// mailto:[hidden email]
// http://www.compnet.jp/



----- Original Message -----
Subject: Re: メールが重複して配送され る
Date: Thu, 02 Jun 2016 13:30:11 +0900
From:<[hidden email]>
To:<[hidden email]>

>  こんにちは。山田です。
>  お返事ありがとうございます。
>
>> postmap -q [hidden email] mysql:/etc/postfix/mysql_virtual_alias_maps.cf
>  を実行したところ、
> [hidden email],[hidden email]
>  と返ってきました。
>
>> postmap -q [hidden email] mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf
>  を実行したところ、
> hoge.net/hoge/
>  と返ってきました。
>
>> postmap -q [hidden email] mysql:/etc/postfix/mysql_virtual_alias_maps.cf
>  を実行したところ、
> [hidden email]
>  と返ってきました。
>
>> postmap -q [hidden email] mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf
>  を実行したところ、
> hoge.net/fuga/
>  と返ってきました。
>
>  以上の通り、返り値としては正常でした。
>
> 2016-06-02 12:42 に Nakane Ryuji さんは書きました:
>>>> postconf -q [hidden email]
>>>
>>>  申し訳ありません。-q オプションが使えませんでした。
>>
>> 申し訳ない。postconf → postmap の書き間違いでした。
>>
>> postmap -q [hidden email] mysql:/etc/postfix/mysql_virtual_alias_maps.cf
>> postmap -q [hidden email] mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf
>>
>> ____
>> Nakane Ryuji  living at Nagoya
>> // mailto:[hidden email]
>> // http://www.compnet.jp/

_______________________________________________
Postfix-jp-list mailing list
[hidden email]
http://lists.osdn.me/mailman/listinfo/postfix-jp-list
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[postfix-jp: 4376] Re: メールが重複して配送される

IWAMOTO Kouichi
In reply to this post by HMUP
岩本といいます。

On Wed, 01 Jun 2016 21:31:38 +0900
HMUP <[hidden email]> wrote:

>  エイリアスの設定は、以下のようにしています。
>
>  [hidden email] : [hidden email], [hidden email]
>
>  このような設定下でhoge@hoge.netに1通のメールを送信すると、hoge@hoge.netのメールボックスに1通のメールが保存されます。
>  しかし、fuga@hoge.netのメールボックスには同じ内容のメールが2通保存されます。

content_filter の前後両方の smtpd で virtual_alias_maps が適用されているように
見えます。

> 127.0.0.1:10025 inet n   -       n       -       -       smtpd
>       -o content_filter=
>       -o local_recipient_maps=
>       -o relay_recipient_maps=
>       -o smtpd_restriction_classes=
>       -o smtpd_client_restrictions=
>       -o smtpd_helo_restrictions=
>       -o smtpd_sender_restrictions=
>       -o smtpd_recipient_restrictions=permit_mynetworks,reject
>       -o mynetworks=127.0.0.0/8
>       -o strict_rfc821_envelopes=yes
>       -o smtpd_error_sleep_time=0
>       -o smtpd_soft_error_limit=1001
>       -o smtpd_hard_error_limit=1000

これに -o virtual_alias_maps= を追加してみてください。

--
いわもと こういち([hidden email]/[hidden email]/[hidden email])
# なるようになれ、明日もイケイケ♪

_______________________________________________
Postfix-jp-list mailing list
[hidden email]
http://lists.osdn.me/mailman/listinfo/postfix-jp-list
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[postfix-jp: 4377] Re: メールが重複して配送される

IWAMOTO Kouichi
岩本です。

すみません、訂正です。

On Thu, 2 Jun 2016 14:22:14 +0900
IWAMOTO Kouichi <[hidden email]> wrote:

> > 127.0.0.1:10025 inet n   -       n       -       -       smtpd
> >       -o content_filter=
> >       -o local_recipient_maps=
> >       -o relay_recipient_maps=
> >       -o smtpd_restriction_classes=
> >       -o smtpd_client_restrictions=
> >       -o smtpd_helo_restrictions=
> >       -o smtpd_sender_restrictions=
> >       -o smtpd_recipient_restrictions=permit_mynetworks,reject
> >       -o mynetworks=127.0.0.0/8
> >       -o strict_rfc821_envelopes=yes
> >       -o smtpd_error_sleep_time=0
> >       -o smtpd_soft_error_limit=1001
> >       -o smtpd_hard_error_limit=1000
>
> これに -o virtual_alias_maps= を追加してみてください。

virtual_alias_maps は cleanup が評価するので smtpd に渡してもダメですね。
-o receive_override_options=no_address_mappings を追加してみて下さい。

もしくは、content_filter の前段の

> smtp      inet  n       -       n       -       -       smtpd

こちらの smtpd に -o receive_override_options=no_address_mappings を
渡す方がいいかもしれません。

--
いわもと こういち([hidden email]/[hidden email]/[hidden email])
# なるようになれ、明日もイケイケ♪

_______________________________________________
Postfix-jp-list mailing list
[hidden email]
http://lists.osdn.me/mailman/listinfo/postfix-jp-list
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[postfix-jp: 4378] Re: メールが重複して配送される

HMUP
 こんにちは。山田です。
 お返事ありがとうございます。

試行その1
smtp      inet  n       -       n       -       -       smtpd
 に -o receive_override_options=no_address_mappings を追加してみました。
 重複してメール配送されました。

試行その2
smtp      inet  n       -       n       -       -       smtpd
submission inet n       -       n       -       -       smtpd
smtps     inet  n       -       n       -       -       smtpd
 のそれぞれに、 -o receive_override_options=no_address_mappings を追加してみました。
 重複したメール配送が行われなくなりました。

試行その3
smtp      inet  n       -       n       -       -       smtpd
submission inet n       -       n       -       -       smtpd
smtps     inet  n       -       n       -       -       smtpd
127.0.0.1:10025 inet n   -       n       -       -       smtpd
 のそれぞれに、 -o receive_override_options=no_address_mappings を追加してみました。
 エイリアス宛([hidden email])への転送が行われなくなりました。

試行その4
127.0.0.1:10025 inet n   -       n       -       -       smtpd
 に -o receive_override_options=no_address_mappings を追加してみました。
 重複したメール配送が行われなくなりました。

 サーバの負荷を考えると、試行その2の方が優れているかも知れませんが、試行その4の方が設定を変えたときの影響をコントロールしやすそうなので、試行その4にて運用することにしました。

 お返事をくださったナカネさま、岩本さま、またメールを見て解決策をいっしょに考えてくださった方々、メーリングリストの運営者さま、本当にありがとうございました。
 一週間悩んでいましたが、みなさまのご支援を受けて解決することができました。

_______________________________________________
Postfix-jp-list mailing list
[hidden email]
http://lists.osdn.me/mailman/listinfo/postfix-jp-list
Loading...