搭建背景:公司决定搭建邮件服务器,实现内部和外部交流的电子化,因为Linux系统稳定、安全性较好,该公司决定在Linux系统中搭建postfix邮件服务器,邮件服务器mail.pengqi.com能够实现一对一的邮件收发。
Postfix安装及启动
Bash
<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软件,可以使用以上命令查看是否安装包,如果没有安装,请使用以下命令进行安装即可;
Bash
<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 install postfix</span><span class="prism-line-numbers-rows"><span></span></span>
启动、停止、重启服务:
Bash
<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>
Bash
<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>
Bash
<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>
设置开机自启动:
Bash
<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的邮件收发,需要修改为如下内容:
myhostname=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软件进行测试:
Bash
<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服务安装
Bash
<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 install dovecot</span><span class="prism-line-numbers-rows"><span></span></span>
dovecot的基本配置
Bash
<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服务,则要去掉如下内容的#号
指定邮件存储格式和位置
Bash
<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服务
Bash
<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添加账户和修改密码
Bash
<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的测试文档,文档内容自拟;
Bash
<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
Bash
<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命令,查看邮件
Bash
<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>
至此,实现一对一的邮件通信已经完成了!