cloudflare优选域名
利用cloudflare的自定义主机名实现优选cf域名或ip#
需要一个主域名和一个回源域名(用免费域名)
这里分了两步,第一步是托管子域名DNS,第二步是配置回退源,第一步不是必选项,我这里是为了让主域名也托管在cloudflare,下面说的阿里云可以用腾讯云dnspod替代。
1. 托管子域名#
正常的别人的操作是把主域名托管在国内dns解析厂商如dnspod或者阿里云dns,但是为了稳定起见,同时能够快速使用cloudflare的cdn(不使用自定义主机名的话就不能优选),这是主域名还是用cloudflare解析,然后将子域名托管到国内dns厂商
非常简单,如主域名是app.com,在cloudflare新建ns类型的子域名解析,如sub1.app.com,名称服务器填写阿里云的ns服务器地址:
ns1.alidns.com
然后在阿里云dns就可以解析了,他会告诉你“您正在使用独立子域名托管功能”,这么做以后,随时可以给主域名增加使用cloudflare cdn的子域名,如果主域名托管在阿里云,就没办法了。
2. 配置自定义主机名#
先将回源域名添加到cloudflare解析,回源域名随便搞个免费域名,这个不是给用户访问的。比如现在回源域名是tem.com,先做一个A记录到真实服务器,这是最终的访问服务器,如test.tem.com
现在我们将子域名解析到回源域名,刚刚的子域名sub1.app.com已经是阿里云解析了,我们在阿里云dns里可以增加@解析也可以加2级子域名解析,这里用二级子域名做示例,增加一个二级子域名解析如sub2.sub1.app.com(如果是@就是sub1.app.com)cname到刚刚的test.tem.com
然后到cloudflare的回源域名的ssl/tls页面下的自定义主机名页面,首选配置一个回退源,这个只用第一次加的时候需要,后面再增加自定义主机名就不用管了,回退源可以是@记录也可以是A记录,无所谓,只要在dns解析里有就行。然后添加自定义主机名,自定义主机名填用户访问的域名,也就是sub2.sub1.app.com,tls版本建议选至少1.2,证书验证就txt,http验证不知道怎么弄。下面的自定义源服务器选默认就是前面配置的默认回退源,也可以自定义,比如刚才的test.tem.com。
接下来我们需要验证这个自定义主机名,这里是通过阿里云dns的txt解析来验证。注意自定义主机名的条目下有个主机名预验证 TXT 名称和主机名预验证 TXT 值,到阿里云解析里增加txt记录。一共验证2次:第一次应该是_cf-custom-hostname.sub2.sub1.app.com,你在阿里云解析里,只用填_cf-custom-hostname.sub2,第二次是_acme-challenge.sub2.sub1.app.com,这两步应该都有几分钟的延迟,第一次验证完成,主机状态变成有效,证书状态待验证,第二次验证完成后证书状态也变成有效,两个都绿了说明成功了。
验证完成后把txt记录都删了,然后会到自定义主机名页面最下方有个“自定义主机名的 DCV 委派”,记下这个,回到阿里云解析页面,增加一个_acme-challenge.sub2.sub1.app.com的cname记录,记录值和那个页面上面的一致,应该是sub2.sub1.app.com.随机字符串.dcv.cloudflare.com
最后一步就是优选域名啦,前面的工作都是为了这一步,搜索引擎搜索一下cf优选网络,有域名有ip,找个顺眼的,去阿里云解析页面,增加一个cname(如果是优选域名)或者A记录(如果是优选IP),注意解析请求来源选个跟默认不一样的!!不然加不了!一般选国内就行了。
3. 证书配置#
最后还是要做好安全配置,免费证书有两种方式,一个是let's encrypt下发证书,这种方式不说了,网上介绍很多;一种是使用cloudflare的源服务器证书,这个证书只对cloudflare有用,好处是不续签,有效期15年,到回源域名的ssl/tls的源服务器页面,添加一个origin证书即可,域名为sub1.app.com和*.sub1.app.com,然后装到你的服务器上
到这里没完!去主域名和回源域名的ssl/tls页面,把加密模式改成完全(严格),结束!