Postfix設(shè)定之Postfix結(jié)構(gòu)
在主機的設(shè)定之前我們得先了解一下 postfix 的整體構(gòu)造,以方便以后來處理我們的檔案吶!所以底下我們會先針對 postfix 這個套件的結(jié)構(gòu)做個簡單的說明,然后再針對各個設(shè)定項目來進行說明啰!Postfix 的設(shè)定檔幾乎完全都在 /etc/postfix 里面,至于執(zhí)行檔則在 /usr/sbin 里面,我們分別來談一談幾個主要的注意事項吧!
設(shè)定檔:Postfix 的設(shè)定檔都在 /etc/postfix 里面,主要的設(shè)定檔有:
/etc/postfix/main.cf :這個就是最重要的 postfix 的設(shè)定檔了!等一下我們談到的設(shè)定都在這個檔案里面進行修改的動作!基本上,他本身就是一個簡單的說明文件檔啦!不過,要注意的是,在你修改完成了 main.cf 之后,請記得『一定要重新 reload 或重新 restart postfix 才行!』
/etc/postfix/master.cf:這個檔案是另外一個重要的 postfix 設(shè)定檔!他主要是規(guī)定了 postfix 每個程序的運作參數(shù)!
/etc/postfix/access :這個檔案與 sendmail 的 access 是相同的!都是用來做為 relay 或者是 deny 某些 IP 與 hostname 的檔案!不過,要啟用他還是得要修改 main.cf 才行!
/etc/postfix/aliases : 這個檔案與 sendmail 的 aliases 也是相同的!同樣的可以做為別名之用,所以您可以回頭去翻一翻這個檔案的用法喔!
/etc/postfix/pcre_table regexp_table relocated : 這幾個檔案可以做為郵件的過濾之用喔!可以使用正規(guī)表示法來進行郵件過濾(filter)的規(guī)則,嗬嗬!會使用這幾個檔案,或許連 procmail 也不需要使用了呢! ^_^
執(zhí)行檔:Postfix 的執(zhí)行檔可不少啊!約略提幾個主要的執(zhí)行檔吧!
/usr/sbin/postfix:這就是 postfix 的主要執(zhí)行檔案啦!啟動與簡單的關(guān)閉 postfix 可以使用:
postfix check :檢查 postfix 相關(guān)的檔案、權(quán)限等是否正確!
postfix start :開始 postfix 的執(zhí)行
postfix stop :關(guān)閉 postfix
postfix flush :強制將目前正在郵件佇列的郵件寄出!
postfix reload:重新讀入設(shè)定檔,也就是 /etc/postfix/main.cf
要注意的是,每次更動了 /etc/postfix/main.cf 之后,一定需要執(zhí)行 postfix reload 喔!
/usr/sbin/postalias:這個指令是 sendmail 的 newaliases 啦!他可以用來將上面提到的設(shè)定檔 aliases 製作成為 postfix 看的懂得『資料庫』格式化檔案!由于一般來說,我們都是使用 hash 這一種資料格式,所以啰,你可以簡單的使用底下的指令方式來格式化。
postalias 資料庫格式:檔名
postalias hash:/etc/postfix/aliases ==>自動建立 /etc/postfix/aliases.db 這個資料庫檔案!
/usr/sbin/postcat :這個指令可以用來觀察某個郵件佇列里面檔案的資訊!postfix 的郵件佇列放置在 /var/spool/postfix 里面,但是這個目錄里面的檔案格式是 postfix 看的懂得,我們?nèi)祟惪床欢珵榱巳〉眠@些在郵件佇列里面的檔案資訊,所以我們得使用 postcat 這個指令來讀取出資訊喔!假如有個檔案放在 /var/spool/postfix/deferred,你可以這樣看:
postcat /var/spool/postfix/deferred/filename
/usr/sbin/postconf :可以用來讀取 main.cf 這個檔案里面的設(shè)定資料的一個指令!用途多多啊!簡單的來說,可以直接將你的 main.cf 里面的設(shè)定分門別類的顯示給你看,可以幫助除錯 (debug) 啦!不錯的工具,鳥哥個人蠻喜歡加入 -n 這個參數(shù)來瞭解目前的主要規(guī)範(fàn)檔放置在那個目錄下!
postconf -n
顯示的結(jié)果為:
- alias_database = hash:/etc/postfix/aliases
- alias_maps = hash:/etc/postfix/aliases
- command_directory = /usr/sbin
- config_directory = /etc/postfix
- daemon_directory = /usr/lib/postfix
- debug_peer_level = 2
看到了吧!你想要知道的資料立刻一目了然,可以加快你的除錯喔!不必每次都要進入 main.cf 里面找好久呢!
/usr/sbin/postmap:怪怪!這個指令的用法跟上面提到的 postalias 幾乎完全一模一樣啊! ^_^不過,他是用來取代 sendmail 的 makemap 的!用法是:
postmap hash:/etc/postfix/access ==>自動建立 /etc/postfix/access.db 這個資料庫檔案!
/usr/sbin/postqueue :這個是在觀察郵件佇列的一個指令啦!你可以使用 postqueue -p 來顯示目前的郵件佇列內(nèi)容!這個:
postqueue -p 與 mailq 顯示的內(nèi)容會一模一樣喔!
目錄:同樣的具有郵件佇列與郵件信箱的放置目錄啊!
/var/spool/mail :電子郵件信箱放置目錄
/var/spool/postfix :郵件佇列,里面還有很多次目錄,都是一些其他功能的咚咚啊!
整體的架構(gòu)大致是如此,好啦!
【編輯推薦】