答案1
以下是安装步骤帖子数来自 Timo Röhling。这些说明似乎适用于许多 Unix 版本,包括 Ubuntu 14.04。
# Debian/Ubuntu preparations:
sudo apt-get install cmake sysv-rc-conf
# download and compile the software:
cd ~
wget https://github.com/roehling/postsrsd/archive/master.zip
unzip master
cd postsrsd-master/
make
sudo make install
# or alternatively install binary from later Ubuntu repositories
sudo apt-get install postsrsd
# Add postfix configuration parameters for postsrsd:
sudo postconf -e "sender_canonical_maps = tcp:127.0.0.1:10001"
sudo postconf -e "sender_canonical_classes = envelope_sender"
sudo postconf -e "recipient_canonical_maps = tcp:127.0.0.1:10002"
sudo postconf -e "recipient_canonical_classes = envelope_recipient"
# Add SRS daemon to startup (Red Hat 6/CentOS):
sudo chkconfig postsrsd on
# Add SRS daemon to startup (Debian/Ubuntu):
sudo sysv-rc-conf postsrsd on
# Start SRS daemon:
sudo service postsrsd restart
#Reload postfix:
sudo service postfix reload
答案2
这里有一篇 2012 年的教程,介绍如何在 Debian 上使用 Postfix 设置 SRS:http://blog.phusion.nl/2012/09/10/mail-in-2012-from-an-admins-perspective/
这是 2013 年的 Ubuntu 教程:http://www.ameir.net/blog/archives/71-installing-srs-extensions-on-postfix-ubuntudebian.html
答案3
以下是一些想法,需要进行一些定制才能满足您的确切需求。我发现的第一件事是 Postfix 似乎不喜欢对别名地址(即virtual_alias_domain
/ virtual_alias_maps
)做任何事情。但这没关系,因为实际上只要最终一切都能正确交付,这些地址叫什么并不重要。
因此,在 Postfix 的中main.cf
添加以下几行:
virtual_mailbox_domains = example.org
# Feel free to give munger a better name, just update master.cf appropriately
virtual_transport = munger:
接下来,你需要告诉 Postfixmunger
实际的含义。添加以下内容(参见管道(8)以获得更多选项)。因此将以下内容添加到master.cf
:
munger unix - n n - - pipe
flags= user=nobody argv=/usr/bin/redirector
根据上述内容,任何目的地example.org
都会被发送到/usr/bin/redirector
程序(或任何你想叫它的名字)。对于大多数正常的事情,你需要一些命令行参数来获取发送者/接收者的信息(同样,pipe(8)
有更多详细信息),但由于发送者和目标地址是固定的,因此命令行上不需要任何其他东西。
现在你只需要编写程序redirector
。这对我有用:
#!/bin/sh
/usr/sbin/sendmail -bm -f 'something@myserver' '[email protected]'
它是一个常规的 shell 脚本(或您选择的语言),因此您可以根据需要使其简单或复杂。
答案4
您最好忘记整个 spf 事情并改用 dkim。