Centos

在 CentOS 6 中使用 postfix 將郵件中繼到 First.Last@gmail.com

  • January 15, 2013

我正在使用:

# cat /etc/*release
CentOS release 6.3 (Final)

# rpm -qa | grep post
postfix-2.6.6-2.2.el6_1.x86_64

在 2 個伺服器上:preferans.de和(是的,有趣的名字)static.103.78.9.176.clients.your-server.de

我擁有多個域,並希望將地址這些域的所有傳入郵件轉發到我的 Gmail 地址。

所以我已經為我的域設置了 MX 記錄:

# host videoskat.de
videoskat.de has address 176.9.40.169
videoskat.de mail is handled by 100 static.103.78.9.176.clients.your-server.de.
videoskat.de mail is handled by 10 preferans.de.

# host balkan-preferans.de
balkan-preferans.de has address 176.9.40.169
balkan-preferans.de mail is handled by 100
static.103.78.9.176.clients.your-server.de.
balkan-preferans.de mail is handled by 10 preferans.de.

在我添加的兩台伺服器上:

# head /etc/postfix/virtual
@balkan-preferans.de First.Last@gmail.com
@videoskat.de First.Last@gmail.com

# postmap /etc/postfix/virtual

# postmap -q "@videoskat.de" /etc/postfix/virtual
First.Last@gmail.com

並在防火牆中打開了25埠:

# grep -w 25 /etc/sysconfig/iptables
-A INPUT -p tcp -m state --state NEW -m tcp -m multiport --dports 25,22 -j ACCEPT

但是現在當我向spam@videoskat.de發送郵件時,後綴日誌中沒有任何內容:

# sudo tail /var/log/maillog
Jan 15 10:50:42 postfix/postfix-script[1401]: starting the Postfix mail system
Jan 15 10:50:42 postfix/master[1402]: daemon started -- version 2.6.6,
configuration /etc/postfix

所以我可能錯過了一些小事?

順便說一句,我的 Gmail 收件箱First.Last@gmail.com的每日 logwatch 郵件都從兩台伺服器到達

更新 2:

我已將這兩行添加到/etc/postfix/main.cf

inet_interfaces = all
mydestination = $myhostname, localhost.$mydomain, localhost, videoskat.de, balkan-preferans.de

現在我在 中看到傳入連接/var/log/maillog,但它們被拒絕:

postfix/smtpd[3209]: NOQUEUE: reject: RCPT from static.114.69.9.176.clients.your-server.de[176.9.69.114]: 550 5.1.1 <test6@videoskat.de>: Recipient address rejected: User unknown in local recipient table; from=<afarber@preferans.de> to=<test6@videoskat.de> proto=ESMTP helo=<www>
postfix/smtpd[3209]: disconnect from static.114.69.9.176.clients.your-server.de[176.9.69.114]

輸出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
data_directory = /var/lib/postfix
debug_peer_level = 2
html_directory = no
inet_interfaces = all
inet_protocols = all
mail_owner = postfix
mailq_path = /usr/bin/mailq.postfix
manpage_directory = /usr/share/man
mydestination = $myhostname, localhost.$mydomain, localhost, videoskat.de, balkan-preferans.de
newaliases_path = /usr/bin/newaliases.postfix
queue_directory = /var/spool/postfix
readme_directory = /usr/share/doc/postfix-2.6.6/README_FILES
sample_directory = /usr/share/doc/postfix-2.6.6/samples
sendmail_path = /usr/sbin/sendmail.postfix
setgid_group = postdrop
unknown_local_recipient_reject_code = 550

本地收件人表中的使用者未知在拒絕日誌消息中是什麼意思?

如果郵件日誌中沒有任何內容,則說明沒有郵件發送到您的伺服器。

您顯示的 MX 記錄意味著只要 preferans.de 正在回复郵件,就永遠不會使用第二個 MX。

請在postconf -n您的文章中包含輸出,以便我們知道您在說什麼。

本地收件人表中的使用者未知在拒絕日誌消息中是什麼意思?

如文件所述,預設情況下,postfix 拒絕未知本地收件人的郵件。您應該事先定義任何有效的收件人。

由於您的 main.cf 缺少virtual_alias_maps條目,因此未使用您的虛擬文件;將以下內容添加到 main.cf 並重新載入:

virtual_alias_maps = /etc/postfix/virtual

引用自:https://serverfault.com/questions/469233