很多老站長都知道,只要網站使用了SMTP發信,無論加了多少層CDN,都會暴露我們的源IP,這樣就會被有心人利用了!關於如何暴露的,在郵件界面查看郵件原文即可!
以下打碼的就是源IP!
那我們如何隱藏呢?有兩種方法,一個是集成第三方郵件代發,技術成本較高,不推薦,需要了解的可以前往張戈博客了解,第二個就是今天技術宅提供的方法,使用Haproxy輕鬆解決SMTP發信伺服器源IP暴露問題!
什麼是Haproxy
Haproxy是一款功能強大、靈活好用反代軟體,提供了高可用、負載均衡、後端伺服器代理的功能,它在7層負載均衡方面的功能很強大(支持cookietrack, header rewrite等等),支持雙機熱備,支持虛擬主機,擁有非常不錯的伺服器健康檢查功能,當其代理的後端伺服器出現故障, Haproxy會自動將該伺服器摘除,故障恢復後再自動將該伺服器加入;同時還提供直觀的監控頁面,可以清晰實時的監控服務集群的運行狀況。
安裝前準備
找一臺伺服器作為中轉伺服器,並且在中轉伺服器中安裝Haproxy,並且需要將郵箱發送的埠加入伺服器安全組或者伺服器防火牆,比如技術宅使用的是465,就將465加入中轉伺服器的安全組策略,或者伺服器本地防火牆中!
安裝Haproxy
在中轉伺服器中安裝Haproxy:
yum -y install haproxy將/etc/haproxy/haproxy.cfg中的內容清空,並添加以下內容:
globalulimit-n 51200defaultslog globalmode tcpoption dontlognulltimeout connect 1000mstimeout client 150000mstimeout server 150000mslisten statusbind 0.0.0.0:1080mode httplog globalstats refresh 30sstats uri /admin?statsstats realm Private landsstats auth admin:passwordstats hide-versionfrontend ssinbind *:465#如果是普通模式,那這裡就填25,如果是SSL模式,就需要填465default_backend ssoutbackend ssoutserver server1 182.254.34.125 maxconn 204800#這裡的IP需要改成SMTP地址的IP,ping一下SMTP域名即可得到地址上面的代碼中國,bind表示郵件埠,如果你是用的是25,請改為25,並將25埠加入中轉伺服器的安全組策略或者防火牆!182.254.34.125是 smtp服務的IP,在伺服器中ping一下即可取得!以上配置完成後,重啟Haproxy並設置為開機啟動:
service haproxy restartchkconfig haproxy on然後登陸我們的web伺服器,把SMTP地址寫進/etc/hosts文件,並且指向中轉伺服器的IP。這裡技術宅使用的是騰訊的企業郵箱,那麼他的SMTP地址應該是smtp.exmail.qq.com:
106.58.21.13 smtp.exmail.qq.com//106.58.21.13為中轉伺服器IP重啟中轉伺服器網絡,
service network restart這樣我們就能成功解決SMTP發信伺服器源IP暴露問題,這裡技術宅需要說的是,配置過程和簡單,但是容易出錯是忘記開放中轉伺服器的埠,所以很多人配置完後不能成功發信!技術宅也是折騰很久才想到需要配置安全組策略,畢竟轉發的埠也需要加白是更古不變的道理!