阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

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

623次阅读
没有评论

共计 4007 个字符,预计需要花费 11 分钟才能阅读完成。

如何将堡塔云 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

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

备份文件

打包备份

在 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 数据恢复到目标服务器中。

安装成功

如何将堡塔云 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 有数据的界面,比如

首页概览 拦截日志 操作日志 网站列表

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

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

宝塔云的 mysql 密码

一开始备份想要做文件和 mysql 数据库的分开备份,就要知道 mysql 的密码,查找了很久终于找到了

查找 mysql 密码

cd /www/cloud_waf
vi ./cloudwaf_check.sh

check_database=$(docker exec -i $MYSQL_NAME mysql -u root -p"$MYSQL_PASS" -e "SHOW DATABASES LIKE'btwaf';" 2>&1)
找到 MYSQL_PASS 的关键字
MYSQL_PASS="$PASS_config"

PASS_config 又是什么,搜索一下


PASS_config=$(cat $setup_path/nginx/conf.d/waf/config/config.json | sed -nE 's/.*"password":\s*"([^"]*)".*/\1/p')
把  $setup_path 改成服务器路径:

PASS_config=$(cat /www/cloud_waf/nginx/conf.d/waf/config/config.json | sed -nE 's/.*"password":\s*"([^"]*)".*/\1/p')

[root@node2 cloud_waf]# echo $PASS_config
e7ddd5e2XXXXXXXXXXX (就是 mysql 的密码)

登录 mysql

试着登录一下 mysql,进入容器登录 mysql

[root@node2 cloud_waf]# docker exec -it cloudwaf_mysql /bin/bash
bash-4.4# 
bash-4.4# 
bash-4.4# mysql -p
输入刚才的密码
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 389132
Server version: 8.1.0 MySQL Community Server - GPL

Copyright (c) 2000, 2023, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

新增一个远程 mysql 账号

使用以下命令:

创建管理员账号(密码要尽量设置复杂,我是本地测试的所以设置 123456):

CREATE USER'star'@'%'IDENTIFIED WITH mysql_native_password BY'123456';

授予管理员权限:

GRANT ALL PRIVILEGES ON *.* TO'star'@'%' WITH GRANT OPTION;

刷新权限:

FLUSH PRIVILEGES;

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

验证一下是否可以远程登录

mysql -u'star'-h'192.168.1.2'-P'33060'-p'123456'
ERROR 2002 (HY000): Can't connect to MySQL server on'192.168.1.2' (115)

居然远程报错, 把防火墙放开

firewall-cmd --zone=public --add-port=33060/tcp --permanent
firewall-cmd --reload

[root@node2 cloud_waf]# iptables -L -n|grep 3306
ACCEPT     tcp  --  0.0.0.0/0            172.17.0.2           tcp dpt:3306
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:33060 ctstate NEW,UNTRACKED

端口已放开,还是不能远程连接 mysql。

端口也放开了、重启了 mysql 才可以远程连接 mysql 了

systemctl restart docker

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

再就可以使用 mysqldump 等数据库备份工具备份数据库。

用 Navicat 查看数据表:

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

端口放开 33060,生产环境要慎用,密码一定要复杂的!

最后

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

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2025-08-15发表,共计4007字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中

星哥玩云

星哥玩云
星哥玩云
分享互联网知识
用户数
4
文章数
19350
评论数
4
阅读量
7957053
文章搜索
热门文章
星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...
星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛 NAS-3:安装飞牛 NAS 后的很有必要的操作 前言 如果你已经有了飞牛 NAS 系统,之前...
我把用了20年的360安全卫士卸载了

我把用了20年的360安全卫士卸载了

我把用了 20 年的 360 安全卫士卸载了 是的,正如标题你看到的。 原因 偷摸安装自家的软件 莫名其妙安装...
再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见 zabbix!轻量级自建服务器监控神器在 Linux 的完整部署指南 在日常运维中,服务器监控是绕不开的...
飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛 NAS 中安装 Navidrome 音乐文件中文标签乱码问题解决、安装 FntermX 终端 问题背景 ...
阿里云CDN
阿里云CDN-提高用户访问的响应速度和成功率
随机文章
每天一个好玩的网站-手机博物馆-CHAZ 3D Experience

每天一个好玩的网站-手机博物馆-CHAZ 3D Experience

每天一个好玩的网站 - 手机博物馆 -CHAZ 3D Experience 一句话介绍:一个用 3D 方式重温...
告别Notion焦虑!这款全平台开源加密笔记神器,让你的隐私真正“上锁”

告别Notion焦虑!这款全平台开源加密笔记神器,让你的隐私真正“上锁”

  告别 Notion 焦虑!这款全平台开源加密笔记神器,让你的隐私真正“上锁” 引言 在数字笔记工...
每年0.99刀,拿下你的第一个顶级域名,详细注册使用

每年0.99刀,拿下你的第一个顶级域名,详细注册使用

每年 0.99 刀,拿下你的第一个顶级域名,详细注册使用 前言 作为长期折腾云服务、域名建站的老玩家,星哥一直...
我用AI做了一个1978年至2019年中国大陆企业注册的查询网站

我用AI做了一个1978年至2019年中国大陆企业注册的查询网站

我用 AI 做了一个 1978 年至 2019 年中国大陆企业注册的查询网站 最近星哥在 GitHub 上偶然...
150元打造低成本NAS小钢炮,捡一块3865U工控板

150元打造低成本NAS小钢炮,捡一块3865U工控板

150 元打造低成本 NAS 小钢炮,捡一块 3865U 工控板 一块二手的熊猫 B3 工控板 3865U,搭...

免费图片视频管理工具让灵感库告别混乱

一言一句话
-「
手气不错
星哥带你玩飞牛 NAS-10:备份微信聊天记录、数据到你的NAS中!

星哥带你玩飞牛 NAS-10:备份微信聊天记录、数据到你的NAS中!

星哥带你玩飞牛 NAS-10:备份微信聊天记录、数据到你的 NAS 中! 大家对「数据安全感」的需求越来越高 ...
星哥带你玩飞牛 NAS-9:全能网盘搜索工具 13 种云盘一键搞定!

星哥带你玩飞牛 NAS-9:全能网盘搜索工具 13 种云盘一键搞定!

星哥带你玩飞牛 NAS-9:全能网盘搜索工具 13 种云盘一键搞定! 前言 作为 NAS 玩家,你是否总被这些...
星哥带你玩飞牛NAS硬件03:五盘位+N5105+双网口的成品NAS值得入手吗

星哥带你玩飞牛NAS硬件03:五盘位+N5105+双网口的成品NAS值得入手吗

星哥带你玩飞牛 NAS 硬件 03:五盘位 +N5105+ 双网口的成品 NAS 值得入手吗 前言 大家好,我...
国产开源公众号AI知识库 Agent:突破未认证号限制,一键搞定自动回复,重构运营效率

国产开源公众号AI知识库 Agent:突破未认证号限制,一键搞定自动回复,重构运营效率

国产开源公众号 AI 知识库 Agent:突破未认证号限制,一键搞定自动回复,重构运营效率 大家好,我是星哥,...
让微信公众号成为 AI 智能体:从内容沉淀到智能问答的一次升级

让微信公众号成为 AI 智能体:从内容沉淀到智能问答的一次升级

让微信公众号成为 AI 智能体:从内容沉淀到智能问答的一次升级 大家好,我是星哥,之前写了一篇文章 自己手撸一...