1. 程式人生 > >linux中搭建郵件伺服器

linux中搭建郵件伺服器

郵件伺服器概述
使用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
設定主機名及域名

[[email protected] ~]# hostnamectl set-hostname mail.wq.com
[[email protected] ~]# 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

[[email protected] ~]# 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.基本配置,編輯主配置檔案
[[email protected] ~]# 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

[[email protected] ~]# 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:[email protected]		//發件人地址
250 2.1.0 Ok
RCPT TO:[email protected]		//收件人地址
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.

檢視郵件
[[email protected] ~]# ls /home/ls/Maildir/new/
1544098321.Vfd00I3839584M985672.mail.wq.com

3.配置收件伺服器dovecot

yum install dovecot -y
編輯主配置檔案
[[email protected] ~]# vi /etc/dovecot/dovecot.conf //修改如下幾處

protocols = imap pop3 lmtp //20 行:指定本郵件主機所執行的協
議
listen = * //26 行:監聽本機的所有網路介面
login_trusted_networks = 192.168.95.0/24 //38 行:指定允許登
錄的網段地址

[[email protected] ~]# vim /etc/dovecot/conf.d/10-mail.conf

//查詢以下配置行(第 24 行)並將行首“#”去掉
mail_location = maildir:~/Maildir //指定郵件儲存格式和位置

重啟服務
systemctl start dovecot
收信測試
[[email protected] ~]# 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: <[email protected]>
X-Original-To: [email protected]
Delivered-To: [email protected]
Received: from localhost (localhost [IPv6:::1])
        by mail.wq.com (Postfix) with SMTP id 1D391104FA01
        for <[email protected]>; Thu,  6 Dec 2018 04:38:13 -0500 (EST)
Subject:test mail
Message-Id: <[email protected]>
Date: Thu,  6 Dec 2018 04:38:13 -0500 (EST)
From: [email protected]

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中同步可以檢視郵件資訊
在這裡插入圖片描述
測試完成。