2023年如何通过宝塔面板部署wordpress并部署waf
字数 1974 2025-08-10 19:49:08

通过宝塔面板部署WordPress并配置WAF防火墙详细教程

一、技术选型与准备工作

1.1 技术选型理由

  • 宝塔面板

    • 提供可视化操作界面,降低运维难度
    • 内置大量开源网站模板
    • 支持快速部署常见Web应用
  • 雷池社区版WAF

    • 商业产品的开源版本,效果有保证
    • 有活跃的社区讨论群和官方技术支持
    • 提供完善的中文文档支持

1.2 环境准备

  • 服务器配置建议:2核CPU、4GB内存、100M带宽
  • 操作系统:支持CentOS、Ubuntu等主流Linux发行版
  • 域名准备(可选):如无域名可直接使用服务器IP访问

二、宝塔面板安装与配置

2.1 安装宝塔面板

  1. 执行官方安装命令(根据系统选择对应命令):

    # CentOS
    yum install -y wget && wget -O install.sh https://download.bt.cn/install/install_6.0.sh && sh install.sh ed8484bec
    
    # Ubuntu/Debian
    wget -O install.sh https://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh ed8484bec
    
  2. 安装完成后记录面板地址、用户名和密码

2.2 LNMP环境安装

  1. 登录宝塔面板后,进入"软件商店"
  2. 选择"LNMP"环境(Nginx+MySQL+PHP)
  3. 选择"极速安装"方式(注意:安装可能需要30分钟以上)

三、WordPress部署

3.1 创建网站

  1. 进入"网站" → "添加站点"
  2. 填写域名(如无域名可使用服务器IP)
  3. 重要:将端口改为非80/443端口(如8088),为WAF预留标准端口
  4. 在"PHP版本"中选择兼容的PHP版本(WordPress推荐7.4+)

3.2 一键部署WordPress

  1. 在"网站"列表中找到新建的站点,点击"一键部署"
  2. 选择WordPress进行部署
  3. 记录自动生成的数据库用户名和密码

