postfix(仅用于发送邮件)多域名设置

postfix(仅用于发送邮件)多域名设置

我有以下问题,我有一个 Centos 5.4 VPS 托管几个 nginx 站点(一些静态,一些 cakephp),我希望能够通过 postfix 将电子邮件从每个站点的联系页面发送到我的 google 应用托管电子邮件(每个站点不同的帐户),以便应用程序可以向填写联系表单的人发送自动电子邮件等

我有一个简单的 Postfix 安装,并在 main.cf 配置文件中添加了以下内容。使用指导

virtual_alias_domains = hash:/etc/postfix/virtual_alias_domains
virtual_alias_maps = hash:/etc/postfix/virtual_alias_maps

(这两个文件都已使用 postmap 转换为 db 文件)

我已为每个站点正确配置了 DNS 并设置了 SPF 记录。(我知道 R-DNS 仍将引用我的实际主机名而不是域名,并可能导致垃圾邮件问题,但每次只能解决一件事)

我可以 telnet localhost 和 helo localhost,以便我可以从 virtual_alias_domains 中的地址发送命令行电子邮件到 virtual_alias_maps 文件中的电子邮件,该电子邮件似乎发送时没有给出错误,但它发送到我的本地 linux 帐户而不是指定的电子邮件地址。

我的问题是,就虚拟别名映射而言,我是否以错误的方式处理这个问题,或者我尝试的方式是否可行。任何帮助都将不胜感激,谢谢。

我的 postconf -n 前景看起来像这样

alias_database = hash:/etc/aliases
alias_maps = hash:/etc/aliases
command_directory = /usr/sbin
config_directory = /etc/postfix
daemon_directory = /usr/libexec/postfix
debug_peer_level = 2
html_directory = no
inet_interfaces = localhost
mail_owner = postfix
mailq_path = /usr/bin/mailq.postfix
manpage_directory = /usr/share/man
mydestination = $myhostname, localhost.$mydomain, localhost
myhostname = myactual hostname
mynetworks = 127.0.0.0/8
myorigin = $mydomain
newaliases_path = /usr/bin/newaliases.postfix
queue_directory = /var/spool/postfix
readme_directory = /usr/share/doc/postfix-2.3.3/README_FILES
sample_directory = /usr/share/doc/postfix-2.3.3/samples
sendmail_path = /usr/sbin/sendmail.postfix
setgid_group = postdrop
unknown_local_recipient_reject_code = 550
virtual_alias_domains = hash:/etc/postfix/virtual_alias_domains
virtual_alias_maps = hash:/etc/postfix/virtual_alias_maps

答案1

看起来我正在尝试以一种过于复杂的方式来做这件事。

本指南似乎有效, sudhanshuraheja.com

我所做的就是声明我的实际主机名,并根据指南的建议将我的目的地更改为我准备出发,我可以指定发件人地址,一切顺利............

答案2

virtual_alias_maps/domains 仅用于接收电子邮件。如果您打算将 Postfix 安装仅用于发送邮件,则根本不需要 Postfix 的虚拟主机。只需确保您没有将 Postfix 配置为接受本地投递到域的邮件,而这些邮件必须发送到世界其他地方。

编辑: 不,我说的是mydestination,来自 main.cf 中的评论:

# The mydestination parameter specifies the list of domains that this
# machine considers itself the final destination for.
#
# These domains are routed to the delivery agent specified with the
# local_transport parameter setting. By default, that is the UNIX
# compatible delivery agent that lookups all recipients in /etc/passwd
# and /etc/aliases or their equivalent.

因此,您不希望任何要发送电子邮件的域在您的 中列出mydestination。如果列出,则电子邮件将在本地投递。

inet_interfaces仅用于接收。当您的配置正常工作时,您可以尝试不监听任何公共接口,以使您的安装更安全。我不确定禁用所有公共接口的此功能会产生什么副作用。

相关内容