本身公司既所有MAIL SERVER, WEB SERVER, 等等都唔係我SET, 好多野都唔知頭唔知路.. 加上自己唔係SERVER依PART強項, 但老闆叫到, 當然要搞埋啦.. MAIL SERVER用LINUX OS, 當中用Postfix來接收MAIL, 問題1: 我們內地公司也是用我們HK SERVER的POP和SMTP 接發MAIL, 但唔知點解, 內地同事接收任何MAIL是完全沒問題, 但寄出MAIL只能寄到HK本公司同事, 而不能寄到其他MAIL ADDRESS, 如: hotmail, yahoo等.. 這個問題係關於mail server setting問題?還是firewall呢? 係咪可以到postfix內的main.cf修改setting?
這明顯是 relay
這明顯是 relay 問題,為了防止被人利用來轉送垃圾郵件,現代大部份 mail server 預設都不傳送來自 local LAN 以外的電郵。意思是說,如果 mail server 收到的電郵收件人不 mail server 負責的 domain (您公司 domain), 除非電郵是來自 local LAN 的電腦 (你公司 Intranet), 否則全都不接收。避免一些無賴找你的 server 便宜,把垃圾郵件投到你 server, 由你 server 傳寄目的地,一來加重你 server 負擔,二來過久了,其他人發覺你的 server 經常被用來 sent 垃圾郵件,就會 ban 了你的 server, 連你公司的 email 都 sent 不到客戶或伙伴了。
解決方法就是在 main.cf 中的 mynetworks 加上你內地公司電腦的 IP address:
mynetworks = 127.0.0.0/8, 192.168.0.0/8, xxx.xxx.xxx.xxx
另外確定 smtpd_recipient_restrictions 的值包括 permit_mynetworks
注意不要放過多 IP 做傳寄,只要你放變公司以人的 IP 做傳寄,沒多久就會被人試到你 server 做了 open relay。
其他相關設定可以參看:
http://www.postfix.org/SMTPD_ACCESS_README.html