失控的防御系统-日出CDN使用文档

除了基础的接入教程等等或许你会需要更详细的其它内容那么你可以看看该文档助你得到更细致的使用体验~

网站管理

新增网站:

新增一个网站:普通用户身份登录后台,点击左侧菜单“网站管理”-“我的网站”进去网站列表,点击工具栏上的“新增”按钮,弹出添加网站窗口。如图:

图片[1]-失控的防御系统-日出CDN使用文档 - 日出资源网-日出资源网
演示图
  • 所属分组 - 可以为空,可以选择一个或多个分组
  • 套餐 - 选择已购买的套餐
  • 域名 - 多个域名已空格分隔
  • 源地址 - 可以为IP,也可以是域名
  • 源端口 - 默认为80

批量添加网站:点击左侧菜单“网站管理”-“我的网站”进去网站列表,点击工具栏上的“新增”按钮,弹出添加网站窗口,在数量栏切换到批量。如图:

图片[2]-失控的防御系统-日出CDN使用文档 - 日出资源网-日出资源网
演示图
  • 所属分组 - 可以为空,可以选择一个或多个分组
  • 套餐 - 选择已购买的套餐
  • 数据 - 格式1:域名|源|源端口,格式2:域名|源,其中格式2的源端口为80,源可以为IP或域名,一行一个网站。
网站编辑:

HTTP设置:

图片[3]-失控的防御系统-日出CDN使用文档 - 日出资源网-日出资源网
演示图
  • 监听端口 - 默认80,也可以监听非80的,如8080,多个端口以空格分隔

HTTPS设置:

图片[4]-失控的防御系统-日出CDN使用文档 - 日出资源网-日出资源网
演示图
  • 证书 - 选择使用的证书,可以在左侧菜单手动添加证书,也可以在网站列表,选中此网站一键申请
  • 监听端口 - 默认443,可以监听其它端口,如8443,多个端口以空格分隔
  • 强制HTTPS - 可定义跳转的端口,默认为监听端口的第一个
  • 回源SSL协议 - 回源使用的ssl协议,可选值有SSLv2, SSLv3, TLSv1, TLSv1.1, TLSv1.2, TLSv1.3

源站设置:

图片[5]-失控的防御系统-日出CDN使用文档 - 日出资源网-日出资源网
演示图
  • 回源协议 - 可选http,https,跟随协议,跟随协议就是访问http的,回源http,访问https,回源https
  • HTTP回源端口 - 回源协议为http时,回源使用的端口
  • HTTPS回源端口 - 回源协议为https时,回源使用的端口
  • 负载方式 - ip hash: 同一个IP,始终分配请求到同一台后端服务器,
    轮询:按顺序一台台分配请求
    url hash:同一个url始终分配到同一台后端服务器
    最少连接数:根据Nginx与后端服务器的连接数,选择最少连接的连接
    随机:随机分配连接到后端。
  • 源地址 - 可以是IP或域名,不过仅支持一个域名,且不能与IP混合使用。
  • 权重 - 数字越大,权重越大
  • 状态 - 可选上线,下线,备用
  • 健康检查 - 对于设置有多台源服务器的情况,可以用来定时检查设置的后端服务器,自动下线或上线后端服务器
    协议:目前只支持http协议的检查,所以回源协议只能是http
    域名:检查后端服务器时,使用的域名
    路径: 默认为/根目录,可以根据具体情况修改
    有效状态码:这里指定后端返回的状态码在此列表的话,认为后端服务器正常,否则认为失败,比如后端返回404的话,就认为后端不正常了。
  • 回源端口映射 - 回源端口跟随访问的端口,如监听了http的81 82端口和监听http2的91 92,访问http://www.abc.com:81/,回源端口为81,回源协议为http;访问http://www.abc.com:82/,回源端口为82,回源协议为http。访问https://www.abc.com:91/,回源端口为91,回源协议为https;访问https://www.abc.com:92/,回源端口为92,回源协议为https。

