收藏本站

首页 主机 手机网游 单机手游 手机应用 智能应用 排行榜 专题合集 文章

您现在的位置:首页 ›› 攻略 ›› k73问答

香港独服做CC防护和限流怎么配

时间:2026-11-14 00:43:50 来源:本站整理 作者:testai 热度: 0 次

站点平时好好的,某天开始突然变慢,后台一看带宽跑满、连接数是平时几十倍,日志里同一个路径被反复请求。这种情况多半不是机器不够用,而是有人在拿你的站练手。真要应对,别急着加配置,先把限流和封禁做对,一台中配机器也能顶住大部分骚扰,这篇讲防护落在哪几层、日志怎么留、两档机器怎么挑。

站点平时跑得好好的,某天开始突然变慢,后台一看带宽跑满、连接数是平时的几十倍,访问日志里同一个路径被反复请求。这种情况多半不是机器不够用,而是有人在拿你的站练手。真要应对,别急着加配置,先把限流和封禁做对,一台中配机器也能顶住大部分骚扰。这篇把防护落在哪几层、日志怎么留、两档机器怎么挑讲清楚,都是踩过坑之后总结出来的做法。

被打的时候机器先撑不住的是哪一环

应用层被刷,机器最先撑不住的往往不是 CPU,而是连接数。每个请求都要占一条连接、一份内存和一个文件句柄,几万个并发挂在那里,新用户连握手都排不上队,表现出来就是全站打不开,但你去看进程监控,CPU 可能才三成,磁盘和网络都不忙,唯独服务不可用,这种反差最容易让人误判,很多人第一反应是加内存,加完发现一点没改善。这种情况加核心数没什么用,卡住的是连接跟踪表和内存,把单 IP 连接上限压下去,比换一台更贵的机器见效快得多。

静态资源和动态接口被刷,表现完全不一样。刷图片、刷下载链接,走的是磁盘和出口带宽,网卡曲线先顶到天花板;刷搜索页、刷登录接口,走的是程序进程和数据库,进程池满了就排队,数据库连接打满之后所有查询一起变慢,这时候去看慢查询日志能翻出一堆重复语句,把缓存打开、把重复查询合并,往往比加内存更直接,接口一慢先看查库次数,比看配置单有用。

带宽被打满是最直观的一种。一千兆的端口,理论上一秒一百二十五兆字节,被打满之后正常用户的请求在链路上开始丢包重传,体验是忽快忽慢。要是碰上刷流量型的打法,一天之内把月流量额度跑完,机器没瘫但流量没了,后面几天站点直接不可达,这种损失比宕机更难查,因为监控上一切正常,只有账单和访问量在无声地下滑。

香港独服做CC防护和限流怎么配

限流规则写在哪一层最有效

最外面那层是机房的线路清洗,这部分你控制不了,能做的就是问清楚服务商有没有基础防护、上限是多少。多数便宜档位只承诺带宽,不承诺抗攻击,被打到一定量级直接封机器,这一点挑机器的时候就要问明白,别等出事才发现条款里没有。

系统层是第一道自己能控制的关口。用 iptables 或者 nftables 做单 IP 的连接数上限和新建速率限制,超过的直接丢包不回应,成本最低,效果也最直接。这里要注意内核的 conntrack 表容量,默认值往往只有几万条,被刷的时候先爆的是这张表,日志里会报 table full,把上限调高再配合限速规则才算完整,调完记得把它写进开机脚本,重启之后别丢。

反向代理层是最精细的一层。nginx 的 limit_req 按每秒请求数限,limit_conn 按并发连接数限,两者配合能挡住绝大部分单 IP 高频请求。规则要按路径分,登录、搜索、下单这类接口限得紧,静态资源限得松,一刀切会把正常用户的浏览器并发请求也挡掉,图片一多整页加载就断。

应用层放在整条链路的末端,也是最能区分人和脚本的地方。验证码、短信校验、令牌桶,这些都放在真正花钱或者会写库的入口上,比如注册、评论、下单。对普通浏览页面加验证码是最蠢的做法,用户直接走人,收益还不如在前两层做好限流。

