postfix邮件服务器

yum provides postfix
yum -y install postfix-2.10.1-7.el7.x86_64

 postfix -version
 rpm -qa | grep postfix

t echo "mail.wangwentao.top" > /etc/hostname
  hostname mail.wangwentao.top

 hostname
 nslookup -q=mx wangwentao.top
 yum -y install nslookup
yum provides nslookup
 nslookup -q=mx wangwentao.top
 yum -y install postfix dovecot

postconf -e 'myhostname = server.yourdomain.com'
postconf -e 'mydestination = localhost, localhost.localdomain'
postconf -e 'myorigin = $mydomain'
postconf -e 'mynetworks = 127.0.0.0/8'
postconf -e 'inet_interfaces = all'
postconf -e 'inet_protocols = all'
postconf -e 'mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain'
postconf -e 'home_mailbox = Maildir/'
postconf -e 'smtpd_sasl_type = dovecot'
postconf -e 'smtpd_sasl_path = private/auth'
postconf -e 'smtpd_sasl_auth_enable = yes'
postconf -e 'broken_sasl_auth_clients = yes'
postconf -e 'smtpd_sasl_authenticated_header = yes'
postconf -e 'smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination'
postconf -e 'smtpd_use_tls = yes'
postconf -e 'smtpd_tls_cert_file = /etc/pki/dovecot/certs/dovecot.pem'
postconf -e 'smtpd_tls_key_file = /etc/pki/dovecot/private/dovecot.pem'

配置中 Postfix 使用 sasltls 来完成身份认证和传输信息加密。
试验中使用了 Dovecot 默认的 ssl 证书和私钥,如果你需要修改为自己的,请替换最后两行配置的路径。

配置 smtps

部分邮件客户端依赖于使用 465 端口提供加密连接,所以我们修改配置,允许 Postfix 使用 465 端口发送邮件。
打开 /etc/postfix/master.cf 文件,将如下两行前的 # 去除
smtps inet n - n - - smtpd
-o smtpd_tls_wrappermode=yes
(注意: -o 前要保留空格
然后 ctrl + s 保存文件。

启动

使用以下命令,将 Postfix 设为自动启动并首次启动该服务
systemctl enable postfix.service
systemctl start  postfix.service
Postfix 日志
Postfix 系统的日志文件在系统的这个目录下的 /var/log/maillog 文件,此文件记录了 Postfix 服务器的运行状态信息
配置 Dovecot

修改 dovecot.conf

打开 /etc/dovecot/dovecot.conf 文件,在最下方加入以下配置:ssl_cert = </etc/pki/dovecot/certs/dovecot.pem
ssl_key = </etc/pki/dovecot/private/dovecot.pem

protocols = imap pop3 lmtp
listen = *
mail_location = Maildir:~/Maildir
disable_plaintext_auth = no
如果前面你修改为了自己的 ssl 证书和私钥,请替换开始两行配置的路径。
然后 ctrl + s 保存文件。

修改 10-master.conf

打开 /etc/dovecot/conf.d/10-master.conf 文件,找到 service auth 部分,将以下行前面的 # 去除:
unix_listener /var/spool/postfix/private/auth {  
       mode = 0666  
}
使用以下命令,将 Dovecot 设为自动启动并首次启动该服务:
systemctl enable dovecot.service
systemctl start  dovecot.service
查看 /var/log/maillog 文件,查看服务是否成功启动。
如成功启动,日志里应包含如下信息:
Jun 26 12:00:28 localhost postfix/postfix-script[28338]: starting the Postfix mail system
Jun 26 12:00:29 localhost postfix/master[28340]: daemon started -- version 2.10.1, configuration /etc/postfix
Jun 26 12:28:40 localhost dovecot: master: Dovecot v2.2.10 starting up for imap, pop3, lmtp (core dumps disabled)

创建账户

该配置下邮箱账户依赖于系统用户,所以通过添加系统用户的方式创建邮箱账户。
  • 添加用户
    在终端中使用 useradd 命令添加用户:
    useradd test
    使用 passwd 命令设置对应用户密码:passwd test

    测试

    如测试中遇到异常,请查看 maillog 日志文件中的错误信息。
    • 服务器端发送测试
      使用 su 命令切换用户:su test
      我们可以使用 mail 命令发送邮件,将 xxxx@xxx.com 替换为你的其他邮箱。
      echo "Mail Content" | mail -s "Mail Subject" xxxx@xxx.com
      邮件客户端
      你可以将该邮箱账户添加至邮件客户端使用,推荐使用 Foxmail 客户端。
      可以参考以下配置进行设置:
      服务器类型:`POP3`
      邮箱账户:  `test@yourdomain.com`

      收件(POP3)服务器:  `yourdomain.com`
      端口:              `995`
      安全连接(SSL):     `是`
      用户名:            `test`
      密码:              `test用户密码`

      发件(SMTP)服务器:  `yourdomain.com`
      端口:              `465`
      安全连接(SSL):     `是`
      用户名:            `test`
      密码:              `test用户密码`
      然后就可以使用邮件客户端通过该账户收发邮件了。
      (该配置在某些邮件客户端下可能因为使用了通用证书而出现使用异常)
       

       

       

       

       

       

       

       

       

       

       

posted @ 2019-09-23 21:34  冬青护城河  阅读(500)  评论(0)    收藏  举报