安全配置:

图片[6]-失控的防御系统-日出CDN使用文档 - 日出资源网-日出资源网
演示图

CC防护

  • 默认防护 - 没有开启规则切换且未触发规则切换时的防cc规则,目前内置的规则有宽松,JS验证,5秒盾,点击验证,滑块验证,验证码、旋转图片。
    宽松模式适用几乎所有场景,不过对于受到大量cc攻击的时候防御效果差。
    JS验证同样需要跳转验证,不过是需要浏览器执行js代码才能得到跳转的URL,不需要人工介入。防御效果很好,推荐网站被攻击时首选使用。
    5秒盾访问时会跳出5秒倒计时,5秒后自动验证浏览器
    点击验证需要人工点击才能访问防御的网站
    滑块验证通过拖动滑动条来验证,防御效果也可以,用户体验影响比验证码损失小
    验证码,是一种最严格的防御手段之一,防御效果最强,不过对用户体验影响大
    旋转图片,需要用户手动旋转正图片,是一种最严格的防御手段之一,防御效果最强,不过对用户体验影响大
  • 自动提升防护等级 - 可以根据网站的QPS来动态切换或恢复规则。适用于当网站没有被攻击时,使用对用户影响较低的规则,比如宽松模式,然后当QPS突然增大到一定值时,可以认为可能被cc攻击了,然后切换到防御更强的规则,比如滑动验证。这样可以较好的平衡用户体验与网站安全这两方面。
  • 自定义规则 - 当默认规则开启了如浏览器识别,滑动验证,验证码等规则时,如果直接调用API,会触发这些防cc规则,导致访问API失败。这时候可以添加例外,放行这些API。