规则按路径分另有一个好处,就是能拿到清晰的误伤数据。某个接口的 429 比例突然冲高,说明阈值定得太紧或者有人在正常使用中被连带,这时候调参数有依据。所有规则上线前先在预发环境跑一遍,把正常业务的峰值请求打出来,再定阈值,别拍脑袋写个十就算完。

白名单一定要留。搜索引擎的抓取地址、自己的监控探活、合作方的回调地址,这些高频但合法的来源必须放行,不然要么收录掉了,要么支付回调失败,损失比被刷还大。白名单按段写而不是按单地址写,运维换机器的时候不至于断掉。

规则跑起来之后要持续观察,看 403 和 429 的占比,看被拦的请求里有多少是真实用户。拦得太狠,转化率会掉;拦得太松,机器照样被打穿。这个平衡点每个站都不一样,只能靠数据慢慢调。

一台机器能扛多少并发请求

并发能力不能只看核数,要看每个请求占多少资源、连接有没有复用。纯静态的请求走 sendfile 直接从内核缓冲区发给网卡,一个进程能扛几千个并发,瓶颈在带宽不在 CPU;动态请求要经过程序解释执行、查缓存、查库,一次请求占几毫秒的 CPU 时间,核数才真正变成上限,内存和磁盘队列也跟着一起被拖慢,只盯一个指标看不出全貌,把这四个数字一起看,判断一台机器够不够只需要十分钟,比看十几页评测帖靠谱得多,也能省下反复换配置的试错成本。同样是两千兆端口,跑纯静态和被刷接口,能撑住的请求量差十倍以上,光看配置单判断容量,十有八九会估错,带上真实流量压一遍才有准确答案。

所以评估一台机器够不够,先把自己的请求画像画出来:静态占比多少、动态接口平均耗时多少、有没有大文件下载。静态为主、日均几千访问的站,入门档就够用,甚至一台小机器加加速节点就能覆盖大半场景,把钱放在带宽和流量上更实在,核数够跑程序就行,多出来的核心大部分时间在发呆;接口复杂、并发上千的站,就要看内存和核数,还要留出打补丁和重启时的切换余量,还要看数据库能不能撑住,不然前端扛住了后端垮了,一样是白搭,防护做得再细也救不回一个被拖死的数据库,这一点在所有压测里都要单独验证一次。

香港独服做CC防护和限流怎么配

日志和封禁名单怎么留

访问日志要保留真实客户端地址。只要前面挂了反向代理或者加速节点,日志里默认记的就是代理的地址,一片内网地址看不出谁在刷。在反向代理里配上取真实地址的模块,从转发头里取值,日志才有分析价值,这一步不做,后面所有封禁都是瞎封。

日志按小时切分,别攒一整天。被刷的时候单小时日志能到几个 GB,一个整天的文件打开和检索都很吃力,切分之后定位到具体时段只要几秒。用系统自带的日志轮转服务配置就行,保留天数按合规要求和磁盘容量定,一般三十天。

统计高频来源和热点路径最快的办法还是命令行。按字段切出来,排序去重数一遍,三十秒就能看出谁在刷;路径同理,能立刻发现被反复请求的是哪个接口或者哪张图。这套命令写成一个脚本,出事的时候一条命令跑完,比上什么可视化面板都快。

封禁名单不要一条条往防火墙里加。几千条规则之后每个包都要遍历一遍链,CPU 直接被吃光。正确做法是用 ipset 建一个集合,防火墙只引用这一个集合,增删都是常数时间,几万条也不卡。名单可以从日志里自动生成,配合定时任务每小时刷新一次。

名单要定期清理。地址是会被重新分配的,今天封掉的过两周可能落到正常用户手上,谁也不希望自己的访客莫名打不开站。设个有效期,比如七天后自动解封,同时保留人工复核入口。

日志本身也是证据。真碰上持续攻击,拿着日志去找服务商申请升级防护或者换地址,比自己硬扛有效得多。日志存得整齐,沟通成本就低,这一点平时不觉得,出事的时候差别很大。

