我想做的是设置一个像something@myhost.com这样的地址,它将接收它收到的任何电子邮件,并将整个消息作为STDIN运行到一个shell脚本中。不过,我似乎没办法做到这一点。尝试了几种解决方案,包括这个:
但我的设置有点不同。我已经安装了Postfix/ Dovecot /MySQL,所以所有的电子邮件都由Dovecot处理,Postfix从MySQL读取它的地图。我添加到master.cf中的任何内容似乎都不起作用。SpamAssassin有一条线在里面,它运行得很好。我被卡住了!
编辑:我真的希望大家在否决我的问题之前仔细阅读。我使用MySQL作为别名映射,所以/etc/别名不起作用,当然我已经尝试过了。
发布于 2013-05-12 03:20:24
很明显,道格拉斯·兰德的回答是可行的,只需一点补充。
假设您只有localhost.localdomain在$mydestination in main.cf。
然后添加一个虚拟别名:
something@myhost.com -> somelocaluser@localhost.localdomain在main.cf中,您需要:
alias_maps=hash:/etc/aliases然后添加/etc/别名:
somelocaluser: "|/your/script/here"newaliases+postfix重新加载,你就可以走了。
发布于 2013-05-11 05:35:04
您可以通过/etc/aliases,RE将条目输送到脚本:
foo: "|/your/script/here"修改/etc/aliases,然后运行newaliases并重新加载后缀进程。
发布于 2013-05-11 20:52:29
我会检查筛子是否支持管道到脚本。Dovecot支持筛分脚本。
作为替代,您可以在后缀dovecot之间使用"procmail“作为MDA。Procmail可以传送到脚本。
(话虽如此,我不知道道格拉斯·兰德的答案为什么行不通,mysql作为后端不应该有什么不同吗?)
https://serverfault.com/questions/506894
复制相似问题