系统安装
安装CentOS 7
修改hostname
hostname smtp.skywalker.com
修改/etc/hosts文件
安装postfix
首先移除centos默认的MTA,即sendmail
yum remove sendmail
安装postfix
yum install postfix
修改postfix的配置
# 1. 修改myhostnamemyhostname = smtp.skywalker.com# 2. 修改域名,即邮箱地址`@`后面的部分mydomain= skywalker.com# 3. 去除myorigin的注释myorigin = $mydomain# 4. 将inet_interfaces设置为allinet_interfaces = all# 5. 修改mydestinationmydestination = $myhostname, localhost.$mydomain, localhost# 6. 允许转发的域名relay_domains = $mydestination# 7. 修改mynetworksmynetworks = 192.168.1.0/28, 127.0.0.0/8# 8. 修改home_mailboxhome_mailbox = Maildir/# 9. 修改smtpd_banner, 不显示SMTP服务器的相关信息smtpd_banner = $myhostname ESMTP unknow# 10. 使用SMTP认证smtpd_sasl_auth_enable = yes# 11. 指定SMTP认证的本地域名(主机名)smtpd_sasl_local_domain = $myhostname# 12. 不允许匿名的方式认证smtpd_sasl_security_options = noanonymous# 13. 接收者的规则smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination# 14. 添加邮件最大尺寸15MBmessage_size_limit = 15728640
配置SMTP认证的相关选项
修改smtpd.conf
vim /etc/sasl2/smtpd.conf
# 1. 将pwcheck_method的值从saslauthd改为auxproppwcheck_method: auxprop
修改saslauthd
vim /etc/sysconfig/saslauthd
# 1. MECHMECH=pam# 2. 修改FLAGSFLAGS=sasldb
添加用户邮箱目录
mkdir ~/Maildir chmod 700 ~/Maildir
为用户设置SMTP认证密码
saslpasswd2 -u smtp.skywalker.com -c skywalker Password: Again (for verification):
修改SASL的属性以及归属
chgrp postfix /etc/sasldb2 chmod 640 /etc/sasldb2
修改默认的mta
显示当前使用的mta
alternatives —display mta
如果显示结果为/usr/sbin/sendmail.postfix,则不需要修改
如果不是则使用下面的命令进行修改
alternatives —set mta /usr/sbin/sendmail.postfix
再次查看mta进行确认
alternatives —display mta
启动SMTP认证以及Postfix服务,并且设置为自启动
systemctl start saslauthd systemctl enable saslauthd
systemctl start postfix systemctl enable postfix
目前,基本的已经完成了,但是只能通过该服务器发送邮件。作为完整的邮件服务器,还需具备从客户端通过POP/IMAP协议接收邮件到本地的功能。
安装Dovecot
yum install -y dovecot
修改dovecot配置文件
vim /etc/dovecot.conf
# 1. 修改protocalsprotocols = imap pop3
开启防火墙的端口
由于POP3协议与IMAP4协议分别需要用到110号和143号端口,所以在启动服务之前,需要配置防火墙,开通这两个端口。
vim /etc/sysconfig/iptables
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 25 -j ACCEPT ← 找到此行,接着添加如下两行:-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 110 -j ACCEPT ← 允许POP使用的110号端口-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 143 -j ACCEPT ← 允许IMAP使用的143号端口
启动Dovecot,并且设置为自启动
systemctl start dovecot systemctl enable dovecot
