搭建 Postfix、Dovecot 邮件服务

搭建 Postfix、Dovecot 邮件服务

准备域名

任务时间:15min ~ 20min

域名注册

如果您还没有域名,可以在腾讯云上选购,过程可以参考下面的视频。

  • 视频 - 在腾讯云上购买域名

域名解析

域名购买完成后, 需要将域名解析到实验云主机上,实验云主机的 IP 为:

<您的 CVM IP 地址>

在腾讯云购买的域名,可以到控制台添加解析记录,过程可参考下面的视频:

  • 视频 - 如何在腾讯云上解析域名

完成该实验共需要添加两条记录:

A 记录

记录类型:A

主机记录:@

记录值:<您的 CVM IP 地址>

MX 记录

记录类型:A

主机记录:@

记录值:yourdomain.com(替换为自己域名)

生效检查

域名设置解析后需要过一段时间才会生效,通过 ping 命令检查域名是否生效 [?],如:

ping yourdomain.com

如果 ping 命令返回的信息中含有你设置的解析的 IP 地址,说明解析成功。

(使用 ctrl + c 停止)

检查 MX 记录

替换下面命令中的 yourdomain.com 为您自己的注册的域名:

nslookup -q=mx yourdomain.com

如果 nslookup 命令返回的信息中含有你设置的域名的记录值,说明解析成功。

注意替换下面命令中的 yourdomain.com 为您自己的注册的域名

实验之前

任务时间:5min

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

Postfix、Dovecot 简介

Postfix

Postfix 是一个标准的 MTA「Mail Transfer Agent」服务器,它负责通过 SMTP 协议管理发送到本机的邮件以及由本机发向外界的邮件。

Dovecot

Dovecot 是一个优秀的 IMAP/POP 服务器用以接收外界发送到本机的邮件。

Postfix、Dovecot 安装

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

yum -y install postfix dovecot

Postfix

任务时间:5min ~ 10min

配置 Postfix

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

配置

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

  1. postconf -e ‘myhostname = server.yourdomain.com‘

  2.  

    postconf -e ‘mydestination = localhost, localhost.localdomain‘

  3.  

    postconf -e ‘myorigin = $mydomain‘

  4.  

    postconf -e ‘mynetworks = 127.0.0.0/8‘

  5.  

    postconf -e ‘inet_interfaces = all‘

  6.  

    postconf -e ‘inet_protocols = all‘

  7.  

    postconf -e ‘mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain‘

  8.  

    postconf -e ‘home_mailbox = Maildir/‘

  9.  

    postconf -e ‘smtpd_sasl_type = dovecot‘

  10.  

    postconf -e ‘smtpd_sasl_path = private/auth‘

  11.  

    postconf -e ‘smtpd_sasl_auth_enable = yes‘

  12.  

    postconf -e ‘broken_sasl_auth_clients = yes‘

  13.  

    postconf -e ‘smtpd_sasl_authenticated_header = yes‘

  14.  

    postconf -e ‘smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination‘

  15.  

    postconf -e ‘smtpd_use_tls = yes‘

  16.  

    postconf -e ‘smtpd_tls_cert_file = /etc/pki/dovecot/certs/dovecot.pem‘

  17.  

    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 文件,将如下两行前的 # 去除:

  1. smtps inet n - n - - smtpd

  2.  

    -o smtpd_tls_wrappermode=yes

然后 ctrl + s 保存文件。

启动

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

  1. systemctl enable postfix.service

  2.  

    systemctl start postfix.service

Postfix 日志

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

Dovecot

任务时间:5min ~ 10min

配置 Dovecot

修改 dovecot.conf

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

示例代码:/etc/dovecot/dovecot.conf
  1. ssl_cert = </etc/pki/dovecot/certs/dovecot.pem

  2.  

    ssl_key = </etc/pki/dovecot/private/dovecot.pem

  3.  

  4.  

    protocols = imap pop3 lmtp

  5.  

    listen = *

  6.  

    mail_location = Maildir:~/Maildir

  7.  

    disable_plaintext_auth = no

  8.  

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

然后 ctrl + s 保存文件。

修改 10-master.conf

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

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

  1. unix_listener /var/spool/postfix/private/auth {

  2.  

    mode = 0666

  3.  

    }

然后 ctrl + s 保存文件。

启动 Dovecot

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

  1. systemctl enable dovecot.service

  2.  

    systemctl start dovecot.service

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

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

  1. Jun 26 12:00:28 localhost postfix/postfix-script[28338]: starting the Postfix mail system

  2.  

    Jun 26 12:00:29 localhost postfix/master[28340]: daemon started -- version 2.10.1, configuration /etc/postfix

  3.  

    Jun 26 12:28:40 localhost dovecot: master: Dovecot v2.2.10 starting up for imap, pop3, lmtp (core dumps disabled)

创建账户

任务时间:5min ~ 10min

该配置下邮箱账户依赖于系统用户,所以通过添加系统用户的方式创建邮箱账户。

添加用户

在终端中使用 useradd 命令添加用户:

useradd test

使用 passwd 命令设置对应用户密码:

passwd test

测试

任务时间:10min ~ 15min

如测试中遇到异常,请查看 maillog 日志文件中的错误信息。

服务器端发送测试

使用 su 命令切换用户:

su test

我们可以使用 mail 命令发送邮件,将 [email protected] 替换为你的其他邮箱。

echo "Mail Content" | mail -s "Mail Subject" xxxx@xxx.com

然后可以前往你的接收方邮箱查收。

邮件客户端

你可以将该邮箱账户添加至邮件客户端使用,推荐使用 Foxmail 客户端。

