CentOS7與ubuntu16建立Postfix郵件服務(wù)

1. 安裝并,查看Postfix運(yùn)行狀況

Postfix在CentOS中是默認(rèn)配置好了的,你只需要通過(guò)service postfix status 來(lái)查看Postfix的運(yùn)行情況。但是在ubuntu16中并沒(méi)有默認(rèn)安裝,所以要使用apt-get install -y postfix進(jìn)行安裝。

CentOS中Postfix的安裝和運(yùn)行:


50FB5CF3-E2BE-4081-85E7-912B14A78B71.png
945F5393-EDB0-43D4-9841-462286C413CD.png

ubuntu16中Postfix的安裝和運(yùn)行:

EC785EEB-FAEB-4506-BD6E-8DC688E01275.png
428A91E9-EB39-4250-AA29-125854D93626.png

這里可以看出都已經(jīng)安裝并運(yùn)行起來(lái),沒(méi)有任何問(wèn)題。

2. Postfix配置

Postfix的配置文件安裝完成后會(huì)自動(dòng)保存在/etc/postfix/文件夾中,這里ubuntu和CentOS都是同樣的位置(以下如果不特殊指出ubuntu和CentOS都是一樣):

FD71370E-15F8-48F5-8AF9-68F55487C88C.png

這里最主要的配置文件是man.cf,但是并不建議通過(guò)修改這個(gè)文件本身去修改Postfix配置,而是通過(guò)postconf命令進(jìn)行修改:

  • postconf -d (default)顯示默認(rèn)Postfix配置,一般配合 grep 查詢目標(biāo)配置。
  • postconf -n (now)顯示當(dāng)前Postfix配置,一般也是配合grep 查詢目標(biāo)配置
Paste_Image.png

Paste_Image.png
  • postconf -e "key = value" (這里的""不能省略)則是修改當(dāng)前的配置。這種修改方式的好處是,如果你輸入了配置文件不匹配的規(guī)則,用postconf -d或者-n是會(huì)提示你不能用的參數(shù),必須要去main.cf配置文件去刪掉:
    Paste_Image.png

    Paste_Image.png

我們還可以通過(guò)netstat -tupln | grep master命令去查看當(dāng)前Postfix的監(jiān)聽(tīng)端口(這里的-tupln是指列出所有TCP和UDP正在Listen的端口,p 顯示建立相關(guān)鏈接的程序名,-n 選項(xiàng)禁用域名解析功能):

Paste_Image.png

這里已經(jīng)將監(jiān)聽(tīng)端口改成了ALL,是因?yàn)槲覀冃枰牟恢皇悄J(rèn)值當(dāng)中監(jiān)聽(tīng)本機(jī)的25端口,而是需要監(jiān)聽(tīng)來(lái)自其他網(wǎng)絡(luò)的25端口,這樣才可以互相通信。
下面我們需要更改下Postfix配置文件中的myhostname和mydomain兩個(gè)選項(xiàng),因?yàn)樗l(fā)郵件“@”符號(hào)后所跟的就是你的主機(jī)名,也就是myhostname,一般默認(rèn)myhostname就是本機(jī)的hostname,但是如果你更改了myhostname,而本機(jī)的hostname沒(méi)有更改,就要寫你myhostname,如下:
Paste_Image.png

從這里看出myhostname=mail.jovi.net,而hostname為Centos-V。到此即便將本機(jī)的BIND(DNS)服務(wù)關(guān)掉也是可以在本機(jī)內(nèi)的用戶互相通信發(fā)送email的,因?yàn)榇藭r(shí)只是通過(guò)Postfix服務(wù)進(jìn)行本機(jī)解析,主要是通過(guò):
Paste_Image.png

mydestiantion 來(lái)進(jìn)行接收發(fā)送郵件,這個(gè)的意思是只要我們發(fā)送的郵件是給我們本機(jī)所在用戶,也就是/var/spool/mail目錄下的用戶
Paste_Image.png

都是可以互相發(fā)送郵件,而從上上一張圖可以看出mydestination = $myhostname,localhost.$mydomain,localhost。意思是在本機(jī)發(fā)送郵件給alice,david,jovi等等這些用戶,并且@符號(hào)后跟mail.jovi.net($myhostname),或者localhost.jovi.net($mydomain = jovi.net)或者,localhost。都是可以發(fā)送通過(guò)并且成功接收的。

這里的postfix配置需要注意的一點(diǎn)就是每一次以postconf -e修改配置后都是需要重啟postfix服務(wù)來(lái)讓新配置生效的

3. 本地發(fā)送郵件驗(yàn)證Postfix正常運(yùn)行

Paste_Image.png
Paste_Image.png
Paste_Image.png

從上面3 個(gè)圖都可以看出 通過(guò)用戶名@mydestionation的方式都是可以成功發(fā)送并接受郵件的,這里發(fā)送郵件的命令是:mail -vs "subject" username@mydestionation -vs的意思是詳細(xì)顯示信息和輸入主題,輸入此命令后,敲回車,然后就可以輸入正文了,最后以Ctrl+d結(jié)束寫郵件并發(fā)送。
如果想要?jiǎng)h除某用戶下的所有郵件,只需要將其/var/spool/mail目錄下的文件清空就可以了,可以使用echo "" > /var/spool/mail/jovi命令

4 .配置BIND服務(wù)

以上都是在本地如何驗(yàn)證Postfix服務(wù)運(yùn)行正常并進(jìn)行本機(jī)用戶的郵件互通?,F(xiàn)在如果我們想要本機(jī)和其他機(jī)器進(jìn)行通信就必須使用DNS,這是Postfix非本機(jī)互通的前提:


Paste_Image.png
Paste_Image.png

Paste_Image.png

上面是將named-chroot服務(wù)打開(kāi),以及修改本地域名服務(wù)器配置文件,修改為本機(jī)(DNS服務(wù)器)IP,CentOS和ubuntu都是需要修改的,這里是將CentOS作為DNS服務(wù)器。
然后修改/var/named/chroot/etc/named.conf文件,添加以下兩個(gè)域名,方便后面進(jìn)行解析
Paste_Image.png

然后配置這2個(gè)zone文件:
Paste_Image.png

Paste_Image.png

Paste_Image.png

因?yàn)槭荂entOS作為DNS服務(wù)器,所以在用ubuntu試著連接CentOS的時(shí)候,先要將CentOS防火墻以及Selinux設(shè)置為可連接:
Paste_Image.png

上面設(shè)置以后就可以用ubuntu連接CentOS了
Paste_Image.png

這樣就可以看到無(wú)論是在CentOS還是ubuntu上都是可以解析到我們所需要發(fā)送的兩個(gè)主機(jī)名,這里也要檢查下ubuntu上的Postfix中的myhostname是否是我們所指定的主機(jī)名。
還有就是要將之前說(shuō)過(guò)的監(jiān)聽(tīng)服務(wù)設(shè)置成所有:
Paste_Image.png

5. 互通郵件

CentOS ====>>> ubuntu
Paste_Image.png

Paste_Image.png
ubuntu====>>> CentOS
Paste_Image.png

Paste_Image.png

如果其中有什么問(wèn)題,最先考慮的是配置更改后是否有重啟服務(wù)讓配置生效??!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容