图片[7]-失控的防御系统-日出CDN使用文档 - 日出资源网-日出资源网
演示图
  • 自定义规则分为两部分,一部分是匹配条件,一部分是执行过滤。
    匹配条件分为匹配项、操作符和匹配值。
    1. 支持的匹配项有:IP地址(客户端IP)、域名(访问的域名)、请求URI(如/index.php?page=1),请求URI(不带参数)(会删除参数再匹配,如原始的URI为/index.php?page=1,会删除参数变为/index.php再与匹配值匹配)、请求方法(如GET,POST等)、浏览器UA(如Chrome/111.0.0.0 Safari/537.36)、请求来源(如http://demo.cdnfly.cn/console/index.html)、国家代码(即代表某个国家IP的两位字母,如CN代表中国境内IP,HK代表香港IP,见https://www.iban.com/country-codes)
    2. 支持的操作符有:等于(即与匹配值完全匹配条件才成立)、不等于、包含(要匹配的值包含有匹配值条件就成立,如请求URI为/index.php,匹配值为php的话,条件成立)、不包含、前缀匹配(即从前面开始匹配,如请求URI为/api/index,当匹配值为/api时,条件成立,值为index时,条件不成立)、后缀匹配(即从尾部开始匹配,如请求URI为/api/index,当匹配值为index时,条件成立,匹配值为/api时,条件不成立)、正则匹配(如^/[0-9]+,即匹配以/开头,后面接数字的URI)
  • 3. 匹配值,支持多个,一行一个执行过滤,当条件成立时,执行过滤中选择的动作,如放行,拉黑、5秒盾等

屏蔽设置

  • 屏蔽透明代理 - 一般指的是网址公开免费的HTTP普通代理
  • 屏蔽区域 - 可选择境外和境内屏蔽,可决定是否包括港澳台

黑白名单

  • 爬虫白名单 - 像百度,谷歌之类的爬虫,我们可能需要当开启防cc模式时,不影响它们继续索引网站,可以开启这个功能。
  • 黑名单 - 支持单个IP以及掩码为8,16,24的IP段
  • 白名单 - 支持单个IP以及掩码为8,16,24的IP段

访问控制:

图片[8]-失控的防御系统-日出CDN使用文档 - 日出资源网-日出资源网
演示图
  • ACL规则 - 用来限制特定的客户端访问,比如根据IP,用户代理对用户进行限制访问。acl规则需要预先创建好才能在这里使用。
  • 防盗链 - 在允许的域名输入域名后,只允许这些域名引用此网站的资源,或者可以允许空来源。

回源配置:

图片[9]-失控的防御系统-日出CDN使用文档 - 日出资源网-日出资源网
演示图
  • 回源域名 - 默认为访问的域名,即客户通过www.cdnnb.cn访问网站,回源也使用www.cdnnb.cn,也可以自定义成其它的域名
  • 分片回源 - cdnfly在缓存资源时,为提高存储效率会将文件进行切片存储,并且支持 Range 请求,若请求时携带 HTTP 头部Range: bytes = 0-999,则返回文件的前1000个字节给用户。
    开启 Range 回源配置,若用户请求的部分文件已过期,CDN 会根据用户请求进行分片回源,仅拉取用户需要的部分文件进行缓存,同时返回给用户;关闭 Range 回源配置,即便用户请求的是部分文件,CDN 在回源时仍会拉取整个文件,而后进行缓存,并响应给用户其要求的部分文件。
    开启 Range 回源配置能够有效提高大文件分发效率,提升响应速度,降低源站压力。
  • 回源连接池 - 管理和优化与源服务器之间的连接。它重复使用连接、减轻服务器负载、降低延迟、优化网络资源,提高稳定性和性能。这有助于更快速、可靠地分发内容。

高级配置:

压缩设置

可开启或关闭gzip压缩,并定义需要压缩的文件类型

Websocket配置

开启后,nginx就可以代理websocket的请求了

错误页面配置

支持自定义404和50x页面

源站请求头

即在回源时,附加一个请求头回源。系统默认传X-Real-IP请求头,值为客户端的IP给源服务器。也可以设置其它的请求头,附加客户IP,如

图片[10]-失控的防御系统-日出CDN使用文档 - 日出资源网-日出资源网
演示图

CDN响应头

返回内容给客户端时,增加一个响应头

URL转向

此URL转向功能使用的是Nginx的rewrite模块,更详情的说明参考http://nginx.org/en/docs/http/ngx_http_rewrite_module.html#rewrite

图片[11]-失控的防御系统-日出CDN使用文档 - 日出资源网-日出资源网
演示图
  • 域名端口 - 匹配指定的域名和端口转向。
    输入.*时,匹配所有的域名和端口;
    输入www.cdnfly.cn时,匹配这个域名(不限端口);
    输入www.cdnfly.cn:8080时,只转向当域名为www.cdnfly.cn且端口为8080的情况;
    也支持多个域名,用|分隔,如www.cdnfly.cn|cdnfly.cn,匹配这两个域名(不限端口)。
  • 匹配 - 匹配的URL
  • 转向到 - 跳转到的URL

以下为www.qq.com转到www.baidu.com的示例

图片[12]-失控的防御系统-日出CDN使用文档 - 日出资源网-日出资源网
演示图

自动转向到移动端域名

如当手机浏览器访问www.abc.com时,自动转向到m.abc.com,如图:

图片[13]-失控的防御系统-日出CDN使用文档 - 日出资源网-日出资源网
演示图

User-Agent里填iphone|android|phone|mobile|ucweb|opera\s+mini

缓存配置:

缓存介绍:

此缓存配置是使用Nginx proxy模块,更多的说明请参考http://nginx.org/en/docs/http/ngx_http_proxy_module.html

图片[14]-失控的防御系统-日出CDN使用文档 - 日出资源网-日出资源网
演示图
  • 类型 - 可选后缀名,目录,全路径
    选择后缀名时,内容填写如css|js|png,不区分大小,表示缓存后缀为css,js,png的请求,如http://www.cdnnb.cn/123.css
    选择目录时,内容填写aa|bb|cc,表示缓存如http://cdnnb.cn/aa/11.php,http://cdnnb.cn/aa/22.jsp的请求
    选择全路径时,内容填写/123.css,表示只缓存http://cdnnb.cn/123.css的请求
  • 有效期 - 输入数字,单位可选秒,时,天
  • 忽略参数 - 启用时,忽略url的参数,如/123.css与/123.css?a=1,这两个请求只缓存一份,请求时/123.css,/123.css?a=2,/123.css?b=3都是认为已经缓存了,取与/123.css同样的缓存
  • 强制缓存 - 当想要缓存动态内容时,或者发现设置了缓存但实际没有生效,可以开启这个
  • 不缓存条件 - 设置某一特定的请求不缓存,比如缓存了整个网站除了客户端带指定cookie名为wordpress_logged_in的请求,那么可以变量输入$http_cookie,字符串输入wordpress_logged_in。

实例说明:

缓存wordpress

有一个客户想缓存整个wordpress,除了已经登录的用户,那么可以这样设置。

图片[15]-失控的防御系统-日出CDN使用文档 - 日出资源网-日出资源网
演示图

缓存整个目录,除了一些文件

以下示例是指,缓存整个/foo/目录,但是不缓存目录里面的1.html文件

图片[16]-失控的防御系统-日出CDN使用文档 - 日出资源网-日出资源网
演示图
刷新预热:

刷新缓存:

可刷新具体的URL,也可刷新整个目录下的文件

预热URL:

为了提高缓存命中率和首个用户的访问速度,可以在用户访问之前,先预热下资源

证书管理:

cdnfly可独立的管理所有证书,可自己续期Let's encrypt的证书,查看所有证书的过期时间等。

上传自己的证书:

如图,可以上传自己已经申请好的证书,之后绑定到网站上使用

图片[17]-失控的防御系统-日出CDN使用文档 - 日出资源网-日出资源网
演示图

申请Let's encrypt证书:

如图可申请 www.cdnnb.cn cdnfly.cn的Let's encrypt免费证书,如果不指定DNS API,www.cdnnb.cn和cdnnb.cn需要预先解析到cdnfly的节点。如果指定了DNS API就不需要,DNS API是cdnnb.cn域名所在DNS提供商的API密钥。Let's encrypt支持申请通配符证书,不过只支持dns的验证方式,所以必须指定申请域名的DNS API。

图片[18]-失控的防御系统-日出CDN使用文档 - 日出资源网-日出资源网
演示图

失控的防御系统支持批量申请SSL证书,如图

图片[19]-失控的防御系统-日出CDN使用文档 - 日出资源网-日出资源网
演示图
CC规则:

失控的防御系统的防cc规则主要由三部分组成匹配器,过滤器,动作。

  • 匹配器: 用来匹配用户的请求,可以匹配用户IP,Host,req_uri(带参数),uri(不带参数),user_agent和referer。一个匹配器可以有多个匹配项,添加多个匹配项时,此匹配器所有的匹配项都满足时,这个匹配器才为真。如果匹配了请求,就使用下面的过滤器来对请求进行验证。
  • 过滤器: 用来对客户请求进行验证,比如统计请求数是否超限,是否输入对验证码,是否跳转到正确的URL等,如果验证次数超过指定次数,那么就执行下面指定的动作来拦截。
  • 动作: 当请求无法通过过滤器时,执行相应的动作。

匹配器:

匹配器由匹配项,操作符,匹配值组成。比如匹配项是IP,操作符是=,匹配值是192.168.0.1,表示客户端IP是192.168.0.1才算匹配。

匹配项

图片[20]-失控的防御系统-日出CDN使用文档 - 日出资源网-日出资源网
演示图
  • IP地址 - 客户端IP地址
  • 域名 - 客户请求的域名
  • 请求URI - 请求的url,如/123.php?a=1,保留参数匹配。
  • 请求URI(不带参数) - 去除参数的url,如原始/123.php?a=1,经处理变成/123.php再去匹配
  • 请求方法 - 如GET, POST等
  • 浏览器UA - 浏览器名称,如Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.116 Safari/537.36
  • 请求来源 - 如http://cdn.cdnnb.cn/console/index.html
  • 国家代码 - 由于两位字母表示某个国家的IP地址,比如CN表示在中国网络下请求网站的客户,完整的国家代码列表https://www.iban.com/country-codes

操作符

图片[21]-失控的防御系统-日出CDN使用文档 - 日出资源网-日出资源网
演示图
  • 等于 - 即与匹配值完全匹配条件才成立
  • 不等于 - 参考等于
  • 包含- 要匹配的值包含有匹配值条件就成立,如请求URI为/index.php,匹配值为php的话,条件成立
  • 不包含 - 参考包含
  • 前缀匹配 - 即从前面开始匹配,如请求URI为/api/index,当匹配值为/api时,条件成立,值为index时,条件不成立
  • 后缀匹配 - 即从尾部开始匹配,如请求URI为/api/index,当匹配值为index时,条件成立,匹配值为/api时,条件不成立
  • 正则匹配 - 如^/[0-9]+,即匹配以/开头,后面接数字的URI

过滤器

图片[22]-失控的防御系统-日出CDN使用文档 - 日出资源网-日出资源网
演示图

请求速率

图片[23]-失控的防御系统-日出CDN使用文档 - 日出资源网-日出资源网
演示图


限制客户在一定时间内的总请求次数。可以限制总的URL请求数,也可以限制同一个URL累积的请求数

302跳转

当客户请求cdnfly节点时,cdnfly会302返回一个url,客户跟随访问这个URL才算验证通过,否则算失败。

浏览器识别

客户请求cdnfly节点时,cdnfly返回一段带跳转功能的js代码,客户跟随访问这个URL才算验证通过,否则算失败。

滑动验证

客户请求cdnfly节点时,cdnfly返回一个滑动条,客户需要拖动滑动条才算验证通过,否则算失败。

验证码

客户请求cdnfly节点时,cdnfly返回一个验证码,客户需要输入正确的验证码提交才算验证通过,否则算失败。

URL鉴权

url鉴权过滤器适用时API类防cc攻击。需要与客户端配合,cdn定义一个密钥,客户端md5如uri,时间戳,随机数,密钥,得出的值传给cdn验证,验证失败到一定次数将拉黑这个IP。URL鉴权提供两种鉴权方式,A和B。

方式A
URL格式为http://DomainName/img/FileName?sign=md5hash&t=timestamp
timestamp为当前时间戳,如1598342331(签名用的时间戳与参数t的时间戳需要一致),md5hash为md5(密钥uri时间戳),其中密钥为在cdn定义好的密钥,uri为不带参数的路径,且要转为小写再做md5,如/img/filename,时间戳为1598342331(精确到秒就行)
方式A的设置如下
n秒内,最大失败次数 - 即如果在60秒内,验证失败超过5次的话,拉黑IP
鉴权方式 - 这里选TypeA
密钥 - 与其它数据一起md5得到的hash,客户端同样使用这里定义的密钥来md5
签名参数名 - 默认为sign
时间戳参数名 - 默认t
最大时间相差(秒) - 允许上下相关多少秒,超过此范围签名认为无效
签名使用次数 - 带同一个签名的url允许访问的次数,0为不限制,越过限制则拉黑IP

图片[24]-失控的防御系统-日出CDN使用文档 - 日出资源网-日出资源网
演示图

方式B
URL格式为http://DomainName/img/Filename?sign=timestamp-rand-uid-md5hash
timestamp为当前时间戳,如1598342331,rand为随机字符串(只需要取一次,之后都是用这个),uid用户id暂时不用,设置为0,md5hash为md5(uri-时间戳-随机字符串-uid-密钥),uri转为小写再md5,md5的计算包含连接符-
方式B设置如下:

图片[25]-失控的防御系统-日出CDN使用文档 - 日出资源网-日出资源网
演示图


方式B与方式A的设置不一样的方式在于,方式B不需要传时间戳的参数,因为已经包括在签名参数里了。
其中的设置与方式A一样。

点击验证

一个点击验证页面,只有点击了进入按钮才可访问下一步网站内容

动作

ipset

使用iptables的ipset模块拦黑ip,拉黑IP后,此IP不再能够消耗资源,效果最好

exit

cdn自己主动断开连接,此IP还是能够与cdn建立连接来消耗资源

log

不拦黑,不断开,一直使用过滤器过滤

规则

规则由匹配器,过滤器,动作组成。

图片[26]-失控的防御系统-日出CDN使用文档 - 日出资源网-日出资源网
演示图


这里需要说明的是可以指定一个或两个过滤器。
当指定一个过滤器时,当这个过滤器验证失败时,直接执行动作;
当指定两个过滤器时,即指定过滤器1和过滤器2,那么当过滤器1验证失败,这时还不会执行动作,而是继续使用过滤器2验证,只有当两个过滤器都验证失败时,才执行动作。这样可以有效减少误封,比如过滤器1使用请求频率,过滤器2使用滑动验证,这样可以防止误封请求量比较大的客户。

规则组

一个或多个规则组成一个。网站就是绑定的规则组。

ACL管理:

ACL是对客户访问控制的规则,当客户请求匹配规则时,会返回403。ACL与cc规则类似,只是ACL没有过滤器,而是直接匹配后执行相应的行为,允许或拒绝。

ACL规则组

图片[27]-失控的防御系统-日出CDN使用文档 - 日出资源网-日出资源网
演示图
  • 默认行为 - 可选允许或拒绝,当所有规则没有匹配时,执行默认行为。
  • 规则列表 - 按顺序一条条匹配,直到匹配才中止,没有匹配就执行默认行为

ACL规则

图片[28]-失控的防御系统-日出CDN使用文档 - 日出资源网-日出资源网
演示图

ACL规则的匹配项和操作符跟CC规则的基本一样,具体说明请参考CC规则
规则支持设置多个匹配项,当设置多个匹配项时,只有所有匹配项匹配成功,这个规则才算匹配。

四层转发(端口转发)

新增转发:

四层转发支持TCP和UDP协议的转发,支持访问控制,支持连接数限制等。

新增单个转发

图片[29]-失控的防御系统-日出CDN使用文档 - 日出资源网-日出资源网
演示图
  • 监听端口 - 支持三种格式88 88/udp 88/tcp,如果不带协议,默认是tcp,多个端口以空格分隔
  • 源IP - 目录仅支持IP,不支持域名
  • 源端口 - 任意端口

批量添加转发

图片[30]-失控的防御系统-日出CDN使用文档 - 日出资源网-日出资源网
演示图

格式为: 监听端口|IP|回源端口
如:
88 99|1.2.3.4|8080
88/tcp 99/udp|1.2.3.4|8080

转发编辑:

监听设置

图片[31]-失控的防御系统-日出CDN使用文档 - 日出资源网-日出资源网
演示图

可删除或添加监听端口

源站设置

参考网站编辑

单IP连接数限制

图片[32]-失控的防御系统-日出CDN使用文档 - 日出资源网-日出资源网
演示图

限制单个IP同时发起的连接数限制

ACL

图片[33]-失控的防御系统-日出CDN使用文档 - 日出资源网-日出资源网
演示图

目前仅支持基于客户端的IP访问控制

失控的防御系统简单教程介绍:不避免或许并不喜欢看这么多的文档内容所以你也可以看看以下文章~

注意 1 本网站名称:日出资源网
2 本站永久域名:www.rnmcnm.com
3 如图片或链接或内容失效等问题请联系站长或评论区留言,我每天都在线以效率为主更新~
© 版权声明
THE END
喜欢就支持一下吧
点赞7 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容