可以参考以下配置进行设置:

  1. 服务器类型:`POP3`

  2.  

    邮箱账户: `[email protected]`

  3.  

  4.  

    收件(POP3)服务器: `yourdomain.com`

  5.  

    端口: `995`

  6.  

    安全连接(SSL): `是`

  7.  

    用户名: `test`

  8.  

    密码: `test用户密码`

  9.  

  10.  

    发件(SMTP)服务器: `yourdomain.com`

  11.  

    端口: `465`

  12.  

    安全连接(SSL): `是`

  13.  

    用户名: `test`

  14.  

    密码: `test用户密码`

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

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

原文地址:https://www.cnblogs.com/backstreetboy/p/10337934.html

时间: 2024-10-05 06:15:56

搭建 Postfix、Dovecot 邮件服务的相关文章

RHEL6 postfix+dovecot 邮件服务配置

环境:RHEL6.6 软件:postfix-3.0.0  bind-9.8.2-0.30 mysql-5.5.42  dovecot-2.0.9-7 软件源:本地源,epel源,remi源 邮件服务器IP:192.168.1.110 主机名为mail.mingxiao.info 客户端   IP 192.168.1.77  WinXP,Outlook Express收发邮件 请确保selinux处于permissive状态,防火墙处于关闭状态. 添加几个测试用户,为了测试方便,密码和用户名相同

postfix之邮件服务基础知识

SMTP(Simple Mail Transfer Protocol)    smptd: TCP 25 服务端.    smtp: 客户端.随机端口,通常大于5000 SMTP状态码:        1xx 纯信息        2xx 正确        3xx 上一步操作尚未完成,待后续补充        4xx 暂时性错误        5xx 永久性错误 SMTP协议命令:        helo 以smtp协议向对方发送hello信息.        ehlo 以esmtp协议向对方

搭建Apache James邮件服务

什么是邮件服务器 邮件服务器是一种用来负责电子邮件收发管理的设备,而邮件服务就是责邮件的收信和发信功能,其最主要有pop和smtp两个协议.关于这两个协议,有着很多的知识点涵盖其中,这里不过多介绍.下面是我接触过的两个可以实现邮件服务的解决方案. 1.易邮邮件服务 在windows系统下,可以使用 易邮邮件服务 ,这个服务器简单而且实用,用在平时开发,测试或者局域网间的邮件收发还是挺方便的,不过我没有找到官方的,可以将易邮邮件服务安装在Linx的相关资料,因此不使用这个.这是易邮邮件服务的官方网

centos6上搭建postfix+dovecot+saslauthd邮件服务器

service sendmail stop chkconfig sendmail off groupadd -g 1200 postdrop groupadd -g 1000 postfix useradd -M -u 1000 -g postfix -G postdrop -s /sbin/nologin postfix usermod -g 51 -G 48 smmsp yum install db4-devel cyrus-sasl-devel pam pam-devel mysql-de

centos7.2下搭建postfix++dovecot+courier-authlib+extmail邮件收发系统

专业的事由专业的人去做,现在DNS,mail邮箱系统基本都是专业的公司去做了,越来越少公司自己搭建DNS,mail等系统服务 这次由于服务器要迁移,公司的邮箱系统一直都是用开源的postfix的,只能自己折腾 在此记录一下,搭建全过程使用root账号,中间有一些错误调试的,都给忽略了,这里只给出最的配置 在文章最后面会有一些错误调试的记录 不管遇到什么错误,首先打印日志来看! 不管遇到什么错误,首先打印日志来看! 不管遇到什么错误,首先打印日志来看! 在网上大概了解了一下整个邮箱系统的组成: #

Linux 邮件服务搭建

Linux 邮件服务搭建 邮件服务针对,在大型企业使用的比较多,一般小型企业都会买一些邮件服务,或者使用一些免费的邮件服务,达到我们使用的需求,并且不需要自己维护,下面我就来简单安装一下两个邮箱的案例,方便我们去理解. 邮件方案 1.免费方案,免费邮件企业邮箱 有限制- 最多50人等··· 2.付费企业邮箱 3.搭建的邮箱 邮件相关知识了解 发邮件协议:smtp 25端口 发邮件服务:postfix 服务 收邮件协议:pop pop3 110端口.imap 143端口 收邮件服务:dovecot

RHEL6.4 postfix+dovecot搭建邮件服务器

实验需求:为公司搭建一台能够收信和发信的邮件服务器(192.168.100.1),为员工提供服务,公司域名为jinjianjun.com. 一.修改DNS服务器(192.168.100.2)上mx邮件交换记录,确保客户机能解析邮件服务器地址 1.修改DNS区域文件 # vim /var/named/jinjianjun.com.zone $TTL 3H @       IN SOA  jinjianjun.com. root.jinjianjun.com. ( 2014042601; seria

简单邮件服务器postfix+dovecot搭建

Postfix 是一种电子邮件服务器,是 MTA(邮件传输代理)软件,Dovecot 是一个开源的 IMAP 和 POP3 邮件服务器,POP / IMAP 是 MUA 从邮件服务器中读取邮件时使用的协议. linux下postfix+Dovecot的搭建 安装前准备 系统默认安装sendmail,首先对其进行关闭或卸载,防止端口占用. 1 .关闭服务 service sendmail stop chkconfig  sendmail off 2.使用yum卸载 yum remove sendm

用Postfix + Dovecot 搭建的邮件服务器被垃圾邮件当中转服务器的处理

今天发邮件, 发送失败,然后到服务器上看日志, 发现硬盘被垃圾邮件的缓存队列和日志塞满了, tail    -f    /var/log/maillog   发现疯狂刷屏,部分日志如下 : Aug 17 09:39:01 www postfix/error[1173]: 455F050663: to=<[email protected]>, relay=none, delay=28778, delays=28631/146/0/0.51, dsn=4.4.2, status=deferred