Linux中搭建Postfix邮件服务器教程
Linux中搭建Postfix邮件服务器教程详细介绍
搭建背景:公司决定搭建邮件服务器,实现内部和外部交流的电子化,因为Linux系统稳定、安全性较好,该公司决定在Linux系统中搭建postfix邮件服务器,邮件服务器mail.pengqi.com能够实现一对一的邮件收发。
Postfix安装及启动
<
span
class
=
"prism-token prism-punctuation"
>[<
/span
>
root@pengqi ~
<
span
class
=
"prism-token prism-punctuation"
>]<
/span
><
span
class
=
"prism-token prism-comment"
spellcheck=
"true"
># rpm -qa | grep postfix</span><span class="prism-line-numbers-rows"><span></span></span>
红帽6.5系统中默认安装了postfix软件,可以使用以上命令查看是否安装包,如果没有安装,请使用以下命令进行安装即可;
<
span
class
=
"prism-token prism-punctuation"
>[<
/span
>
root@pengqi ~
<
span
class
=
"prism-token prism-punctuation"
>]<
/span
><
span
class
=
"prism-token prism-comment"
spellcheck=
"true"
># yum -y tall postfix</span><span class="prism-line-numbers-rows"><span></span></span>
启动、停止、重启服务:
<
span
class
=
"prism-token prism-punctuation"
>[<
/span
>
root@pengqi ~
<
span
class
=
"prism-token prism-punctuation"
>]<
/span
><
span
class
=
"prism-token prism-comment"
spellcheck=
"true"
># service postfix start</span><span class="prism-line-numbers-rows"><span></span></span>
<
span
class
=
"prism-token prism-punctuation"
>[<
/span
>
root@pengqi ~
<
span
class
=
"prism-token prism-punctuation"
>]<
/span
><
span
class
=
"prism-token prism-comment"
spellcheck=
"true"
># service postfix stop</span><span class="prism-line-numbers-rows"><span></span></span>
<
span
class
=
"prism-token prism-punctuation"
>[<
/span
>
root@pengqi ~
<
span
class
=
"prism-token prism-punctuation"
>]<
/span
><
span
class
=
"prism-token prism-comment"
spellcheck=
"true"
># service postfix restart</span><span class="prism-line-numbers-rows"><span></span></span>
设置开机自启动:
<
span
class
=
"prism-token prism-punctuation"
>[<
/span
>
root@pengqi ~
<
span
class
=
"prism-token prism-punctuation"
>]<
/span
><
span
class
=
"prism-token prism-comment"
spellcheck=
"true"
># chkconfig postfix on</span><span class="prism-line-numbers-rows"><span></span></span>
Postfix服务器配置步骤
在配置postfix服务器前应该先给服务器分配一个有效的ip地址,如192.168.15.137,并且在DNS服务器上把mail.pengqi.com解析到192.168.15.137,并添加邮件交换记录。
postfix的主配置文件是/etc/postfix/main.cf,如果对文件不做修改,则默认监听127.0.0.1的邮件收发,需要修改为如下内容:
myname=mail.pengqi.com 设置邮件服务器主机名
mydomain=pengqi.com 指定主机域名
myorigin=$mydomain 设置邮件所使用的主机名和域名
inet_interfaces=al l设置监听端口
inet_interfaces=192.168.15.137 postfix使用的ip
mydestination=$mydomain 设置可接受邮件的主机名和域名
mynetworks=192.168.18.0/24 设置可转发的邮件网络
relay_domain=pengqi.com 设置可转发的邮件域名
最后重启邮件服务才能使服务生效,最好是关闭防火墙和selinux进行测试。
Telnet测试
请安装Telnet和Telnet-server软件进行测试:
<
span
class
=
"prism-token prism-punctuation"
>[<
/span
>
root@pengqi ~
<
span
class
=
"prism-token prism-punctuation"
>]<
/span
><
span
class
=
"prism-token prism-comment"
spellcheck=
"true"
># telnet 192.168.15.137 25</span>
Trying
192.168
.
15
.
137
<
span
class
=
"prism-token prism-punctuation"
>
..
<
/span
>
.
Connected to
192.168
.
15
.
137
.
Escape character is
<
span
class
=
"prism-token prism-string"
>
'^]'
<
/span
><
span
class
=
"prism-token prism-keyword"
>
.
<
/span
>
220
mail.
pengqi
.
com
ESMTP Postfix
<
span
class
=
"prism-line-numbers-rows"
><
span
><
/span
><
span
><
/span
><
span
><
/span
><
span
><
/span
><
span
><
/span
><
/span
>
若出现以上信息则客户端可以正常使用邮件服务器。
IMAP和POP3服务器配置步骤
dovecot服务安装
<
span
class
=
"prism-token prism-punctuation"
>[<
/span
>
root@pengqi ~
<
span
class
=
"prism-token prism-punctuation"
>]<
/span
><
span
class
=
"prism-token prism-comment"
spellcheck=
"true"
># yum -y tall dovecot</span><span class="prism-line-numbers-rows"><span></span></span>
dovecot的基本配置
<
span
class
=
"prism-token prism-punctuation"
>[<
/span
>
root@pengqi ~
<
span
class
=
"prism-token prism-punctuation"
>]<
/span
><
span
class
=
"prism-token prism-comment"
spellcheck=
"true"
># vim /etc/dovecot/dovecot.conf</span><span class="prism-line-numbers-rows"><span></span></span>
protocols = imap pop3 lmtp
listen = *, ::
login_trusted_networks =192.168.18.0/24
要启用pop和IMAP服务,则要去掉如下内容的#号
指定邮件存储格式和位置
<
span
class
=
"prism-token prism-punctuation"
>[<
/span
>
root@pengqi ~
<
span
class
=
"prism-token prism-punctuation"
>]<
/span
><
span
class
=
"prism-token prism-comment"
spellcheck=
"true"
># vim /etc/dovecot/conf.d/10-mail.conf </span>
mail_location
<
span
class
=
"prism-token prism-operator"
>
=
<
/span
>
maildir:~/Maildir /将该参数前的
<
span
class
=
"prism-token prism-comment"
spellcheck=
"true"
>#号去掉,在24行</span><span class="prism-line-numbers-rows"><span></span><span></span></span>
启动dovecot服务
<
span
class
=
"prism-token prism-punctuation"
>[<
/span
>
root@pengqi ~
<
span
class
=
"prism-token prism-punctuation"
>]<
/span
><
span
class
=
"prism-token prism-comment"
spellcheck=
"true"
># service dovecot start</span>
正在启动 Dovecot Imap:
<
span
class
=
"prism-token prism-punctuation"
>[<
/span
>
确定
<
span
class
=
"prism-token prism-punctuation"
>]<
/span
><
span
class
=
"prism-line-numbers-rows"
><
span
><
/span
><
span
><
/span
><
/span
>
添加邮件用户账户
下面添加两个用户进行测试,可以用useradd和password添加账户和修改密码
<
span
class
=
"prism-token prism-punctuation"
>[<
/span
>
root@pengqi ~
<
span
class
=
"prism-token prism-punctuation"
>]<
/span
><
span
class
=
"prism-token prism-comment"
spellcheck=
"true"
># useradd pengqi_li</span>
<
span
class
=
"prism-token prism-punctuation"
>[<
/span
>
root@pengqi ~
<
span
class
=
"prism-token prism-punctuation"
>]<
/span
><
span
class
=
"prism-token prism-comment"
spellcheck=
"true"
># passwd pengqi_li</span>
<
span
class
=
"prism-token prism-punctuation"
>[<
/span
>
root@pengqi ~
<
span
class
=
"prism-token prism-punctuation"
>]<
/span
><
span
class
=
"prism-token prism-comment"
spellcheck=
"true"
># useradd pengqi_liu</span>
<
span
class
=
"prism-token prism-punctuation"
>[<
/span
>
root@pengqi ~
<
span
class
=
"prism-token prism-punctuation"
>]<
/span
><
span
class
=
"prism-token prism-comment"
spellcheck=
"true"
># passwd pengqi_liu</span><span class="prism-line-numbers-rows"><span></span><span></span><span></span><span></span></span>
mail命令测试邮件服务器
pengqi_li用邮箱pengqi_li@pengqi.com发邮件到邮箱pengqi_liu@pengqi.com
1、请使用pengqi_li登录系统,注意,不是用su指令,在家目录下创建mailliu的测试文档,文档内容自拟;
<
span
class
=
"prism-token prism-punctuation"
>[<
/span
>
pengqi_li@pengqi ~
<
span
class
=
"prism-token prism-punctuation"
>]<
/span
>
$ vim mailliu
嗨喽 pengqi_liu,这是一封测试邮件!!!
<
span
class
=
"prism-line-numbers-rows"
><
span
><
/span
><
span
><
/span
><
/span
>
2、将邮件发给pengqi_liu的邮箱pengqi_liu@pengqi.com
<
span
class
=
"prism-token prism-punctuation"
>[<
/span
>
pengqi_li@pengqi ~
<
span
class
=
"prism-token prism-punctuation"
>]<
/span
>
$ mail -s
<
span
class
=
"prism-token prism-string"
>
'hello pengqi_liu'
<
/span
>
pengqi_liu@pengqi.
com
<
span
class
=
"prism-token prism-operator"
><<
/span
>
mailliu
<
span
class
=
"prism-line-numbers-rows"
><
span
><
/span
><
/span
>
3、用pengqi_liu用户登录系统,输入mail命令,查看邮件
<
span
class
=
"prism-token prism-punctuation"
>[<
/span
>
pengqi_liu@pengqi ~
<
span
class
=
"prism-token prism-punctuation"
>]<
/span
>
$ mail
Heirloom Mail version
12.4
7
/
29
/
08.
Type ?
<
span
class
=
"prism-token prism-keyword"
>
for
<
/span
>
help.
<
span
class
=
"prism-token prism-string"
>
"/var/spool/mail/pengqi_liu"
<
/span
><
span
class
=
"prism-token prism-keyword"
>
:
<
/span
>
1
message
<
span
class
=
"prism-token prism-operator"
>><
/span
>
1
pengqi_li@pengqi.
com
Fri Jun
8
05
:
01
19
/
641
<
span
class
=
"prism-token prism-string"
>
"hello pengqi_liu"
<
/span
>
<
span
class
=
"prism-token prism-operator"
>
&
<
/span
>
<
span
class
=
"prism-token prism-function"
>
more
<
/span
>
//输入more
Message
1
:
From pengqi_li@pengqi.
com
Fri Jun
8
05
:
01
:
45
2018
Return
-Path:
<
span
class
=
"prism-token prism-operator"
><<
/span
>
pengqi_li@pengqi.
com
<
span
class
=
"prism-token prism-operator"
>><
/span
>
X-Original-To: pengqi_liu@pengqi.
com
Delivered-To: pengqi_liu@pengqi.
com
Date: Fri,
08
Jun
2018
05
:
01
:
45
+
0800
To: pengqi_liu@pengqi.
com
Subject: hello pengqi_liu
User-Agent: Heirloom mailx
12.4
7
/
29
/
08
Content-Type: text/plain
<
span
class
=
"prism-token prism-punctuation"
>
;
<
/span
>
charset
<
span
class
=
"prism-token prism-operator"
>
=
<
/span
>
utf-
8
From: pengqi_li@pengqi.
com
Status: RO
嗨喽 pengqi_liu,这是一封测试邮件!!! 邮件内容
<
span
class
=
"prism-token prism-operator"
>
&
<
/span
>
quit 输入quit退出
Held
1
message
<
span
class
=
"prism-token prism-keyword"
>
in
<
/span
>
/var/spool/mail/pengqi_liu
<
span
class
=
"prism-token prism-punctuation"
>[<
/span
>
pengqi_liu@pengqi ~
<
span
class
=
"prism-token prism-punctuation"
>]<
/span
>
$
<
span
class
=
"prism-line-numbers-rows"
><
span
><
/span
><
span
><
/span
><
span
><
/span
><
span
><
/span
><
span
><
/span
><
span
><
/span
><
span
><
/span
><
span
><
/span
><
span
><
/span
><
span
><
/span
><
span
><
/span
><
span
><
/span
><
span
><
/span
><
span
><
/span
><
span
><
/span
><
span
><
/span
><
span
><
/span
><
span
><
/span
><
span
><
/span
><
span
><
/span
><
span
><
/span
><
span
><
/span
><
span
><
/span
><
/span
>
至此,实现一对一的邮件通信已经完成了!
,