如何将堡塔云WAF迁移到新的服务器

如何将堡塔云WAF迁移到新的服务器

使用了一段时间的堡塔云WAF,觉得免费版的还是不错的,但是一直在单机运行,没有备份就没有安全感!

今天,星哥就结合实际案例,带你走一遍低风险的 WAF 备份流程,确保你在操作中既有底又高效。

需求分析

1.需要将生产环境的堡塔WAF备份

2.将备份文件拷贝到另外一台服务器中

3.恢复备份文件,实现备份+迁移堡塔WAF的工作。

官方的参考文档:

复制代码
https://www.kancloud.cn/kern123/cloudwaf/3209672

问题在于需要停机备份

复制代码
停止WAF:btw stop

在线服务一秒钟都无法停机,所以现在需要做个不停机、自动的备份方案。

实际操作中可以不停机,数据不会丢失。

服务器环境

两台服务器A 和B

A作为源服务器,将文件和数据库打包备份

B作为目标服务器,将备份文件恢复到此服务器中。

复制代码
A的IP : 192.168.1.3
B的IP : 192.168.1.2

备份文件

打包备份

在A服务器中操作

复制代码
cd /www/ && tar -zcvf cloud_waf.tar.gz cloud_waf

ll -h
total 97M
drwxr-xr-x 7 root root 4.0K Aug  5 17:43 cloud_waf
-rw-r--r-- 1 root root  97M Aug 13 18:11 cloud_waf.tar.gz

下载备份文件 cloud_waf.tar.gz

可以使用 Xftp、Winscp 等工具下载到本地电脑中,然后再上传到新的服务器到 /root 目录

复制代码
scp cloud_waf.tar.gz root@B服务器IP:/root/

目标服务器需要做的步骤

解压

复制代码
tar -zxf cloud_waf.tar.gz
cd cloud_waf
# 查看备份文件
ll
total 5612
-rw-r--r-- 1 root root   65137 Jul 29 17:52 btw.init
-rw-r--r-- 1 root root     347 Jul 29 17:52 btw.service
-rw-r--r-- 1 root root   54595 Jul 29 17:52 cloudwaf_check.sh
drwxr-xr-x 8 root root     155 Aug  4 10:41 console
-rw-r--r-- 1 root root   65575 Jul 29 17:52 master_btw.init
-rw-r--r-- 1 root root   55090 Jul 29 17:52 master_cloudwaf_check.sh
drwxr-xr-x 5 root root      38 Jul 24 14:02 mysql
drwxr-xr-x 5 root root      41 Jul 24 14:02 nginx
-rw-r--r-- 1 root root   65908 Jul 29 17:52 slave_btw.init
-rw-r--r-- 1 root root   42877 Jul 29 17:52 slave_cloudwaf_check.sh
-rw-r--r-- 1 root root 4521218 Jul 29 17:52 submit.gz
drwxr-xr-x 7 root root      92 May 26 15:55 vhost
-rw-r--r-- 1 root root  853792 Jul 29 17:52 waf-acme_sh.zip
drwxr-xr-x 8 root root     138 Aug 13 16:52 wwwroot

建立目录与恢复mysql数据

复制代码
mkdir -pv /www/cloud_waf/nginx/conf.d/waf/

\cp -arpf /root/cloud_waf/nginx/conf.d/waf/mysql_default.pl /www/cloud_waf/nginx/conf.d/waf/mysql_default.pl

mv /root/cloud_waf/mysql /www/cloud_waf/mysql

在目标服务器中安装宝塔云WAF

复制代码
URL=https://download.bt.cn/cloudwaf/scripts/install_cloudwaf.sh && if [ -f /usr/bin/curl ];then curl -sSO "$URL" ;else wget -O install_cloudwaf.sh "$URL";fi;bash install_cloudwaf.sh

注意:这里请忽略显示的登录信息,因为下面会将源服务器的云WAF数据恢复到目标服务器中。

安装成功

安装成功后,等待5秒,停止云WAF

复制代码
sleep 5 && btw stop

等待5秒后,恢复旧云WAF的数据

复制代码
sleep 5 && \cp -arpf /root/cloud_waf/* /www/cloud_waf

注意:查看是否有错误

启动云WAF

复制代码
btw start

显示:
btw start
Starting cloudwaf_nginx...  done
Starting cloudwaf_mysql...  done
Starting ipfilter...    done
Starting bt-cloudwaf... done

验证是否成功

请使用旧的云WAF帐号与密码进行登录,如果忘记了可以使用 btw 10 命令重置密码

检查云WAF功能是否正常?

如何检查:可以检查旧的云WAF有数据的界面,比如

首页概览

拦截日志

操作日志

网站列表

显示有数据,则迁移正常。

最后

堡塔云 WAF 迁移并不复杂,但细节决定成败。提前备份、环境一致是稳妥迁移的三大关键。照着星哥这套流程执行,也能胸有成竹。

相关推荐
love530love30 分钟前
【保姆级教程】阿里 Wan2.1-T2V-14B 模型本地部署全流程:从环境配置到视频生成(附避坑指南)
人工智能·windows·python·开源·大模型·github·音视频
snowfoootball1 小时前
(自用)Linux 常用命令自查文档
linux·运维·服务器
Web极客码1 小时前
在Ubuntu 20.04的服务器上查找的服务器的IP地址
服务器·tcp/ip·ubuntu
墨染 殇雪1 小时前
webshell及冰蝎双击无法打开?
运维·服务器·webshell·webshell管理工具
cxr8282 小时前
Claude Code PM 深度实战指南:AI驱动的GitHub项目管理与并行协作
人工智能·驱动开发·github
逻辑羊驼2 小时前
VSCode+MobaXterm+X11可视化界面本地显示
运维·服务器·ubuntu·3d
Zacks_xdc3 小时前
【前端】使用Vercel部署前端项目,api转发到后端服务器
运维·服务器·前端·安全·react.js
pound1273 小时前
Linux
linux·运维·服务器
@CLoudbays_Martin113 小时前
为什么动态视频业务内容不可以被CDN静态缓存?
java·运维·服务器·javascript·网络·python·php
learning_tom5 小时前
HTML图片标签及路径详解
linux·服务器·php