设置Postfix以将邮件中继到CentOS 6上的外部SMTP服务器

时间:2020-03-21 11:47:09  来源:igfitidea点击:

Postfix是一个免费的开源邮件传输代理(MTA),可以路由和传递电子邮件。

安装Postfix

安装Postfix:

# yum install -y postfix cyrus-sasl-plain

如果已安装Sendmail,请清除它:

# yum erase -y sendmail*

打开“ /etc/postfix/main.cf”进行编辑并配置以下内容:

smtpd_banner = $myhostname ESMTP
inet_interfaces = all
inet_protocols = ipv4
relayhost = [mail.example.com]:587
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
smtp_tls_CApath = /etc/ssl/certs
smtp_use_tls = yes
mynetworks = 127.0.0.0/8, 10.8.8.0/24
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
queue_directory = /var/spool/postfix
command_directory = /usr/sbin
daemon_directory = /usr/libexec/postfix
data_directory = /var/lib/postfix
mail_owner = postfix
#mydestination = $myhostname, localhost.$mydomain, localhost
unknown_local_recipient_reject_code = 550
debug_peer_level = 2
sendmail_path = /usr/sbin/sendmail.postfix
newaliases_path = /usr/bin/newaliases.postfix
mailq_path = /usr/bin/mailq.postfix
setgid_group = postdrop
html_directory = no

创建“/etc/postfix/sasl_passwd”文件,并添加外部SMTP服务器的身份验证详细信息:

[mail.example.com]:587 Hyman@theitroad:passwd

禁止非root用户访问:

# chmod 0600 /etc/postfix/sasl_passwd

创建一个数据库文件:

# postmap /etc/postfix/sasl_passwd

重新启动Postfix服务:

# /etc/init.d/postfix restart

iptables将通过Puppet进行配置。
下面的行仅用于:

# iptables -A INPUT -s 10.0.0.0/8 -p tcp -m state --state NEW --dport 25 -j ACCEPT

故障排除

检查日志:

# tail /var/log/messages
# tail /var/log/maillog