站点图标 度崩网-几度崩溃

使用Haproxy轻松解决SMTP发信服务器源IP暴露问题[建站教程]

使用Haproxy轻松解决SMTP发信服务器源IP暴露问题[建站教程]

很多老站长都知道,只要网站使用了SMTP发信,无论加了多少层CDN,都会暴露我们的源IP,这样就会被有心人利用了!关于如何暴露的,在邮件界面查看邮件原文即可!

以下打码的就是源IP!

那我们如何隐藏呢?有两种方法,一个是集成第三方邮件代发,技术成本较高,不推荐,需要了解的可以前往张戈博客了解,第二个就是今天技术宅提供的方法,使用Haproxy轻松解决SMTP发信服务器源IP暴露问题!

什么是Haproxy

Haproxy是一款功能强大、灵活好用反代软件,提供了高可用、负载均衡、后端服务器代理的功能,它在7层负载均衡方面的功能很强大(支持cookie trackheader rewrite等等),支持双机热备,支持虚拟主机,拥有非常不错的服务器健康检查功能,当其代理的后端服务器出现故障, Haproxy会自动将该服务器摘除,故障恢复后再自动将该服务器加入;同时还提供直观的监控页面,可以清晰实时的监控服务集群的运行状况。

安装前准备

找一台服务器作为中转服务器,并且在中转服务器中安装Haproxy,并且需要将邮箱发送的端口加入服务器安全组或者服务器防火墙,比如技术宅使用的是465,就将465加入中转服务器的安全组策略,或者服务器本地防火墙中!

安装Haproxy

在中转服务器中安装Haproxy

yum -y install haproxy

/etc/haproxy/haproxy.cfg中的内容清空,并添加以下内容:

global
ulimit-n  51200
defaults
log global
mode    tcp
option  dontlognull
timeout connect 1000ms
timeout client 150000ms
timeout server 150000ms
listen status
bind 0.0.0.0:1080
mode http
log global
stats refresh 30s
stats uri /admin?stats
stats realm Private lands
stats auth admin:password
stats hide-version
frontend ssin
bind *:465
#如果是普通模式,那这里就填25,如果是SSL模式,就需要填465
default_backend ssout
backend ssout
server 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 restart
chkconfig 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暴露问题,这里技术宅需要说的是,配置过程和简单,但是容易出错是忘记开放中转服务器的端口,所以很多人配置完后不能成功发信!技术宅也是折腾很久才想到需要配置安全组策略,毕竟转发的端口也需要加白是更古不变的道理!