博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
搭建 Postfix、Dovecot 邮件服务
阅读量:7117 次
发布时间:2019-06-28

本文共 3263 字,大约阅读时间需要 10 分钟。

hot3.png

配置一个功能完善的邮件服务器并不是一项容易的工作,本实验只是搭建了一个简单的邮件服务器,一些更为强大的功能还需要你去探索。

Postfix、Dovecot 简介
Postfix
Postfix 是一个标准的 MTA「Mail Transfer Agent」服务器,它负责通过 SMTP 协议管理发送到本机的邮件以及由本机发向外界的邮件。
Dovecot
Dovecot 是一个优秀的 IMAP/POP 服务器用以接收外界发送到本机的邮件。

Postfix、Dovecot 安装

在 CentOS 7 上,我们可以直接使用 yum 进行下载安装:

yum -y install postfix dovecot

配置 Postfix

有关教程中配置参数的具体含义,请参照

在终端中输入以下命令以修改 Postfix 相关配置,请记得将 yourdomain.com 替换为你自己的域名:

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 使用 sasl 和 tls 来完成身份认证和传输信息加密。

试验中使用了 Dovecot 默认的 ssl 证书和私钥,如果你需要修改为自己的,请替换最后两行配置的路径。

配置 smtps

部分邮件客户端依赖于使用 465 端口提供加密连接,所以我们修改配置,允许 Postfix 使用 465 端口发送邮件。
打开 /etc/postfix/master.cf 文件,将如下两行前的 # 去除:

smtps inet n - n - - smtpd-o smtpd_tls_wrappermode=yes

然后 ctrl + s 保存文件

启动

systemctl enable postfix.servicesystemctl start  postfix.service

Postfix 日志

Postfix 系统的日志文件在系统的这个目录下的 /var/log/maillog 文件,此文件记录了 Postfix 服务器的运行状态信息。

配置 Dovecot

修改 dovecot.conf

打开 /etc/dovecot/dovecot.conf 文件,在最下方加入以下配置:

ssl_cert = 

如果前面你修改为了自己的 ssl 证书和私钥,请替换开始两行配置的路径。

然后 ctrl + s 保存文件。
修改 10-master.conf

打开 /etc/dovecot/conf.d/10-master.conf 文件,在最下方加入以下配置:

找到 service auth 部分,将以下行前面的 # 去除:

unix_listener /var/spool/postfix/private/auth {         mode = 0666  }

然后 ctrl + s 保存文件。

启动 Dovecot

使用以下命令,将 Dovecot 设为自动启动并首次启动该服务:

systemctl enable dovecot.servicesystemctl start  dovecot.service

查看 /var/log/maillog 文件,查看服务是否成功启动。

如成功启动,日志里应包含如下信息:

Jun 26 12:00:28 localhost postfix/postfix-script[28338]: starting the Postfix mail systemJun 26 12:00:29 localhost postfix/master[28340]: daemon started -- version 2.10.1, configuration /etc/postfixJun 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用户密码`

然后就可以使用邮件客户端通过该账户收发邮件了。

(该配置在某些邮件客户端下可能因为使用了通用证书而出现使用异常)

转载于:https://my.oschina.net/zhiqiangwang/blog/1217463

你可能感兴趣的文章
Android 开发知识小集
查看>>
函数调用堆栈 涉及汇编(转)
查看>>
《程序员代码面试指南》第一章 栈和队列 由两个栈组成的队列
查看>>
20-python基础9-生成器
查看>>
比遇见什么样的人更重要的,是先成为什么样的人
查看>>
windows下安装python科学计算环境,numpy scipy scikit ,matplotlib等
查看>>
WPF QuickStart系列之线程模型(Thread Model)
查看>>
LoadRunner ---协议分析
查看>>
远程shell脚本执行工具类
查看>>
ffmpeg 压缩音频遇到mac下播放时长不对的问题
查看>>
React创建组件的三种方式比较和入门实例
查看>>
IO流 合并流
查看>>
Win7 如何阻止程序联网
查看>>
Java岗 面试考点精讲(网络篇03期)
查看>>
PBOC规范研究之五、安全相关的PKI基础知识(转)
查看>>
day-11 进程
查看>>
vue中自定义指令的使用
查看>>
python generator用法
查看>>
[leetcode-191-Number of 1 Bits]
查看>>
Uva12230Crossing Rivers 数学
查看>>