网站刚上线,就被 DDoS 攻击炸了!

今天是一个值得纪念的日子,你打开一罐可乐,看着自己刚刚上线的小网站,洋洋得意。

这是你第一次做的网站,上线之后,网站访问量突飞猛进;没过多久,你就拿到了千万的风投,迎娶了女神,走上了人生巅峰。。。

害,原来是喝醉了啊。。。你发现刚才那一切竟然都是你的幻想!

这时你突然收到了一封邮件:

你:???

虽然你之前就听说过 DDoS 攻击,但没想到这么快就发生在了自己的头上。

DDoS(分布式拒绝服务)攻击是一种通过制造大量恶意流量打向目标服务器,导致其资源耗尽、服务中断或无法正常响应用户请求的网络攻击方式。

曾经你以为,DDoS 没什么可怕的,大不了攻击时网站不提供服务,攻击结束后再重启服务不就好了?

但现实给了你一巴掌,没想到云服务器平台直接把你的服务器 封禁了 12 小时 !你脊背有些发凉了:攻击者只需攻击几十秒,竟然就能让你的服务器老老实实瘫痪半天。

你不甘心,决定运用你学过的专业知识进行反击。

你给服务器程序增加了一个请求 IP 黑白名单,并且能够对每个 IP 的请求频率进行统计,只要发现单个 IP 请求过快过多,系统就会自动把该 IP 拉黑,就不用处理该 IP 的请求了。

你信心满满,又开始了对未来的幻想。。

结果没多久,你又收到了同样的邮件,你的服务器 IP 又被封堵了!而且这次 封禁了 24 小时

坏了,你意识到自己犯了一个错误。DDoS 攻击根本不需要向你的应用程序发送恶意请求,而是可以通过直接发送大量的网络流量(比如 UDP 包、ICMP 请求等)到服务器,从而消耗服务器的带宽和资源。也就是说,攻击的目标是直接影响服务器的网络层和传输层,不需要经过应用层。

那一瞬间,你发如雨下,突然意识到,自己的后端技术学得再好,有什么用?DDoS 来了,自己还是没办法解决。

不过你不甘心,天将降大任于斯人也,必先苦其心志劳其筋骨,伤其服务器。。。你继续搜索防御方案,发现 Cloudflare 提供了免费的、号称不限量的 DDoS 防护服务!于是你满怀希望地将它接入网站。

之后,有些用户访问网站时,就会看到这朵小黄云,减少了机器请求攻击:

这下,你长呼了一口气,让攻击者和 Cloudflare 斗智斗勇吧~

可没想到,接下来的几天,不断有用户反映:猪站长啊,你这网站打开速度也太慢了!

原来免费版本的 Cloudflare 在国内的节点数量有限,要从国外节点加载网站文件,导致国内用户访问速度变慢了。

于是你在网上查了一些攻略,发现有一些开源仓库确实可以找到国内优选的加速节点,但对网络运营商还是有一定限制,而且谁知道这些节点又能撑多久呢?

正当你犹豫不决时,你又又又又又收到了服务器封堵的邮件!

你一脸懵逼:不是已经接入 CloudFlare 防护了么?

等等,攻击者已经知道了服务器本身的 IP 地址,完全可以绕过 CloudFlare,直接攻击到服务器啊!

这就好比你造了一面墙,但攻击者直接绕过去:

你有些头痛了,干脆一不做二不休,花点儿钱上更好的防护服务?于是你上网搜了一下大公司专业的高防服务器,发现价格竟然在几万 ~ 几十万不等!

你看了看自己 “薄如蝉翼” 的钱包,瞬间放弃了这个念头。

你开始怀疑是不是自己选错了方向,或者该做的也许并不是去拼防护,而是去做点儿别的事情?

首先,你想到了切换一个平台作为源站,只要保证服务器不会因为攻击而导致长时间封禁,这样即使被攻击了也能快速恢复。但是换到哪个平台呢?这时你想到了你的好朋友鱼皮,他曾经也用了一些平台,比如 Vercel。但你听说,他当时在 Vercel 上的网站因为被攻击得太严重,直接被平台封禁了账号,属实是老倒霉蛋了。

