编者注:本文仅供学习研究,严禁从事非法活动。
前期准备
一个干净的域名
一台VPS
一个CloudFlare账号
CloudFlare配置
Cloudflare 是一家国外的 CDN 加速服务商,提供免费和付费的加速和网站保护服务,百度云加速的国外节点就是和 Cloudflare 合作使用的 Cloudflare 的节点。
**此方法需要CloudFlare Partner渠道**
目前可用的几个免费加速渠道如下(如需稳定请自行购买Partner账号搭建):
https://cf.cloudraft.cn/
https://cdn.wx.mk/
https://cf.515188.xyz/
首先登录CloudFlare官网,按照提示使用NS接入免费版本的套餐,等待生效即可。
接着使用CloudFlare登陆第三方CloudFlare Partner管理面板,如果接入成功邮箱会有提示。
成功接入后进入管理后台,会显示已经接入的域名,如果没找到域名或未激活请耐心等待NS解析生效,显示已激活就是成功了。
接着进入**管理DNS**页面,在这里添加你的真实C2服务器IP地址并打开加速。
至此,第一阶段的配置就结束了。
DNSPOD配置
DNSPod 建立于2006年3月份,是一款免费智能DNS产品。DNSPod 可以为同时有电信、联通、教育网服务器的网站提供智能的解析,让电信用户访问电信的服务器,联通的用户访问联通的服务器,教育网的用户访问教育网的服务器,达到互联互通的效果。
注册好账号后,增加DNS解析,将域名接入到DNSPOD,按照提示更换为DNSPOD的NS地址(从CloudFlare的NS地址更换为DNSPOD的NS地址),并设置分区域解析。
将境内IP解析到A记录1.1.1.1
将境外IP解析到CNAME记录xxx.com.cdn.cloudflare.net.
(这一步不能省略,非常重要!)
比如你的上线地址为eval.com,那么对应的境外要解析CNAME为eval.com.cdn.cloudflare.net.
这么做的原因是CloudFlare在接入后,只会对域名所解析的IP进行验证,并不会对NS进行验证。根据这一漏洞,可以在配合DNSPOD利用分区域解析,将指定地区的IP解析为你想要的IP(有点绕口,多读几遍)。CloudFlare一般都在境外验证,如果发现你滥用解析可能会封禁你的域名,所以只要保证境外是正常解析到CloudFlare的指定CNAME即可。
由于CloudFlare的IP均为AnyCast IP,所以理论上只要是CloudFlare的IP我们都可以进行指定解析,其中1.1.1.1为CloudFlare Public DNS 的IP,这里我们测试解析到1.1.1.1。
接着坐等生效即可,稍等片刻全国ping一下,境内解析到1.1.1.1,境外解析到其他ip,说明就是成功了。
CS配置
设置监听器,选择Beacon HTTP 或者 Beacon HTTPS ,那么对应的端口就是80或者443,HOST填你的上线域名。
接下来就是见证奇迹的时刻,成功上线,且流量全部走1.1.1.1:443。(图中listener虽为80,但是实际走的是443,可能是显示BUG)
可能遇到的坑
01配置好了但是不上线
可以先在VPS开一个HTTP/HTTPS服务,测试HTTP服务是否正常,如果异常请检查前两个步骤是否配置成功。如果HTTP测试正常,但是CS不上线,极大的可能性为CloudFlare缓存问题,请去CloudFlare官网关闭缓存,并且关闭强制HTTPS,最好能配合CS的profile使用。
02上线不稳定,有时能用有时不能用
本地测试能上线,实战不能上线原因就是,有些企业内网可能将1.1.1.1划为内网或者设为交换机IP,所以这种情况当然上不了线。
解决办法:将1.1.1.1换为其他CloudFlare节点IP,比如1.0.0.1。
03上线机器外网IP不对,无法获取外部信息
因为是CDN的缘故,猜测不仅是不对,并且会频繁变动吧。
解决方法:Nginx反代配置X-Forword信息,同时在profile设置。
04我不想使用80/443,我能不能使用其他端口?
可以,但是只能使用Beacon HTTP或Beacon HTTPS两种上线模式。
HTTP可用端口:80,8080,8880,2052,2082,2086,2095
HTTPS可用端口:443,2053,2083,2087,2096,8443