CloudFlare官方免费CNAME接入教程

从2021年11月开始,CloudFlare禁用了Partner使用的zone_setAPI以避免滥用(因为该API接入不需要验证域名所有权),通过Partner实现CNAME接入的方式近乎落幕,仅剩Plesk空间存量的ServerShield by Cloudflare插件订阅能够正常接入。几个月过去了,官方也并没有对未来合作伙伴如何进行接入新域名给出任何解释。

错过了Partner的时代,官方的CloudFlare for SaaS也提供了一种更灵活的CNAME接入方式,一起来看看吧。


一、功能简介

CloudFlare for SaaS不是个新功能,这里单独拿出来讲,主要是几天前CF调整了一波免费额度。过去是每个域名收取2USD/月的费用,现在不仅提供100个域名免费额度,而且超额后每个域名仅按0.1USD/月收取费用,非常良心。

官方公告https://blog.cloudflare.com/waf-for-saas/

CloudFlare中一个完全接入的域名即为一个zone,点进去包括套餐、安全等等都是针对这一主域名配置的。官方SaaS功能针对的是你服务的客户,开放这项功能允许使用他们自己的域名直接附加在你的zone里,享受你zone包含的安全、加速等功能。

说起来可能不是很直白,这里举几个应用场景的例子:

应用场景1a.com通过NS接入了CF,b.com未接入CF;可以通过SaaS功能实现1.b.com/2.b.com等直接附加在a.com上,通过CNAME指向CF的节点。

应用场景2a.com通过Plesk接入了CF,具有免费的Plesk Plus版本,b.com未接入CF或使用的免费版;可以通过SaaS功能实现1.b.com/2.b.com等直接附加在a.com上,享受a.com域名下的ECC+RSA双证书、页面规则、高级防火墙权益。

简而言之,可以通过这项功能,实现其他域名的CNAME接入以及对zone权益的共享,有兴趣的话,接着往下看吧~


二、配置接入

订阅CloudFlare for SaaS

打开一个域名,选择【SSL/TLS】下的【自定义主机名】,点击【启用CloudFlare for SaaS】后根据指示绑定外币卡或者PayPal,订阅CloudFlare for SaaS功能。

CloudFlare for SaaS订阅本身是针对整个计费账户的,所以通过Partner接入的域名出现【请联系客户成功经理以启用适用于SaaS的SSL】时,只需要选择个通过官方NS激活的域名启用订阅后即可使用。这里猜测可能是Partner接入的商务权限交给了合作伙伴,方便下放优惠和服务那些,我们绕过去就行了。

激活页面中文翻译比较滞后,从英文的可以看到免费额度已经进行更新,可以放心使用。

设置源站

选择一个承载的域名zone点进去,依然是【SSL/TLS】下的【自定义主机名】,首先要设置附加上域名的源站。在这之前要在承载的域名zone中设置一个子域名作为源站的来源,比如origin.a.com,在Partner或者官方DNS设置好它的源站(注意是是在CF里添加,和正常添加网站的流程一样)。

SaaS这里的源站叫回退源(Fallback Origin),输入刚才设置的子域名并点击【Add Fallback Origin】,它会同步这个子域名设置的源站作为后续在此接入域名的源站。有些人就会问了,这样设置那不是后续SaaS添加的所有其他域名就只能用同一个源站了?答案确实是这样,为每个SaaS域名自定义源站需要Enterprise以上套餐,有多域名需求多开几个zone吧(苦笑)。

添加自定义主机名

后续的工作就很简单了,点击【添加自定义主机名】,输入你要添加的未在CF接入的子域名。建议直接选择TXT验证,因为除了证书还有另一条TXT记录要添加,一起加上去比较方便。

验证域名所有权

添加完成后,按要求解析证书和主机名两个TXT记录,解析生效后10分钟左右即可验证通过,到此这个SaaS域名就正确的添加到了你的zone中并接入了CF。

特别提醒,如图这里CF给出的验证TXT名称是应完整域名的解析记录,所以在自己的第三方DNS配置的时候,填入的主机名应当是example_cf-custom-hostname.example,如果直接复制框内的内容把根域名b.com填进了主机名全域就变成了example.b.com.b.com了,是错误的。配置完成之后你可以通过直接复制的域名来检查TXT记录是否匹配,推荐MySSL的工具(点击前往)。