磁盘要留够。日志、备份、镜像都堆在同一块盘上,被刷一周就能把盘写满,写满之后连日志都记不下来。有条件就把日志目录单独挂一块大容量盘,机械盘顺序写的性能足够,价格也便宜得多。

香港独服做CC防护和限流怎么配

三百五和九百这两档怎么挑

小站起步,三百五那档就够用。E5-2630 V2 六核十二线程、32GB 内存、480GB 固态、千兆端口配十 TB 月流量,跑一个企业站或者几个轻量站点完全撑得住,被刷的时候靠着集合封禁和请求限流也能扛住常见量级,这套入门机型可以看云途这档三百五的独服,配置页上端口和流量写得很清楚。

站点有一定流量、接口又多,就该看九百这档。8163 单路、128GB 内存、800GB 固态、两千兆端口配四十 TB 月流量,内存翻四倍带来的是连接表和缓存空间都宽裕,被刷的时候不至于先爆内存;端口翻倍意味着被打满一千兆之后仍有余量让正常请求跑起来,这一点在实际对抗里很关键。

两档的真正差别在内存和流量额度,不在核数。防护吃的是连接跟踪、会话缓存和日志缓冲,都是内存活;流量额度十 TB 对被打的站可能一天就见底,四十 TB 才有腾挪空间,选型时把这两项单独拎出来看,比看核数靠谱。

如果攻击量级大到自己根本接不住,思路要换成把流量分散。找一条带宽更宽的线路做前置,比如十吉比特端口的大带宽机型,把静态资源和下载顶在前头,源站只回源该回的东西,正常访问不受影响,被刷的部分也算不进你的月额度里,这类机器可以看六网这条大带宽线路的档位说明。

预算怎么分配也有讲究。防护做在软件层的部分不花钱,只要肯花时间配;硬件层的余量要花钱,按最坏情况留三成左右的空闲就够,留太多是浪费。把这两块分开算账,比一上来就堆最高配置务实得多。

上防护前先做的几项压测

先压出正常业务基线。用 ab 或者 wrk 从外部打自己的首页和核心接口,逐步加压到响应时间开始明显上升,把那时候的每秒请求数记下来,这就是这台机器的实际容量。没有这个数字,后面所有阈值都是拍脑袋,调紧调松都没依据。

把限流规则打开再压一遍,看 429 的比例是不是只落在超频的那部分请求上。正常并发下一条都不该被拦,如果基线压力下也出现大量 429,说明阈值定得比容量还低,规则要放宽或者按路径细分。

连接跟踪表上限要实测。把并发拉高,看系统日志有没有 table full 的报错,有就调高上限,同时看内存占用涨到什么程度,别把机器压到 swap。这一步经常被漏掉,真出事的时候才发现表比端口先满。

带宽峰值和回源要一起看。压测时同时抓网卡流量和回源日志,确认瓶颈是在出口、在源站还是在磁盘。如果源站本来就慢,前面加多少限流都没用,用户还是等;如果是磁盘随机读跟不上,换固态比加带宽见效快。

报警阈值提前设好。带宽超过八成、连接数超过平时三倍、5xx 比例超过百分之一,这三条报警一定要有,而且要能推到能立刻看到的地方。很多站被打了一整晚没人知道,就是因为报警只发到一个没人看的邮箱。

收尾做一次演练。按照真实故障的顺序走一遍:发现异常、跑统计脚本、生成封禁名单、观察 429 比例、确认业务恢复。整个流程计时,看几分钟能恢复,这个数字比任何配置参数都重要,真出事的时候照着流程走,手不慌。

热门新闻

收藏本站 | 联系我们 | 发展历程 | 版权声明 | 下载帮助 | 广告服务 | 软件提交 | 意见反馈

Copyright 2008-2025 破解游戏排行榜 版权所有 鄂ICP备17000873号

k73所有游戏及软件下载资源均来源自互联网,并由网友上传分享。如有侵权,请来电来函告之。