建站3天就被爬?小白10分钟部署免费WAF,再也不怕内容被盗
作为博客园老粉,去年终于下定决心搭建自己的技术博客,用来沉淀Java学习笔记。跟着园友的教程,用腾讯云学生机+宝塔面板搭好Typecho,第一篇《SpringBoot入门实战》刚发布就收获了十几个点赞,心里别提多开心。可没等我沉浸在喜悦里,麻烦就来了——建站第3天,后台突然收到一条读者留言:“博主,你的文章被某平台抄袭了,连代码注释都没改”。
我赶紧去搜,果然发现一篇一模一样的文章,发布时间比我还早2小时。气急败坏地去服务器后台看日志,更吓人的一幕出现了:短短3天,有近200条陌生IP的高频访问记录,其中不乏带着特殊参数的请求。我赶紧请教公司的运维大哥,他看了日志后说:“你这是没装WAF,服务器跟裸奔一样,爬虫和恶意请求随便进。”
“WAF”这三个字母听得我头大,本以为是啥高深技术,得花大价钱请人弄。运维大哥笑着说:“新手不用搞那么复杂,试试雷池社区版,免费还简单,我一步一步教你,10分钟就能装好。”跟着他操作完,博客果然再也没出问题。今天就把这份小白专属教程整理出来,给同样刚建站的园友们避坑。
先给大家用大白话解释清楚:WAF到底是啥?其实它就是网站的“智能门卫”。咱们给服务器开的防火墙,就像小区的大门,能拦外面的陌生人;但WAF是守在单元楼门口的安检员,有人想带着“危险品”(恶意请求)进楼,它能直接拦下来。比如爬虫批量偷文章、用特殊参数篡改内容这些防火墙管不了的事,WAF都能轻松搞定。
新手不用慌,咱们先列好需要准备的东西:一台已部署好网站的服务器(我用的CentOS 7,阿里云、华为云都通用)、一个远程连接工具(新手首推FinalShell,图形化界面不用死记命令)、服务器的公网IP和登录密码。特别提醒:如果你的网站还没搭好,建议先完成建站再弄这个,不然没法测试防护效果哦。
第一步:装个“软件容器”Docker(5分钟)
雷池需要靠Docker来安装,不用纠结Docker是啥,就当它是个“万能安装盒”,能帮咱们快速装好各种软件。首先打开远程连接工具,输入服务器公网IP、用户名(默认一般是root)和密码,点击连接就能看到黑色的命令行界面。
接下来依次输入下面3条命令,每输完一条按回车,等前一条执行完再输下一条(命令我都给大家测过了,直接复制粘贴就行):
1. 安装依赖包:yum install -y yum-utils device-mapper-persistent-data lvm2
2. 配置国内镜像源(下载速度快10倍):yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
3. 安装并启动Docker:yum install -y docker-ce && systemctl start docker && systemctl enable docker
输完第三条命令后,等待1分钟左右,输入docker -v。如果出现类似“Docker version 20.10.17”的文字,就说明Docker装好了。新手如果遇到“权限不够”的提示,就在命令前面加“sudo ”,比如sudo yum install -y docker-ce。

第二步:部署雷池“安全门卫”(3分钟)
这一步更简单,就一条核心命令。在命令行里粘贴下面这句话,然后按回车:docker run -d --name leichi -p 80:80 -v /etc/leichi:/etc/leichi leichi/waf
这里给大家简单解释下关键部分,不用死记,了解就行:“-p 80:80”是把服务器的80端口(网站默认端口)和WAF关联起来,所有访问网站的请求都会先经过WAF检查;“-v /etc/leichi:/etc/leichi”是把WAF的配置存到服务器里,就算服务器重启,之前的设置也不会丢。
等待1分钟后,输入docker ps。如果看到列表里有“leichi”这个名字,而且状态是“Up”,就说明WAF已经在后台运行了。这时候打开浏览器,输入你的服务器公网IP,会看到雷池的登录页面。默认账号是admin,密码是leichi@2024,第一次登录会强制修改密码,建议设置“大写字母+小写字母+数字”的组合,安全性更高。

第三步:给WAF“指路”,关联你的博客(2分钟)
登录后会发现,WAF的界面是全中文的,对新手特别友好。点击左边菜单栏的“网站管理”,再点击“添加网站”,会跳出一个表单,咱们只需要填3个关键信息:
1. 网站域名:填你的服务器公网IP,如果有自己的域名(比如abc.cn),填域名也可以;
2. 服务器地址:填服务器的内网IP,不知道的话,在命令行输入ip addr,找“inet”后面192或172开头的地址就行;
3. 服务器端口:网站默认是80端口,如果装的是Apache,可能是8080,不清楚的话可以去宝塔面板的“网站”栏目里看。
填完之后点击“保存”,系统会自动配置防护规则。如果你的网站是用宝塔面板搭建的,不用改任何配置;如果是手动部署的Nginx,输入nginx -s reload重启一下服务就行。整个过程不用写一行代码,纯鼠标操作就能完成。

新手必做:2个优化设置,防护更安心(1分钟)
部署完别急着关页面,这两个小设置花1分钟弄好,防护效果会翻倍:
1. 开启预设模板:点击左边“防护策略”→“模板管理”,选择“通用网站模板”然后点击启用。这个模板是官方针对博客、资讯类网站优化好的,包含了防爬虫、防篡改等常用规则,不用自己瞎配置;
2. 添加自己为“白名单”:点击“访问控制”→“IP白名单”,把自己常用的IP加进去。这样能避免自己登录博客后台时,被WAF误判为恶意请求拦截。不知道自己IP的话,百度搜“我的IP”就能看到。

效果测试:1分钟确认防护生效
装完怎么确认有用?教大家一个超简单的测试方法:打开浏览器,在你的博客地址后面加“?id=1 and 1=1”,比如“http://你的IP/?id=1 and 1=1”。如果看到“请求被拦截”的提示,说明WAF已经开始工作了。
再去WAF后台的“日志管理”→“拦截日志”,能清晰看到这条测试请求的记录,包括访问时间、IP地址、拦截原因等信息。我当时测试完刷新日志,看到一堆之前被拦截的恶意请求,才知道原来有这么多人在“盯着”我的小博客。
现在我的博客已经稳定运行大半年了,再也没出现过内容被盗、后台被恶意访问的情况。更意外的是,WAF还有静态缓存功能,博客打开速度比之前快了不少,有园友留言说“你的博客加载好流畅,体验比很多大博主的还好”。

作为过来人,我特别懂新手建站时“怕技术太复杂不敢碰安全防护”的心情。但其实安全防护没那么可怕,选对工具就能轻松搞定。雷池社区版不用花钱,操作又简单,就算是完全没接触过代码的小白,跟着步骤也能装成功。
如果大家操作时遇到问题,比如Docker装不上、登录不了WAF后台,欢迎在评论区留言。我把自己踩过的坑和解决方法整理成了文档,咱们一起在博客园交流成长,把博客建好护好,安心分享自己的技术心得~
浙公网安备 33010602011771号