我只是从一个旧的Ubuntu 10.4 VPS迁移到一个shiny的新的Ubuntu 14.04。
经过一番工作,我除了用筛子做的东西之外,还得到了一切。
这个问题是关于通过exim传递给dovecot的筛选消息
预期的行为:Exim获取邮件垃圾邮件 – 检查它,并通过/ var / run / dovecot / deliver将其交付给dovecot … Dovecot然后对该邮件应用sieve过滤规则,sieves将邮件存储到相应的文件夹中通过过滤脚本。
实际行为:Exim将邮件发送给dovecot ….筛选器应用于邮件
Sep 25 18:41:57 myHostxxx dovecot: lda(timmeey): Debug: sieve: Pigeonhole version 0.4.2 initializing Sep 25 18:41:57 myHostxxx dovecot: lda(timmeey): Debug: sieve: include: sieve_global_dir is not set; it is currently not possible to include `:global' scripts. Sep 25 18:41:57 myHostxxx dovecot: lda(timmeey): Debug: sieve: using the following location for user's Sieve script: /var/mail/timmeey/sieve/.dovecot.sieve;name=main script Sep 25 18:41:57 myHostxxx dovecot: lda(timmeey): Debug: sieve: loading script /var/mail/timmeey/sieve/.dovecot.sieve;name=main script Sep 25 18:41:57 myHostxxx dovecot: lda(timmeey): Debug: sieve: script binary /var/mail/timmeey/sieve/.dovecot.svbin successfully loaded Sep 25 18:41:57 myHostxxx dovecot: lda(timmeey): Debug: sieve: binary save: not saving binary /var/mail/timmeey/sieve/.dovecot.svbin, because it is already stored Sep 25 18:41:57 myHostxxx dovecot: lda(timmeey): Debug: sieve: executing script from /var/mail/timmeey/sieve/.dovecot.svbin Sep 25 18:41:57 myHostxxx dovecot: lda(timmeey): sieve: msgid=<[email protected]>: stored mail into mailbox 'INBOX'
但最终它似乎忽略了我的规则,只是将邮件存储到收件箱中。 但有时它会应用一个filter,并将消息存储到适当的文件夹中。 但直到现在,我还没有find一个确定性的规则,什么时候工作,什么时候没有。
通常我会想,也许我的规则被打破了。 但是,当我用筛检测filter
sieve-test /var/mail/timmeey/sieve/.dovecot.sieve ./mail1 -D sieve-test(timmeey): Debug: Effective uid=1000, gid=1000, home=/home/timmeey sieve-test(timmeey): Debug: sieve: Pigeonhole version 0.4.2 initializing sieve-test(timmeey): Debug: sieve: include: sieve_global_dir is not set; it is currently not possible to include `:global' scripts. debug: script binary /var/mail/timmeey/sieve/.dovecot.svbin successfully loaded. debug: binary save: not saving binary /var/mail/timmeey/sieve/.dovecot.svbin, because it is already stored. sieve-test(timmeey): Debug: none: root=, index=, indexpvt=, control=, inbox=, alt= Performed actions: * store message in folder: pool/wichtig Implicit keep: (none) sieve-test(timmeey): Info: final result: success
testing说一切都好。 (我从雷鸟的邮件来源复制到文本文件“mail1”
这里是一个例子,当它工作
Sep 25 18:24:41 myHostxxx dovecot: lda(timmeey): Debug: sieve: Pigeonhole version 0.4.2 initializing Sep 25 18:24:41 myHostxxx dovecot: lda(timmeey): Debug: sieve: include: sieve_global_dir is not set; it is currently not possible to include `:gl obal' scripts. Sep 25 18:24:41 h2339537 dovecot: lda(timmeey): Debug: sieve: using the following location for user's Sieve script: /var/mail/timmeey/sieve/.dov ecot.sieve;name=main script Sep 25 18:24:41 myHostxxx dovecot: lda(timmeey): Debug: sieve: loading script /var/mail/timmeey/sieve/.dovecot.sieve;name=main script Sep 25 18:24:41 myHostxxx dovecot: lda(timmeey): Debug: sieve: script binary /var/mail/timmeey/sieve/.dovecot.svbin successfully loaded Sep 25 18:24:41 myHostxxx dovecot: lda(timmeey): Debug: sieve: binary save: not saving binary /var/mail/timmeey/sieve/.dovecot.svbin, because it is already stored Sep 25 18:24:41 myHostxxx dovecot: lda(timmeey): Debug: sieve: executing script from /var/mail/timmeey/sieve/.dovecot.svbin Sep 25 18:24:41 myHostxxx dovecot: lda(timmeey): sieve: msgid=<[email protected]>: stored mail into mailbox 'listen/owncloud-user'
Dovecot 2.2.9 Ubuntu 14.04
我真的没有想法在这里…在我的旧VPS一切工作正常。 我什至重新启动服务器…
提前致谢。
编辑:这将得到相当详细,对不起。
这里首先是filter应该触发的标题。 (我删除了邮件中的所有其他噪音,显然删除了一些个人信息,因为我已经得到足够的垃圾邮件:-P但是这不应该影响filter
不工作邮件
所以当我运行testing筛时,第一个邮件会触发filter。 它会将其存储到“pool / wichtig”
Return-path: <[email protected]> Envelope-to: [email protected] Delivery-date: Sat, 27 Sep 2014 01:46:12 +0200 [...] > $ sieve-test /var/mail/timmeey/sieve/.dovecot.sieve ./poolMail -D -t -Tlevel=tests sieve-test(timmeey): Debug: Effective uid=1000, gid=1000, home=/home/timmeey sieve-test(timmeey): Debug: sieve: Pigeonhole version 0.4.2 initializing sieve-test(timmeey): Debug: sieve: include: sieve_global_dir is not set; it is currently not possible to include `:global' scripts. debug: script binary /var/mail/timmeey/sieve/.dovecot.svbin successfully loaded. debug: binary save: not saving binary /var/mail/timmeey/sieve/.dovecot.svbin, because it is already stored. sieve-test(timmeey): Debug: none: root=, index=, indexpvt=, control=, inbox=, alt= Performed actions: * store message in folder: pool/wichtig Implicit keep: (none) sieve-test(timmeey): Info: final result: success
在这里我们有从我实际收到邮件时的login输出。 没有任何理由触发。 (filter设置正确
lrwxrwxrwx 1 timmeey timmeey 21 Sep 27 01:45 .dovecot.sieve -> serverFaultTest.sieve
)
Sep 27 01:46:12 h6666666 dovecot: lda: Debug: Loading modules from directory: /usr/lib/dovecot/modules Sep 27 01:46:12 h6666666 dovecot: lda: Debug: Module loaded: /usr/lib/dovecot/modules/lib90_sieve_plugin.so Sep 27 01:46:12 h6666666 dovecot: lda(timmeey): Debug: Effective uid=1000, gid=1000, home=/home/timmeey Sep 27 01:46:12 h6666666 dovecot: lda(timmeey): Debug: mbox: INBOX defaulted to /var/mail/timmeey/timmeey/inbox Sep 27 01:46:12 h6666666 dovecot: lda(timmeey): Debug: fs: root=/var/mail/timmeey/timmeey, index=, indexpvt=, control=, inbox=/var/mail/timmeey/timmeey/inbox, alt= Sep 27 01:46:12 h6666666 dovecot: lda(timmeey): Debug: userdb lookup skipped, username taken from USER environment Sep 27 01:46:12 h6666666 dovecot: lda(timmeey): Debug: none: root=, index=, indexpvt=, control=, inbox=, alt= Sep 27 01:46:12 h6666666 dovecot: lda(timmeey): Debug: Destination address: [email protected] (source: user@hostname) Sep 27 01:46:12 h6666666 dovecot: lda(timmeey): Debug: sieve: Pigeonhole version 0.4.2 initializing Sep 27 01:46:12 h6666666 dovecot: lda(timmeey): Debug: sieve: include: sieve_global_dir is not set; it is currently not possible to include `:global' scripts. Sep 27 01:46:12 h6666666 dovecot: lda(timmeey): Debug: sieve: using the following location for user's Sieve script: /var/mail/timmeey/sieve/.dovecot.sieve;name=main script Sep 27 01:46:12 h6666666 dovecot: lda(timmeey): Debug: sieve: loading script /var/mail/timmeey/sieve/.dovecot.sieve;name=main script Sep 27 01:46:12 h6666666 dovecot: lda(timmeey): Debug: sieve: script binary /var/mail/timmeey/sieve/.dovecot.svbin is not up-to-date Sep 27 01:46:12 h6666666 dovecot: lda(timmeey): Debug: sieve: script `main script' from /var/mail/timmeey/sieve/.dovecot.sieve;name=main script successfully compiled Sep 27 01:46:12 h6666666 dovecot: lda(timmeey): Debug: sieve: executing script from /var/mail/timmeey/sieve/.dovecot.sieve;name=main script Sep 27 01:46:12 h6666666 dovecot: lda(timmeey): sieve: msgid=<[email protected]>: stored mail into mailbox 'INBOX'
这个工作的邮件
在这里,我们有一个facebook邮件工作,并在testing时触发filter,当我收到实际的邮件
Return-path: <xxx@xxx> Envelope-to: [email protected] Delivery-date: Fri, 26 Sep 2014 20:52:30 +0200 Received: from facebook.com (ugG7XsRqKzRYl9dQStMUIo10vkuNI1jSm7GtZghIpww+XBdr3TIkc02H/roiAJF9 10.158.104.67) by facebook.com with Thrift id 3bd81b8845ae11e483660002c9550d78-92fed3e0; Fri, 26 Sep 2014 11:52:15 -0700 X-Facebook: from 10.88.41.65 ([MTI3LjAuMC4x]) by async.facebook.com with HTTP (ZuckMail); Date: Fri, 26 Sep 2014 11:52:15 -0700 To: Kurdistan Charity Minigolf-Turnier im Bunker <xxx@xxx> From: "XXXX XXXXX" <[email protected]> Reply-to: Reply to comment <g+40tymmuw000zg3h03tug003o44m2mbkn000000gpc3xb2qd46@groups.facebook.com> > $ sieve-test /var/mail/timmeey/sieve/.dovecot.sieve ./facebookMail -D -t -Tlevel=tests sieve-test(timmeey): Debug: Effective uid=1000, gid=1000, home=/home/timmeey sieve-test(timmeey): Debug: sieve: Pigeonhole version 0.4.2 initializing sieve-test(timmeey): Debug: sieve: include: sieve_global_dir is not set; it is currently not possible to include `:global' scripts. debug: script binary /var/mail/timmeey/sieve/.dovecot.svbin successfully loaded. debug: binary save: not saving binary /var/mail/timmeey/sieve/.dovecot.svbin, because it is already stored. sieve-test(timmeey): Debug: none: root=, index=, indexpvt=, control=, inbox=, alt= Performed actions: * store message in folder: facebook Implicit keep: (none) sieve-test(timmeey): Info: final result: success
看到? 这个邮件在TESTING时触发
Sep 26 20:52:30 h6666666 dovecot: lda(timmeey): Debug: sieve: Pigeonhole version 0.4.2 initializing Sep 26 20:52:30 h6666666 dovecot: lda(timmeey): Debug: sieve: include: sieve_global_dir is not set; it is currently not possible to include `:global' scripts. Sep 26 20:52:30 h6666666 dovecot: lda(timmeey): Debug: sieve: using the following location for user's Sieve script: /var/mail/timmeey/sieve/.dovecot.sieve;name=main script Sep 26 20:52:30 h6666666 dovecot: lda(timmeey): Debug: sieve: loading script /var/mail/timmeey/sieve/.dovecot.sieve;name=main script Sep 26 20:52:30 h6666666 dovecot: lda(timmeey): Debug: sieve: script binary /var/mail/timmeey/sieve/.dovecot.svbin successfully loaded Sep 26 20:52:30 h6666666 dovecot: lda(timmeey): Debug: sieve: binary save: not saving binary /var/mail/timmeey/sieve/.dovecot.svbin, because it is already stored Sep 26 20:52:30 h6666666 dovecot: lda(timmeey): Debug: sieve: executing script from /var/mail/timmeey/sieve/.dovecot.svbin Sep 26 20:52:30 h6666666 dovecot: lda(timmeey): sieve: msgid=<[email protected]>: stored mail into mailbox 'facebook'
并在接收到实际邮件时触发(存储到“脸书”
在这里我们有testingfilter
require ["fileinto","envelope"]; if address :domain :contains ["From"] "facebookmail.com" { fileinto "facebook"; } if envelope :contains ["To"] "[email protected]" { fileinto "pool/wichtig"; stop; }
编辑2:我想我在这里find一个规则。 当我检查地址时
address :contains ["To"] "[email protected]"
它在testing和实际邮件时工作。
但是testing一些信封条件
envelope :contains ["To"] "[email protected]"
它只是在筛选testing而不是实际的邮件。
我不知道为什么。 这仍然没有解决,但我可能会find一种方法来build立这个。 有人使用信封contetn过滤? 它刚刚坏了吗?
我见过同样的事情 我正在使用envelope :contains "To"和它使用筛检测,但没有生活匹配。 如果我改变它的address :contains "To"如你所build议的,它现在也活着。 这看起来像一个筛子的错误。