centos 7 用sendmail 搭建郵件服務器

centos 7 用sendmail 搭建郵件服務器

瞭解郵件如何傳送到目的郵件主機,一般分爲 “寄信”、“收信”;
寄信:通常使用桌面計算機來寄信,例如,Outlook Express,Foxmail,信到底如何發出去的?

MUA(Mail User Agent):郵件用戶代理,MUA是用在客戶端的軟件,例如,Foxmail,Outlook Express等客戶端程序,郵件需要代理,因爲客戶端的計算機無法直接收發郵件,通過各個操作系統提供的MUA才能夠使用郵件系統,MUA主要的功能就是接收郵件主機的電子郵件,並提供用戶瀏覽與編寫郵件的功能。

MTA(Mail Transfer Agent):用在郵件主機上的軟件,是主要的郵件服務器,是"郵件傳送代理",用戶寄信和收信,主要功能:接收外部主機寄來的信件,幫用戶發信;注意,MTA會將信件送給目的地的MTA而不是目的地的MUA;

注意:用戶使用的是MUA,而信件僅會送達MTA主機上,收、發信件時,都需要通過MTA幫忙處理,所以,用戶在使用郵件編輯器“MUA”將數據編輯完畢之後,按下送出,並且成功送到MTA之後,接下來的事情就是MTA的工作了,跟用戶的Client端計算機沒有關係。

MDA(Mail Delivery Agent):郵件投遞代理,將MTA接收的信件依照信件的流向(送到哪裏)將該信件放置到本機賬戶下的郵件文件中(收件箱),或者再經由MTA將信件送到下個MTA。如果信件的流向是到本機,這個郵件代理的功能就不只是將由MTA傳來的郵件放置到每個用戶的收件箱,它還可以具有郵件過濾(filtering)與其他相關功能。

SMTP(Simple Mail Transfer Protocol)傳輸發送郵件所使用的標準協議;

IMAP(Internet Message Access Protocol)接收郵件使用的標準協議之一;

POP3(Post Office Protocol 3) 接收郵件使用的標準協議之一;

25端口(SMTP):25端口爲SMTP(Simple Mail Transfer Protocol,簡單郵件傳輸協議)服務所開放的,是用於發送郵件。
110端口(POP3):110端口是爲POP3(Post Office Protocol Version 3,郵局協議3)服務開放的,是用於接收郵件的。
143端口(IMAP):143端口是爲IMAP(INTERNET MESSAGE ACCESS PROTOCOL)服務開放的,是用於接收郵件的。

上面介紹的SMTP協議、POP3協議、IMAP協議都是不安全的協議,基於SSL(Secure Sockets Layer 安全套接層)協議的安全的郵件收發協議,

465端口(SMTPS):465端口是爲SMTPS(SMTP-over-SSL)協議服務開放的,這是SMTP協議基於SSL安全協議之上的一種變種協議,它繼承了SSL安全協議的非對稱加密的高度安全可靠性,可防止郵件泄露,

995端口(POP3S):995端口是爲POP3S(POP3-over-SSL)協議服務開放的,這是POP3協議基於SSL安全協議之上的一種變種協議,它繼承了SSL安全協議的非對稱加密的高度安全可靠性,可防止郵件泄露。

993端口(IMAPS):993端口是爲IMAPS(IMAP-over-SSL)協議服務開放的,這是IMAP協議基於SSL安全協議之上的一種變種協議,它繼承了SSL安全協議的非對稱加密的高度安全可靠性,可防止郵件泄露。

IMAP和POP3都是接收郵件協議,兩者區別在哪?

POP3協議特性:
POP3協議默認端口:110

POP3協議默認傳輸協議:TCP

POP3協議適用的構架結構:C/S

POP3協議的訪問模式:離線訪問
  
IMAP(InternetMailAccessProtocol,Internet郵件訪問協議)以前稱作交互郵件訪問協議(InteracTIveMailAccessProtocol),主要作用是郵件客戶端(例如MSOutlookExpress)可以通過這種協議從郵件服務器上獲取郵件的信息,下載郵件等,IMAP協議運行在TCP/IP協議之上,使用的端口是143。

它與POP3協議的主要區別是用戶可以不用把所有的郵件全部下載,可以通過客戶端直接對服務器上的郵件進行操作。

imap特點:

IMAP(Internet消息訪問協議)也是提供面向用戶的郵件收取服務。常用的版本是IMAP4。
IMAP4改進了POP3的不足,用戶可以通過瀏覽信件頭來決定是否收取、刪除和檢索郵件的特定部分,還可以在服務器上創建或更改文件夾或郵箱。

POP3協議允許電子郵件客戶端下載服務器上的郵件,但是在客戶端的操作(如移動郵件、標記已讀等),不會反饋到服務器上。
IMAP提供webmail與電子郵件客戶端之間的雙向通信,客戶端的操作都會反饋到服務器上,對郵件進行的操作,服務器上的郵件也會做相應的動作。IMAP整體上爲用戶帶來更爲便捷和可靠的體驗。POP更易丟失郵件或多次下載相同的郵件。