通过调研,你发现可以使用云托管之类的容器部署平台,可以将应用程序部署到多个不同的节点上,被封禁的概率小了很多。

但治根不治本,你想了想,只要保护好自己的源站服务器 IP 地址不被泄露,是不是就可以了呢?

于是,你更换了个新的服务器 IP。这次,不直接将网站域名解析到服务器 IP,而是接入了一个大厂的 CDN 服务,将域名解析到 CDN 服务,再让 CDN 服务从你的服务器获取网站文件。这样一来,攻击者无法直接得到服务器的 IP 地址,只能看到 CDN 节点的 IP。

CDN 一般是按照流量计费的,不出意外的话,价格比高防可低了太多。

那如果,出意外了呢?

没过几天,你发现自己的云服务账户欠费了!

=

原来,攻击者疯狂请求你的 CDN 盗刷流量,产生了高额的流量费用。

第一次使用 CDN 的你,根本没有料到这点。后来,鱼皮给你推荐了他写过的一篇文章 《我被刷几万元的血泪经验。。。》 ,看完后你才意识到:乱用 CDN,钱包两行泪啊!

这次,你给 CDN 配置了单 IP 访问频率限制、最大消耗流量的限制和自动告警,比如 5 分钟内流量超过 5 G 时,就自动停止 CDN 服务。

这样一通操作之后,你又恢复了些信心。但没想到,接下来等待你的,是一场无休止的攻击循环。

攻击者攻击了你的 CDN => 触发 CDN 的用量封顶防护,自动关闭服务 => 你重新打开 CDN 服务、并且通过 CDN 配置拉黑了之前攻击者的 IP => 攻击者又使用新的 IP 攻击 CDN。。。

 

你的选择

你的故事还没有结束,接下来,你会怎么做呢?

  • A. 怒砸巨款,买一年的 DDoS 安全防护

  • B. 关闭网站,不做了

  • C. 找专业人士求助

  • D. 找警察叔叔求助

  • E. 想办法拉赞助

 

你的结局

A. 怒砸巨款,买一年的 DDoS 安全防护

你决定不再 “省小钱,吃大亏”,干脆砸几万块钱,买一个更加专业的防护服务。你的网站终于在大流量攻击下依然稳定运行,用户也稳定增长,但一年后,你的网站只盈利了不到 1 万,血亏!

B. 关闭网站,不做了

看到 DDoS 攻击一波又一波地袭来,你虽然无数次尝试过调整策略,但身心俱疲,最后你决定放弃,关掉这个网站。

虽然稍有不甘,但你意识到,想一个人做好、运营好网站真的太不容易,你也更加理解鱼皮曾经的感受,选择加入鱼皮,帮他一起开发 编程导航

C. 找专业人士求助

你意识到自己的网络安全知识是缺斤少两的,于是决定请一位专家来帮你做 DDOS 防护。专家跟你说了很多的专业名词和理论,什么零信任架构、IDS、IPS、态势感知、流量清洗、蜜罐之类的,但最终并没有给你实质性的帮助,因为你也没有足够的资金去实现那些理论。

D. 找警察叔叔求助

你认为攻击者已经触犯了法律,于是决定报警。但没想到,由于你并没有受到巨大的金额损失,警方表示对此案件的关注度较低。而且 DDoS 攻击通常是由大量分布在全球各地的受害主机发起的,很难被追踪和定位。

你很难过,但也意识到了,这才是现实。

E. 想办法拉赞助

既然解决不了 DDoS 问题,何不去找找投资者或合作伙伴,拉个 “大力支持” 的赞助?说不定他们会为你提供免费的 DDOS 防护服务呢!

于是,你将网站开源,持续写文章介绍自己的网站。最终被一位年轻的富二代看上,他不仅没有给你提供赞助,还直接让公司的程序员搬走了你的开源代码,自己上线了个网站。

从此,网络上总会看到一个郁郁寡欢的年轻人,嘴里念念有词:“我抄你们码!”

 


 

当然,还有更多的选择和结局,留给评论区的人才们讨论吧~ 如果你喜欢这篇文章的话,记得点赞支持哦!

 

更多编程学习资源

posted @ 2024-12-03 15:00  程序员鱼皮  阅读(2745)  评论(39编辑  收藏  举报