2010年1月25日 星期一

設定Postfix + 備援主機 (CentOS 5.4)

停止sendmail
[root@ms1 /]#
/etc/rc.d/init.d/sendmail stop

設定開機不啟動
[root@ms1 /]#
chkconfig sendmail off

檢查Postfix相關套件是否有安裝
[root@ms1 /]# rpm -qa | grep postfix
postfix-2.3.3-2.1.el5_2
postfix-pflogsumm-2.3.3-2.1.el5_2

沒有的話就用yum安裝
[root@ms1 /]#
yum -y install postfix

啟動postfix
[root@ms1 /]#
/etc/rc.d/init.d/postfix start

設定開機啟動postfix
[root@ms1 /]#
chkconfig postfix on

檢查是否已改用postfix為郵件伺服器
[root@ms1 /]# telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.localdomain (127.0.0.1).
Escape character is '^]'.
220 ms1.bear110.com ESMTP
Postfix

修改postfix設定檔
[root@ms1 /]# vi /etc/postfix/main.cf
# 完整主機名稱
myhostname = ms1.bear110.com
# 網域名稱
mydomain = bear110.com
inet_interfaces = all
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
mynetworks = bear110.com
# 信箱大小限制,單位 bytes,0 為不限,如果沒設定的話,系統預設是50MB的空間大小。
mailbox_size_limit = 0
# 單封信件大小限制,單位 bytes。
message_size_limit = 5120000

第二台備援mail server的設定方式
myhostname = ms2.bear110.com
mydomain = bear110.com
inet_interfaces = all
# 這裡不能設定成 $mydomain,否則ms2會把它當成本地端的信件來處理。
mydestination = $myhostname
# ms2是bear110.com的備援主機,所以必須設定允許處理這個網域的信件。
relay_domains = bear110.com
mynetworks = bear110.com
mailbox_size_limit = 0
message_size_limit = 5120000

先關掉ms1的postfix
連線到備援ms2執行令 postqueue –p,就會看到信再在mail queqe 中
於 ms2 主機上執行postfix flush,就會把信送回ms1了

檢查是否可接受外部連線
[root@ns1 /]# telnet 100.100.100.100 25
Trying 100.100.100.100...
Connected to 100.100.100.100.
Escape character is '^]'.
220 ms1.bear110.com ESMTP Postfix

察看信件佇列資訊
[root@ms1 ~]#
postqueue -p

刪除queue裡面的信
[root@ms1 ~]#
postsuper -d ALL

看登錄檔的內容(寄信的Log檢查)
[root@ms1 ~]#
tail -n 20 /var/log/maillog

檢查IP是否被列入黑名單
http://whatismyipaddress.com/staticpages/index.php/is-my-ip-address-blacklisted

將 /var/spool/mail 整個搬到 /home 底下,並做好連結的動作就可以立即生效啦:
[root@ms1 ~]# cd /var/spool <=先到此目錄底下
[root@ms1 ~]# mv mail /home
[root@ms1 ~]#
ln -s /home/mail mail

需備份的檔案和目錄
/etc/postfix 目錄
/etc/passwd, /etc/shadow, /etc/group, /etc/gshadow 檔案
/var/spool/mail 目錄

沒有留言:

張貼留言