1.開始搭建郵件服務器:
首先,設置主機名,centos 7無法通過 /etc/sysconfig/network 修改 hostname ,不知道爲什麼自己的服務器不能通過這種方法永久修改主機名,嘗試另一種方法;修改之後,需要重啓 reboot ,然後通過 hostname 命令查看主機名是否被修改,
在這裏插入圖片描述

2.查看是否安裝 sendmail ,一般需要手動安裝,
在這裏插入圖片描述

sendmail-cf :sendmail核心配置文件,位於/etc/mail/sendmail.cf,
sendmail.mc:sendmail提供sendmail文件模板,通過編輯此文件後再使用m4工具將結果導入sendmail.cf完成配置sendmail核心配置文件,降低配置複雜度,位於/etc/mail/sendmail.mc,爲什麼不直接編輯 sendmail.cf 配置文件? 因爲看不懂。
local-host-names:定義收發郵件服務器的域名和主機別名,位於/etc/mail/local-host-names

sendmail 服務器和 DNS 密切相關,我們這配置Sendmail之前需要先配置好DNS的相關服務,不再敘述 DNS ,上篇博客有詳解。
但在配置DNS時需要注意一點,要加上自己的服務器域名;我的服務器IP地址,192.168.12.2

在這裏插入圖片描述

3.修改 sendmail.mc 配置文件,
在這裏插入圖片描述

需要修改兩個位置,一個是118行左右,另一個是157行左右,進入配置文件後,進入底行模式(英文模式下,Shift + ;鍵),然後輸入 set nu 命令,可以顯示配置文件的行號,進行如下修改,Addr = 0.0.0.0 的作用,可以擴大偵聽範圍(一般都是這樣設置的),如果偵聽範圍小了,郵件服務器是無法正常發送郵件的。

在這裏插入圖片描述

157行,修改成自己的域,zwh.com
在這裏插入圖片描述

4.進行m4重定向,因爲 sendmail.cf 無法讀懂,需要對 sendmail.mc 修改後用m4工具重新導入 sendmail.cf 中,這樣比較好理解,

先檢查是否安裝,

在這裏插入圖片描述

在這裏插入圖片描述

5.修改local-host-names文件添加域名和主機名,/etc/mail/local-host-names

在這裏插入圖片描述

以上只是發送郵件的基本配置,接下來是接收郵件,需要用到 POP3協議,安裝 dovecot 軟件包,

6.安裝 dovecot 有軟件之間的依賴關係,建議使用 yum 安裝,但是red hat 的yum是需要付費的,建議使用 centos ,

在這裏插入圖片描述

到此,發送、接收已經過程已經安裝完成,先嚐試啓動各種服務

在這裏插入圖片描述

檢查需要的端口是否已經開啓,主要是 :SMTP :25,POP3:110,IMAP:143,是否處於監聽狀態,

在這裏插入圖片描述

以及加密端口,SMTPS:465,POP3S:995,IMAP:993

在這裏插入圖片描述
驗證Sendmail的SMTP認證功能:

在這裏插入圖片描述
POP3驗證:
在這裏插入圖片描述
7.telnet 進行驗證
先安裝 telnet 客戶端,服務器端,

在這裏插入圖片描述

因爲telnet是被xinetd所守護,還要檢查xinetd是否安裝,

在這裏插入圖片描述

配置並啓動Telnet,xinetd和telnet必須設置開機啓動,否則無法啓動Telnet服務,

systemctl enable xinetd.service

systemctl enable telnet.socket

接下來啓動服務

systemctl start telnet.socket

systemctl start xinetd

telnet 服務默認是不開啓的, 修改xinetd 的配置文件開啓服務,centos 7 的配置文件是 /etc/xinetd.conf 不是 /etc/xinetd.d/telnet,因爲telnet 默認端口是23,所以要確保該端口啓動,
將 disabled 改爲 no,意思是開啓該項功能。

在這裏插入圖片描述

CentOS 7 採用了 firewalld 防火牆,查詢是否開啓23端口,首先打開防火牆,
在這裏插入圖片描述

如果沒有打開,使用該命令# firewall-cmd --zone=public --add-port=23/tcp --permanent 開啓,再次測試23端口是否打開;

8.測試:
創建兩個用戶進行測試:
在這裏插入圖片描述

發送郵件:
在這裏插入圖片描述
helo :聲明域;mail from :發件人信息,“test” 郵件主題,發件人 tianqiyuan,
rcpt to :收件人信息,收件人zhaowenhao,data,書寫內容開始,".":內容結束,quit:退出,

收信,
在這裏插入圖片描述
user:收件人,pass:密碼,
發現不能正常收信,提示 " Permission denied ":權限低,
提高權限:
在這裏插入圖片描述
再次測試:
在這裏插入圖片描述
list:查看收件箱列表,retr 1:查看第一條信息,如果不能接收郵件,查看是否權限過低。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章