CentOS 7 部署SMTP服务
设置域名
mail.webstudy.cool用A记录解析到邮件服务器IP(后面的各个客户端配置的域名都写这个A记录的),再把webstudy.cool用MX记录解析到mail.webstudy.cool(这个是当遇到***@webstudy.cool时会解析到mail.webstudy.cool)。
 测试端口telnet命令也要用mail.webstudy.cool,不能用mx记录的webstudy.cool(用这个会解析到A记录解析的webstudy.cool)。


安装postfix
安装命令
yum install postfix
 
配置
文件位置: /etc/postfix/main.cf
vim /etc/postfix/main.cf
 修改内容:
#取消注释,设置hostname
myhostname = mail.webstudy.cool 
#取消注释,设置域名 
mydomain = webstudy.cool   
#99行: 取消注释 
myorigin = $mydomain  
#116行: 默认是localhost,我们需要修改成all
inet_interfaces = all  
#119行: 推荐ipv4,如果支持ipv6,则可以为all 
inet_protocols = ipv4     
#164行: 添加
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain 
#取消注释,指定内网和本地的IP地址范围 
mynetworks = 127.0.0.0/8   #也可以使用0.0.0.0/0使用所有ip及端口号
#取消注释,邮件保存目录
home_mailbox = Maildir/   
#添加
smtpd_banner = $myhostname ESMTP 
#添加到最后 
#规定邮件最大尺寸为10M ,根据需求限制
message_size_limit = 10485760 
#规定收件箱最大容量为1G ,根据需求限制
mailbox_size_limit = 1073741824 
#SMTP认证 
smtpd_sasl_type = dovecot 
smtpd_sasl_path = private/auth 
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous 
smtpd_sasl_local_domain = $myhostname 
smtpd_recipient_restrictions = permit_mynetworks,permit_auth_destination,permit_sasl_authenticated,reject 
 
启动postfix服务
systemctl start postfix
systemctl enable postfix
 
安装配置dovect
编辑文件dovecot.conf
vim /etc/dovecot/dovecot.conf
 更改内容:
#26行: 如果不使用IPv6,请修改为* 
listen = *
#在主配置文件中的第48行,设置允许登录的网段地址,也就是说我们可以在这里限制只有来自于某个网段的用户才能使用电子邮件系统。如果想允许所有人都能使用,则不用修改本参数
login_trusted_networks = 192.168.10.0/24更改内容
 
编辑文件10-mail.conf
vim /etc/dovecot/conf.d/10-mail.conf
 更改内容:
# 30行: 取消注释并添加 mail_location = maildir:~/Maildir
 
编辑文件10-master.conf
vim /etc/dovecot/conf.d/10-master.conf
 更改内容:
# 88-90行: 取消注释并添加 # Postfix smtp验证 
unix_listener /var/spool/postfix/private/auth { 
    mode = 0666 
    user = postfix
    group = postfix
}
 
注意:如果我们没有使用ssl的话需要进行下面的操作。使用了则不需要。
编辑文件10-ssl.conf
vim /etc/dovecot/conf.d/10-ssl.conf
 更改内容:
# 8行: 将ssl的值修改为 ssl = no
 
启动dovecot服务
systemctl start dovecot
systemctl enable dovecot
 
配置cyrus-sasl
vim /etc/sasl2/smtpd.conf #如果是空文件,需要自己添加
pwcheck_method: saslauthd
mech_list: plain login
log_level:3
 
vim /etc/sysconfig/saslauthd #修改下面配置项(本地用户认证)
MECH=shadow
 
启动saslauthd
systemctl start saslauthd
systemctl enable saslauthd
 
添加用户
添加的用户名:smtpuser 密码:123456
useradd  smtpuser
echo  123456 | passwd --stdin smtpuser
 
用mailx测试
yum  install  mailx -y
 
使用mailx发送邮件
echo '测试邮件内容' | mail -s '测试主题!' qy***@foxmail.com
 
严禁搬运工。标明出处。










