close

郵件伺服器分MTA 寄件主機與POP3 收件主機,

此處設定以一台MTA與一台POP3為主,

不討論複雜且多樣的mail sever設定。

 

CentOS 8.1支援不同的mail server,這裡選擇 postfix做為郵件伺服器。

 

MTA主機跑的 mail server 程式名稱為 postfix,先安裝程式:

yum install postfix -y

 

安裝好後設定檔位於 /etc/postfix/main.cf

 

編輯此檔內容,修改以下欄位:

 

     inet_interfaces = all 聆聽所有界面,預設只聆聽localhost

     myhostname = hostname 本機完整主機名稱,DNS server章節會提到 #FQDN mail.bell.idv.tw <- DNS server MX設定要相符

     mydomain = 你的網域 以本站為例即為 bell.idv.tw

     myorigin = $mydomain

     inet_protocols = ipv4 ipv4 ony。除非你的環境有ipv6,可以填all或ipv6

     mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain, bell.idv.tw, www.bell.idv.tw, mail.bell.idv.tw

     mynetworks = 你信任的IP網段(例如192.168.0.0/24, 10.0.0.0/8 這樣), 127.0.0.0/8, hash:/etc/postfix/access

     home_mailbox = Mail  原先預設的home mail box 位址在/var/~Mail/目錄下,改成使用者家目錄的預設為 Maildir/ 我愛用Mail當目錄名稱,此處跟後面POP3設定有關,不能搞錯

    relay_domains=$mydestination   設定可以轉寄mail的主機,因垃圾郵件盛行,此處必須限制
 
    alias_maps=hash:/etc/aliases
 
    alias_database=hash:/etc/aliases              
 
 
完成以上設定後存檔並執行以下兩航指令:
 
postmap hash:/etc/postfix/access
 
postalias hash:/etc/aliases
 
 
接著啟動postfix:
 
systemctl start postfix
 
讓系統開機時即啟動 postfix:
 
systemctl enable postfix
 
測試一下mail server是否正常工作:
 
測試,請依紅字輸入指令與測試文字後,按下Enter執行

假設系統已經有一個帳號叫做 bell

 

   [root@dns etc]# telnet localhost smtp
   Trying ::1...
   Connected to localhost.
   Escape character is '^]'.
   220 你的完整主機名稱 ESMTP Postfix
   ehlo localhost
   250-你的完整主機名稱
   250-PIPELINING
   250-SIZE 10240000
   250-VRFY
   250-ETRN
   250-ENHANCEDSTATUSCODES
   250-8BITMIME
   250 DSN
   mail from:bell
   250 2.1.0 Ok
   rcpt to:bell
   250 2.1.5 Ok
   data
   354 End data with <CR><LF>.<CR><LF>
   Welcome to use postfix mail system
     .
   250 2.0.0 Ok: queued as DF96FA1A04
   quit
   221 2.0.0 Bye
   Connection closed by foreign host.

 
以上紅色字樣是你要手動輸入的資料,黑色字樣是系統的訊息。

如果顯示訊息都正常,表示postfix已經正確聆聽 port 25,也可以將信件寄出。

常遇見的設定問題往往是防火牆與selinux搞的鬼,設定server之前最好先將防火牆與selinux關閉,

等設定確認都正確後再開啟。

照以上範例測試玩之後,進入使用者家目錄,底下會多出一個郵件目錄 Maildir:

2020-03-08 (7)

 

裡面會有三個子目錄:

2020-03-08 (8)

new是未讀的新信收件匣,剛剛寄出的測試信會在這裡,打開會是這樣:

2020-03-08 (9)

這樣表示寄件成功,mail server基本上可以運行了。

 

arrow
arrow
    文章標籤
    centos8.1 postfix mail server
    全站熱搜
    創作者介紹
    創作者 呂阿谷 的頭像
    呂阿谷

    呂阿谷的部落格

    呂阿谷 發表在 痞客邦 留言(5) 人氣()