经过测试,不论以何种方式验证并签发证书,只要保持SSL正确指向CloudFlare,系统就能够在到期前一个月自动为你续期证书,无需进行手动的操作。相应的,SaaS页面Certificate validation method也会变成HTTP Validation

SaaS域名解析

添加进去的SaaS域名,CF并不会给你提供明确的CNAME供指向。如果是官方接入的可以直接CNAME到你刚刚设置的源站域名比如origin.a.com,通过Partner接入的直接解析到源域名对应的CNAME比如origin.a.com.cdn.cloudflare.net即可。其他的配置比如分线路解析、自选IP就可以按照自己的喜好去设置了,在此不过多赘述。

此外,对于防火墙规则、页面规则,直接将添加进的域名输入其中即可圈定范围,完成对于其细则的设置。


三、结语

CloudFlare for SaaS是官方提供的一项非常方便的免费功能,弥补了早期未通过Partner接入只能强制NS接入的缺憾。有官方保障、灵活CNAME、免费的优点,也有源站不灵活等缺点,肯定还是不如已经通过Partner/Plesk接入的域名灵活。

〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓

配置 CNAME 接入

在配置之前,您需要准备两个域名以及PayPal账号:

septem.cc : 此域名需要通过 NS 的方式接入CloudFlare
sep.cc : 此域名即为你需要加速的域名。

一、设置回源域名

在配置 CNAME 接入之前,需要设置回源所需的域名。

在DNS选项中,设置一个自定义的接入CloudFlare的二级域名(即文中提到的 septem.cc 设置一个二级域名解析到你的网站IP),解析至需要回源的 IP 或域名,并且打开 CloudFlare 的代理)。

注:上图红框中的8.8.8.8为你源服务器的IP,切忌一定要填写正确,并打开橙色的代理状态!!!

二、开通CloudFlare for SaaS

打开网站配置页面,并且找到 SSL/TLS 下的自定义主机名。

订阅 CloudFlare for SaaS 需要绑定外币信用卡或 PayPal,个人建议绑定PayPal(此过程不会发生扣费)

  • 由于之前已经开通过了,所以无法演示,根据提示进行操作即可。

然后打开 SSL/TLS 下的自定义主机域,在回退源中,填写设置好的域名,并且点添加回退源,等待生效。

三、此时即可增加需要 CNAME 接入的域名

点击添加自定义主机名,输入你需要接入的域名,并且选择TLS版本以及证书验证方式即可,点击添加自定义主机名。

验证域名所有权

添加完成后,按要求解析证书和主机名两个TXT记录,解析生效后10分钟左右即可验证通过,到此这个SaaS域名就正确的添加到了你的zone中并接入了CF。

注:如图这里CF给出的验证TXT名称是应完整域名的解析记录,所以在自己的第三方DNS配置的时候,填入的主机名应当是sep.cc_cf-custom-hostname.sep.cc,如果直接复制框内的内容把根域名sep.cc填进了主机名全域就变成了example.sep.cc.sep.cc了,是错误的。配置完成之后你可以通过直接复制的域名来检查TXT记录是否匹配,推荐MySSL的工具(点击前往)。

SaaS域名解析

添加进去的SaaS域名,CF并不会给你提供明确的CNAME供指向。

可利用国内DNS解析可以直接CNAME到你刚刚设置的源站域名比如:

sep.cc CNAME记录指向 cname.septem.cc

就不再赘述如何解析了,在第三步添加域名的时候可以添加根域名以及二级域名,只要在国内DNS解析的时候验证好TXT记录即可,别忘了在源服务器上建立一个跟你添加的域名相匹配的网站!

CloudFlare for SaaS是官方提供的一项非常方便的免费功能,弥补了早期未通过Partner接入只能强制NS接入的缺憾。有官方保障、灵活CNAME、免费的优点,相比第三方,数据保存在自己的手上更加安全。

发表评论 / Comment

用心评论~