3.3 WordPress初始化配置

  1. 访问站点(如http://example.com:8088http://服务器IP:8088
  2. 选择语言(简体中文)
  3. 填写数据库信息(使用宝塔自动创建的数据库账号)
  4. 设置WordPress管理员账号和密码

四、雷池WAF部署与配置

4.1 安装雷池社区版

执行以下命令进行安装:

/bin/bash -c "$(curl -fsSLk https://waf-ce.chaitin.cn/release/latest/setup.sh)"

4.2 访问WAF管理界面

  1. 访问https://服务器IP:9443
  2. 使用TOTP认证软件(如Google Authenticator)完成绑定
  3. 设置管理员账号和密码

4.3 配置防护站点

  1. 进入"防护站点" → "添加站点"
  2. HTTP配置:
    • 监听端口:80
    • 转发配置:指向本地WordPress端口(如8088)
  3. HTTPS配置(如需):
    • 监听端口:443
    • 上传SSL证书
    • 转发配置:指向本地WordPress端口(如8088)

4.4 WordPress站点地址修正

  1. 登录WordPress后台
  2. 进入"设置" → "常规"
  3. 修改以下两项为WAF监听的地址:
    • WordPress地址(URL):https://example.com
    • 站点地址(URL):https://example.com
  4. 保存更改

五、功能验证与测试

5.1 正常访问测试

  1. 访问https://example.com(通过WAF)
  2. 确认能正常显示WordPress首页
  3. 确认后台登录功能正常

5.2 WAF防护测试

尝试访问以下URL测试WAF是否生效:

https://example.com/id=1or 1=1

预期结果:应返回403禁止访问状态码,证明WAF已成功拦截SQL注入攻击

六、常见问题解决

6.1 端口冲突问题

  • 现象:WAF无法绑定80/443端口
  • 解决方案:
    1. 确保宝塔中的网站不使用80/443端口
    2. 检查是否有其他服务占用这些端口(如Apache)
    3. 使用netstat -tulnp命令查看端口占用情况

6.2 WordPress重定向问题

  • 现象:访问HTTPS站点被重定向到8088端口
  • 解决方案:
    1. 确保WordPress后台的站点地址设置为WAF地址(不带端口)
    2. 在wp-config.php中添加:
      define('WP_HOME','https://example.com');
      define('WP_SITEURL','https://example.com');
      
    3. 清除WordPress和浏览器缓存

6.3 混合内容警告

  • 现象:HTTPS页面加载HTTP资源
  • 解决方案:
    1. 安装"Really Simple SSL"插件
    2. 或在wp-config.php中添加:
      $_SERVER['HTTPS'] = 'on';
      

七、安全加固建议

  1. 定期更新

    • 保持WordPress、主题和插件最新版本
    • 定期更新雷池WAF规则库
  2. 访问限制

    • 限制WordPress后台登录IP(可通过雷池WAF实现)
    • 禁用XML-RPC功能(如不需要)
  3. 备份策略

    • 设置宝塔定期自动备份网站和数据库
    • 将备份文件存储到远程位置
  4. 监控设置

    • 在雷池WAF中设置告警通知
    • 监控异常访问模式

八、总结

本教程详细介绍了通过宝塔面板快速部署WordPress并结合雷池社区版WAF实现安全防护的全过程。关键点包括:

  1. 通过宝塔简化LNMP环境和WordPress部署
  2. 使用非标准端口部署WordPress为WAF预留空间
  3. 雷池WAF的安装和反向代理配置
  4. WordPress站点地址的修正方法
  5. WAF防护效果的验证方法

此方案特别适合个人博客或小型网站,在保证易用性的同时提供了企业级的安全防护能力。

通过宝塔面板部署WordPress并配置WAF防火墙详细教程 一、技术选型与准备工作 1.1 技术选型理由 宝塔面板 : 提供可视化操作界面,降低运维难度 内置大量开源网站模板 支持快速部署常见Web应用 雷池社区版WAF : 商业产品的开源版本,效果有保证 有活跃的社区讨论群和官方技术支持 提供完善的中文文档支持 1.2 环境准备 服务器配置建议:2核CPU、4GB内存、100M带宽 操作系统:支持CentOS、Ubuntu等主流Linux发行版 域名准备(可选):如无域名可直接使用服务器IP访问 二、宝塔面板安装与配置 2.1 安装宝塔面板 执行官方安装命令(根据系统选择对应命令): 安装完成后记录面板地址、用户名和密码 2.2 LNMP环境安装 登录宝塔面板后,进入"软件商店" 选择"LNMP"环境(Nginx+MySQL+PHP) 选择"极速安装"方式(注意:安装可能需要30分钟以上) 三、WordPress部署 3.1 创建网站 进入"网站" → "添加站点" 填写域名(如无域名可使用服务器IP) 重要 :将端口改为非80/443端口(如8088),为WAF预留标准端口 在"PHP版本"中选择兼容的PHP版本(WordPress推荐7.4+) 3.2 一键部署WordPress 在"网站"列表中找到新建的站点,点击"一键部署" 选择WordPress进行部署 记录自动生成的数据库用户名和密码 3.3 WordPress初始化配置 访问站点(如 http://example.com:8088 或 http://服务器IP:8088 ) 选择语言(简体中文) 填写数据库信息(使用宝塔自动创建的数据库账号) 设置WordPress管理员账号和密码 四、雷池WAF部署与配置 4.1 安装雷池社区版 执行以下命令进行安装: 4.2 访问WAF管理界面 访问 https://服务器IP:9443 使用TOTP认证软件(如Google Authenticator)完成绑定 设置管理员账号和密码 4.3 配置防护站点 进入"防护站点" → "添加站点" HTTP配置: 监听端口:80 转发配置:指向本地WordPress端口(如8088) HTTPS配置(如需): 监听端口:443 上传SSL证书 转发配置:指向本地WordPress端口(如8088) 4.4 WordPress站点地址修正 登录WordPress后台 进入"设置" → "常规" 修改以下两项为WAF监听的地址: WordPress地址(URL): https://example.com 站点地址(URL): https://example.com 保存更改 五、功能验证与测试 5.1 正常访问测试 访问 https://example.com (通过WAF) 确认能正常显示WordPress首页 确认后台登录功能正常 5.2 WAF防护测试 尝试访问以下URL测试WAF是否生效: 预期结果:应返回403禁止访问状态码,证明WAF已成功拦截SQL注入攻击 六、常见问题解决 6.1 端口冲突问题 现象:WAF无法绑定80/443端口 解决方案: 确保宝塔中的网站不使用80/443端口 检查是否有其他服务占用这些端口(如Apache) 使用 netstat -tulnp 命令查看端口占用情况 6.2 WordPress重定向问题 现象:访问HTTPS站点被重定向到8088端口 解决方案: 确保WordPress后台的站点地址设置为WAF地址(不带端口) 在wp-config.php中添加: 清除WordPress和浏览器缓存 6.3 混合内容警告 现象:HTTPS页面加载HTTP资源 解决方案: 安装"Really Simple SSL"插件 或在wp-config.php中添加: 七、安全加固建议 定期更新 : 保持WordPress、主题和插件最新版本 定期更新雷池WAF规则库 访问限制 : 限制WordPress后台登录IP(可通过雷池WAF实现) 禁用XML-RPC功能(如不需要) 备份策略 : 设置宝塔定期自动备份网站和数据库 将备份文件存储到远程位置 监控设置 : 在雷池WAF中设置告警通知 监控异常访问模式 八、总结 本教程详细介绍了通过宝塔面板快速部署WordPress并结合雷池社区版WAF实现安全防护的全过程。关键点包括: 通过宝塔简化LNMP环境和WordPress部署 使用非标准端口部署WordPress为WAF预留空间 雷池WAF的安装和反向代理配置 WordPress站点地址的修正方法 WAF防护效果的验证方法 此方案特别适合个人博客或小型网站,在保证易用性的同时提供了企业级的安全防护能力。