原文网址:解决网站发邮件导致IP泄露的问题_IT利刃出鞘的博客-CSDN博客
简介
本文介绍解决网站发邮件导致IP泄露的问题。
问题描述
网站一般都会加发邮件功能,比如:用户注册时使用邮箱注册,通过邮箱验证码验证;给用户批量发送邮件通知。但是,这样是会暴露你服务器真实ip!
常用的邮箱,比如:QQ、163、139、189、新浪等,发送的邮件中都会夹带着发送者的IP地址。点击显示邮件原文(或者源代码)就能显示发送端的IP地址,比如,下图是163邮箱发给QQ邮箱的:
从上图可以看到,服务器的真实ip被暴露了!上边是服务器使用STMP发送的邮件,如果我们个人发送邮件,也会夹带发送邮件的设备的ip!
解决方案
- 使用发邮件平台(推荐)
- 推荐阿里云邮件推送,每天200个免费邮件,适合中小网站,不够可以充值,很便宜。
- SendCloud也可以,但是每天10个免费邮件,而且配置比较麻烦。
- 自己搭建一个邮件平台。
- 成本有点大,而且很多服务商都禁止了发邮件端口。
- 利用代理隐藏IP
- 网上用的比较多的就是haprxoy,安装有点复杂
本文展示服务器使用阿里云邮件推送这种方式。
(如果不是用服务器,是个人手动发邮件,可以用阿里邮箱个人版、Gmail,它们不会夹带ip。这两者都很难在服务器上使用,因为阿里邮箱的个人版不能用代码发送邮件,企业版才行(要付费),Gmail国内有很多限制)。
设置阿里邮件推送
1.开通邮件推送
2.设置发信域名
填写邮件域名,建议使用二级域名
设置DNS,用于验证域名
设置DNS解析,如下图中的指示,到DNS解析处把它配置上即可
添加完DNS解析记录,回到阿里云后台,点击“验证”,返回“验证通过”说明解析生效:
3.设置发信地址
1.创建发信地址
选择刚才添加的发信域名,然后输入你要使用的账号,输入回信地址,选择发信类型:
发信类型有:
- 触发邮件:注册确认、订单确认、密码重置、交易通知等
- 批量邮件:自有用户的产品促销、期刊订阅等
但是有些用户反馈,触发邮件方式不太稳定,建议选择批量邮件。
发信频率限制为5000次/180秒,同时疲劳度控制(同一个发信人对同一个收信人的发信频率)限制为50次/300秒。
3.验证回信地址,设置STMP密码
上一步添加完后会返回到界面,点击“验证回信地址”,然后会发送邮件到你的回信地址,到你的邮件箱点击邮件的链接验证通过即可(验证邮件可能在垃圾箱里)。然后设置SMTP 密码。
设置SMTP 密码
写到邮件配置
将阿里邮件推送信息写到邮件配置。
测试
使用上边配置好的阿里邮件推送,发邮件给qq邮箱,查看邮件原文中不夹带服务器真实ip。