Postfix 郵件服務器的配置

安裝

yum install postfix dovecot 
yum remove sendmail

請注意,CentOS 5中的默認MTA 是sendmail。若是您不將默認MTA做爲後綴,更新後綴可能會致使默認MTA恢復爲sendmail。html

配置

接下來,咱們須要配置電子郵件服務器的各個部分。數據庫

Postfix

Postfix配置文件存儲在 /etc/postfix 中。兩個主要的postfix配置文件是master.cf 和 main.cf,雖然咱們這裏只處理 main.cf。首先,咱們將對main.cf 配置文件進行一些添加或更改。應添加,編輯或取消註釋如下行:服務器

myhostname = mail.example.com
mydomain = example.com
myorigin = $mydomain
inet_interfaces = all
mydestination = $myhostname,localhost.$mydomain,localhost,$mydomain
mynetworks = 192.168.0.0/24,127.0.0.0/8
relay_domains =
home_mailbox = Maildir/

注意:每一行應重新行的開頭開始,不該以空格或製表符開頭。行開頭的空格或製表符被視爲前一行的延續,若是前一行是註釋(#)行,則後續行也被視爲這樣。此外,應避免內聯註釋。網絡

如今讓咱們看看每一個設置項,以瞭解咱們剛剛作了什麼:dom

  • myhostname:是系統的主機名(即系統名爲mail或mail.example.com)。
  • mydomain:是電子郵件服務器的域名(能夠是真實或虛假的域名)。
  • myorigin:是本地發佈的電子郵件彷佛來自並傳遞到的域名。
  • inet_interfaces:設置Postfix能夠接收郵件的網絡接口。這些須要包括至少localhost和local.domain。
  • mydestination:是要傳遞到的域名列表(即,此服務器是發送到這些域的電子郵件的最終目的地)。
  • mynetworks:是能夠經過服務器發送或中繼郵件的可信IP地址列表。嘗試經過源自此處未列出的IP地址的服務器發送電子郵件的用戶將被拒絕。
  • relay_domains:此係統將郵件中繼到的目標域列表。經過將其設置爲空白,咱們確保咱們的郵件服務器不會充當不受信任網絡的開放中繼。建議讀者測試他們的系統在這裏不是一個開放的中繼:http://www.abuse.net/relay.html
  • home_mailbox:設置郵箱相對於用戶主目錄的路徑,還指定要使用的郵箱樣式。Postfix支持Maildir和mbox格式,鼓勵讀者本身閱讀每一個格式的優勢。可是,在本文中,咱們選擇使用Maildir格式(尾部斜槓表示Maildir格式。要指定mbox格式,讀者將使用home_mailbox = Mailbox)。

建立用戶郵箱

接下來,咱們須要爲其主目錄中的每一個用戶建立一個郵箱並設置相應的權限,所以使用咱們的示例用戶john:post

mkdir /home/john/Maildir
chown john:john /home/john/Maildir
chmod -R 700 /home/john/Maildir

注意:若是以root身份建立用戶郵箱,則必須將目錄的全部權設置爲用戶。測試

別名

咱們差很少完成了。咱們爲咱們的用戶 John Smith 設置了一個電子郵件賬戶,該賬戶以john 身份登陸。他的電子郵件地址是 john@example.com。可是,John 可能但願收到jsmith@example.com(或任何其餘別名)的電子郵件。咱們能夠經過使用系統別名文件爲John 設置別名來實現此目的(默認狀況下,postfix使用 /etc/aliases )。咱們還能夠爲其餘用戶添加別名,例如咱們也能夠經過將如下內容添加到/etc/aliases 來將 root 的電子郵件重定向到 John :.net

# Person who should get root's mail
root:           john
# User aliases
jsmith:         john
j.smith:        john

若是在運行postfix後編輯別名文件覺得用戶設置新別名,則必須經過運行newaliases命令重建別名數據庫。代理

啓動服務器

咱們如今準備啓動新的電子郵件服務器。首先,咱們須要告訴咱們的系統使用 postfix 做爲MTA而不是默認的 sendmail。爲此,請運行 system-switch-mail 命令並選擇 postfix做爲MTA。這將安裝後綴服務並將其設置爲在運行級別3,4和5自動啓動。接下來,咱們須要將dovecot服務設置爲也自動從運行級別3,4和5開始,並啓動這兩個服務:code

chkconfig --level 345 dovecot on
/etc/init.d/dovecot start
/etc/init.d/postfix start

此時你應該啓動並運行。您的電子郵件服務器在內部發送和接收電子郵件以及發送外部電子郵 要在您的域上接收外部電子郵件,您還須要在 DNS 中爲您的域配置 MX 記錄(理想狀況下,還應經過您的ISP將IP地址映射到您的域來配置 PTR rDNS 條目)。不要忘記在Linux防火牆上打開任何所需的端口,具體取決於您運行的服務(SMTP 25; POP3 110; IMAP 143; IMAPS 993; POP3S 995),併爲任何路由器上的端口啓用端口轉發。

若是對 postfix 配置文件 main.cf 進行任何更改,則能夠從新啓動 postfix 服務或運行 postfix reload 命令來更新更改。

總結

Postfix是一種功能強大且功能多樣的郵件傳輸代理。在本文中,咱們已經瞭解瞭如何使用postfix 和 dovecot爲基於系統用戶賬戶的單個域實現基本電子郵件服務器。咱們幾乎沒有涉及基於 postfix 的系統的真正功能,但但願能爲新用戶構建提供堅實的工做基礎。

相關文章
相關標籤/搜索