邮件服务器概述
使用Email很容易,但是Internet的邮件系统是通过很复杂的几个系统组成的,对于最终用户而言,我们熟悉的Outlook,Foxmail等都是用来收信和发信的,称之为MUA:Mail User Agent,邮件用户代理。
MUA并非直接将邮件发送至收件人手中,而是通过MTA:Mail Transfer Agent,邮件传输代理代为传递,Sendmail和Postfix就是扮演MTA的角色。
一封邮件从MUA发出后,可能通过一个或多个MTA传递,最终到达MDA:Mail Delivery Agent,邮件投递代理,邮件到达MDA后,就存放在某个文件或特殊的数据库里,我们将这个长期保存邮件的地方称之为邮箱。
一旦邮件到达邮箱,就原地不动了,等用户再通过MUA将其取走,就是用Outlook,Foxmail等软件收信的过程。
所以一封邮件的流程是:
发件人:MUA --发送–> MTA -> 若干个MTA… -> MTA -> MDA <–收取-- MUA:收件人
协议:MUA到MTA,以及MTA到MTA之间使用的协议就是SMTP协议,而收邮件时,MUA到MDA之间使用的协议最常用的是POP3或IMAP。
1。安装及配置postfix和dovecot服务
关闭防火墙和selinux
开始安装postfix和dovecot
yum install postfix dovecot -y
设置主机名及域名
[root@mail ~]# hostnamectl set-hostname mail.wq.com
[root@mail ~]# echo '192.168.0.155 mail.wq.com' > /etc/hosts
设置DNS服务
vi /var/named/wq.com.zone
$TTL 1D
@ IN SOA ns.wq.com. root.wq.com. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS ns.wq.com.
MX 5 mail.wq.com.
ns A 192.168.0.155
mail A 192.168.0.155
smtp CNAME mail
pop3 CNAME mail
www CNAME mail
[root@mail ~]# host -n -t mx wq.com 192.168.0.155
Using domain server:
Name: 192.168.0.155
Address: 192.168.0.155#53
Aliases:
wq.com mail is handled by 5 mxbiz1.qq.com.
wq.com mail is handled by 10 mxbiz2.qq.com.
2.基本配置,编辑主配置文件
[root@mail ~]# cp /etc/postfix/main.cf /etc/postfix/main.cf.bak
vi /etc/postfix/main.cf // 对以下参数做修改
*myhostname* //主机名
myhostname =mail.wq.com
*mydomain* //使用邮件域
mydomain = wq.com //设置本地网络的邮件域
*myorigin* //要外发邮件时发件人的邮件域名
myorigin = $mydomain
inet_interfaces = all //设置postfix监听的网络端口
mydestination = $myhostname, localhost.$mydomain, localhost,$mydomain //设置可接收邮件的主机名 或域名。来
自其他主机名或域名的邮件将拒绝接收
*mynetworks* // 收发客户端的地址
mynetworks = 192.168.0.0/24, 127.0.0.0/8 //指定了本地网络的IP段,默认只包含主机自己,
relay_domains = $mydestination //设置可转发来自哪些域名或主机名的邮件
home_mailbox = Maildir/ //邮件存储的位置
设置完成开启服务
systenctl start postfix
创建用户账号
useradd zs
echo ‘123456’ | passwd --stdin zs
useradd ls
echo ‘123456’ | passwd --stdin ls
使用 telnet 工具进行发信测试
yum install telnet -y
[root@mail ~]# telnet localhost 25
Trying ::1...
Connected to localhost.
Escape character is '^]'.
220 mail.wq.com ESMTP Postfix
HELO localhost //宣告客户地址
250 mail.wq.com
MAIL FROM:zs@wq.com //发件人地址
250 2.1.0 Ok
RCPT TO:ls@wq.com //收件人地址
250 2.1.5 Ok
DATA //传送数据的内容
354 End data with <CR><LF>.<CR><LF>
Subject:test mail // 主题
hello!
this is test mail
. //最后这个点 表示结束
250 2.0.0 Ok: queued as 508F0104FA00
quit // 退出
221 2.0.0 Bye
Connection closed by foreign host.
查看邮件
[root@mail ~]# ls /home/ls/Maildir/new/
1544098321.Vfd00I3839584M985672.mail.wq.com
3.配置收件服务器dovecot
yum install dovecot -y
编辑主配置文件
[root@mail ~]# vi /etc/dovecot/dovecot.conf //修改如下几处
protocols = imap pop3 lmtp //20 行:指定本邮件主机所运行的协
议
listen = * //26 行:监听本机的所有网络接口
login_trusted_networks = 192.168.95.0/24 //38 行:指定允许登
录的网段地址
[root@mail ~]# vim /etc/dovecot/conf.d/10-mail.conf
//查找以下配置行(第 24 行)并将行首“#”去掉
mail_location = maildir:~/Maildir //指定邮件存储格式和位置
重启服务
systemctl start dovecot
收信测试
[root@mail ~]# telnet localhost 110
Trying ::1...
Connected to localhost.
Escape character is '^]'.
+OK Dovecot ready.
user ls //用户
+OK
pass 123456 密码
+OK Logged in.
list //查看邮件
+OK 3 messages:
1 381
2 1561
3 401
.
retr 1 //查看第一封
+OK 381 octets
Return-Path: <zs@wq.com>
X-Original-To: ls@wq.com
Delivered-To: ls@wq.com
Received: from localhost (localhost [IPv6:::1])
by mail.wq.com (Postfix) with SMTP id 1D391104FA01
for <ls@wq.com>; Thu, 6 Dec 2018 04:38:13 -0500 (EST)
Subject:test mail
Message-Id: <20181206093827.1D391104FA01@mail.wq.com>
Date: Thu, 6 Dec 2018 04:38:13 -0500 (EST)
From: zs@wq.com
HELLo
.
quit
+OK Logging out.
Connection closed by foreign host.
4.使用windows客户端进行测试
下载Foxmail
首先测试主机是否能ping通
若不能ping通,关闭windows防火墙
或者 在windows中做域名与IP的绑定,在c盘:/windows/drivers/system32/etc/hosts
写入 192.168.0.155 mail.wq.com
添加邮件账号
发送邮件
在linux中同步可以查看邮件信息
测试完成。