站群服务器的防火墙是网络安全第一道防线,RAKsmart 站群服务器因多 IP、多站点的特性,对端口管控和恶意访问拦截要求更高,结合宝塔面板可实现服务器系统防火墙 + 宝塔面板防火墙双层防护,既保证站群站点正常访问(如 80/443 端口)、运维操作(如 22/8888 端口),又能精准拦截 IP 扫描、暴力破解、恶意请求等行为。本文针对 RAKsmart 站群服务器(CentOS7/8/9 为主,兼容 Ubuntu),详细讲解系统防火墙(firewalld/iptables)配置、宝塔面板防火墙联动、常用端口开放、恶意访问拦截及站群专属防护优化。

前置准备

  1. 已购买 RAKsmart 站群服务器,完成系统初始化(建议 CentOS7.9,站群环境兼容性最优),并获取服务器主 IP + 站群副 IP、root 账号密码;
  2. 已成功安装宝塔面板(Linux 版,推荐 7.9 稳定版),并完成面板初始化,记录宝塔面板端口(默认 8888)、数据库端口(如 3306);
  3. 关闭 RAKsmart 后台机房防火墙(可选,避免与服务器本地防火墙冲突,后续可在机房后台做 IP 白名单兜底),路径:RAKsmart 用户中心→服务器管理→防火墙→关闭;
  4. 登录宝塔面板:通过http://服务器主IP:8888登录,同时通过 SSH 工具(Xshell/FinalShell)登录服务器终端(root 权限)。

重要:RAKsmart 站群服务器支持多 IP 绑定,防火墙配置需注意主 IP 开放运维端口,所有 IP 开放业务端口,避免单 IP 防护导致站群站点访问异常。

一、服务器系统防火墙基础配置(CentOS 为例)

RAKsmart 站群服务器默认搭载 CentOS 系统,主流防火墙为firewalld(CentOS7 + 默认),替代了传统 iptables,操作更简洁、支持动态端口管理,适合站群多 IP 场景;若为 Ubuntu 系统,文末附 UFW 防火墙配置要点。

1. 检查并启动 firewalld 服务

SSH 终端执行以下命令,确保 firewalld 正常运行,避免宝塔面板防火墙联动失败:

bash

运行

# 检查firewalld状态
systemctl status firewalld
# 若未启动,启动并设置开机自启
systemctl start firewalld
systemctl enable firewalld
# 关闭iptables(避免冲突,若已安装)
systemctl stop iptables
systemctl disable iptables

若执行systemctl status firewalld显示active (running),说明服务正常,可直接下一步。

2. firewalld 核心基础配置(站群专属)

RAKsmart 站群服务器的核心特点是多公网 IP,需将所有站群 IP 加入 firewalld 的信任网络,同时设置默认策略(入站拒绝、出站允许),仅开放需要的端口,最大化降低攻击面。

bash

运行

# 1. 设置默认策略:入站拒绝,出站允许(核心安全策略,必做)
firewalld --set-default-zone=public
firewall-cmd --permanent --zone=public --set-target=DROP
# 2. 允许回环接口(本地访问,必做,避免站群程序本地通信异常)
firewall-cmd --permanent --zone=public --add-interface=lo
# 3. 将RAKsmart站群所有IP加入信任(替换为你的服务器主IP+副IP,多个用空格分隔)
firewall-cmd --permanent --zone=public --add-source=1.1.1.1(主IP)
firewall-cmd --permanent --zone=public --add-source=2.2.2.2(副IP1)
firewall-cmd --permanent --zone=public --add-source=3.3.3.3(副IP2)
# 4. 重新加载配置,使修改生效
firewall-cmd --reload
# 5. 查看当前firewalld配置,确认生效
firewall-cmd --list-all

关键:站群 IP 必须全部加入信任,否则会出现 “部分站点能访问、部分无法访问” 的问题,RAKsmart 站群服务器的 IP 可在用户中心→服务器管理→IP 列表中查看。

二、核心端口开放:分「运维端口」和「业务端口」(双层防火墙同步开放)

站群服务器的端口分为运维端口(仅主 IP 开放,禁止公网全网访问,仅白名单 IP 可连)和业务端口(所有站群 IP 开放,供用户访问站点),需在系统 firewalld + 宝塔面板防火墙同步开放,避免单一防火墙未配置导致端口不通。

端口分类说明(RAKsmart 站群专用,禁止随意开放非必要端口)

端口类型端口号用途开放范围核心说明
运维端口22SSH 远程登录仅管理员白名单 IP站群服务器核心运维端口,严禁全网开放
运维端口8888宝塔面板登录仅管理员白名单 IP宝塔默认端口,若修改过需对应替换
运维端口888宝塔 phpMyAdmin仅管理员白名单 IP数据库可视化管理,避免公网访问
业务端口80HTTP 站点访问所有公网 IP站群所有站点基础访问端口
业务端口443HTTPS 站点访问所有公网 IP站群站点 SSL 加密访问,必开
数据库端口3306MySQL/MariaDB仅服务器本地 + 白名单 IP站群数据库,严禁全网开放
缓存端口6379Redis仅服务器本地站群缓存,禁止公网访问

1. 系统 firewalld 开放端口(分「白名单 IP 开放」和「全网开放」)

(1)运维端口:仅白名单 IP 开放(核心安全,防止暴力破解)

适用于 22/8888/888 端口,仅允许管理员的固定 IP(如办公 IP、家用 IP)访问,替换<你的白名单IP>为实际 IP,多个白名单 IP 重复执行即可:

bash

运行

# 开放22端口(SSH),仅白名单IP可访问
firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="<你的白名单IP>" port protocol="tcp" port="22" accept'
# 开放8888端口(宝塔面板),仅白名单IP可访问
firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="<你的白名单IP>" port protocol="tcp" port="8888" accept'
# 开放888端口(phpMyAdmin),仅白名单IP可访问
firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="<你的白名单IP>" port protocol="tcp" port="888" accept'
# 开放3306端口(数据库),仅白名单IP+服务器本地访问
firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="<你的白名单IP>" port protocol="tcp" port="3306" accept'
firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="127.0.0.1" port protocol="tcp" port="3306" accept'

(2)业务端口:全网开放(站群站点必备)

适用于 80/443 端口,所有公网 IP 均可访问,保证站群所有站点正常打开:

bash

运行

# 开放80(HTTP)和443(HTTPS)端口,全网访问
firewall-cmd --permanent --zone=public --add-port=80/tcp
firewall-cmd --permanent --zone=public --add-port=443/tcp
# 重新加载配置,所有端口开放生效
firewall-cmd --reload
# 验证端口开放结果
firewall-cmd --list-ports
firewall-cmd --list-rich-rules

2. 宝塔面板防火墙同步开放端口(与系统防火墙联动)

宝塔面板防火墙基于系统 firewalld/iptables 封装,操作更可视化,适合新手,必须与系统防火墙配置一致,避免端口冲突。

步骤 1:进入宝塔面板防火墙

登录宝塔面板→左侧导航栏安全→进入防火墙页面,开启宝塔防火墙(开关置为「开启」),并勾选「开机自启」。

步骤 2:开放端口(分「白名单开放」和「全网开放」)

  • 全网开放端口:在「端口规则」中,点击「添加规则」,依次添加 80、443,协议选择「TCP」,放行方式选择「全网放行」,点击保存;
  • 白名单开放端口:添加 22、8888、888、3306,协议选择「TCP」,放行方式选择「仅白名单放行」,并在右侧「白名单 IP」中添加管理员的固定 IP(与系统 firewalld 白名单一致);
  • 核心:禁止重复开放:若系统防火墙已配置白名单,宝塔面板仅需同步配置,无需额外开放全网。

步骤 3:验证端口连通性

  • 业务端口:在浏览器中访问http://站群副IP,若能打开宝塔默认页面 / 站点页面,说明 80 端口正常;
  • 运维端口:在白名单 IP 的电脑上,通过 SSH 连接服务器 22 端口、通过http://主IP:8888登录宝塔,若能正常连接 / 登录,说明运维端口正常;
  • 非白名单 IP 测试:用手机流量(非白名单 IP)访问http://主IP:8888,若提示「无法访问」,说明白名单配置生效。

三、恶意访问拦截:站群服务器专属配置(宝塔 + 系统防火墙双拦截)

RAKsmart 站群服务器因多 IP、多站点,极易成为 IP 扫描、暴力破解(SSH / 宝塔 / 数据库)、恶意爬虫、CC 攻击的目标,需通过IP 黑名单、访问限制、规则拦截实现精准防护,以下为「基础拦截 + 站群高级拦截」配置,兼顾防护效果和站群站点访问速度。

1. 基础恶意访问拦截:宝塔面板一键配置(新手首选)

宝塔面板防火墙内置多种拦截规则,无需手动写命令,一键开启即可拦截 90% 的常见恶意访问,适合站群新手。

(1)拦截暴力破解(SSH / 宝塔 / 数据库)

在宝塔防火墙暴力破解拦截页面:

  • 开启「SSH 暴力破解拦截」:设置「最大尝试次数」为 3,「拦截时长」为 24 小时(防止黑客多次尝试密码);
  • 开启「宝塔面板暴力破解拦截」:同样设置尝试次数 3,拦截时长 24 小时;
  • 开启「数据库暴力破解拦截」:针对 3306 端口,拦截 MySQL 暴力破解;
  • 关键:开启「自动拉黑」,将破解 IP 自动加入黑名单,永久拦截。

(2)拦截恶意 IP(扫描 / 攻击 IP)

  • 手动拉黑 IP:在宝塔防火墙「IP 黑名单」中,添加已知的攻击 IP、垃圾爬虫 IP(如百度蜘蛛外的未知爬虫),支持单个 IP/IP 段(如 192.168.0.0/24);
  • 自动拉黑 IP:开启「IP 扫描拦截」,设置「扫描端口数阈值」为 10,若某个 IP 在短时间内扫描超过 10 个端口,自动拉黑;
  • RAKsmart 专属:可在 RAKsmart 用户中心查看服务器攻击日志,将高频攻击 IP 同步加入宝塔黑名单。

(3)拦截恶意请求(防 SQL 注入 / 跨站脚本)

在宝塔防火墙Web 防护页面,开启「基础 Web 防护」,勾选:

  • 拦截 SQL 注入请求;
  • 拦截跨站脚本(XSS)请求;
  • 拦截恶意 User-Agent(如 scrapy/ccbot 等恶意爬虫);
  • 拦截空 Referer 恶意请求(防止刷站)。

注意:开启 Web 防护后,需测试站群站点的表单提交、评论功能,若出现正常请求被拦截,可在「白名单规则」中添加站点的正常请求路径。

2. 高级恶意访问拦截:系统 firewalld 规则 + 宝塔自定义规则(站群必备)

针对站群服务器多 IP、多站点的特性,需配置专属拦截规则,防止黑客利用单站点漏洞攻击整个站群,以下为核心配置:

(1)拦截单 IP 高频访问(防 CC 攻击,站群核心)

站群站点若被单 IP 高频访问,会占用服务器带宽和 CPU,导致所有站点卡顿,通过宝塔访问限制实现单 IP 访问频率管控:

宝塔面板→安全→访问限制→添加规则:

  • 规则名称:站群 CC 防护;
  • 适用域名:选择「全部域名」(站群所有站点);
  • 限制规则:单 IP 每分钟最大访问次数设为 60(可根据服务器配置调整,2 核 4G 建议 60,4 核 8G 建议 100);
  • 拦截方式:超过次数后「临时拉黑 10 分钟」;
  • 保存并开启,实现单 IP 访问频率限制,避免单 IP 拖垮整个站群。

(2)禁止非站群 IP 的端口访问(防 IP 冒用)

RAKsmart 站群服务器的 IP 为专属公网 IP,可通过 firewalld 规则,禁止黑客利用非本站群 IP 的请求访问服务器端口,SSH 终端执行:

bash

运行

# 拦截所有非站群IP、非白名单IP的所有端口请求(核心站群防护规则)
firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" not source address="<主IP>" not source address="<副IP1>" not source address="<副IP2>" not source address="<白名单IP>" drop'
# 重新加载配置
firewall-cmd --reload

此规则可防止黑客通过「IP 伪造」访问站群服务器,仅本站群 IP 和管理员白名单 IP 能发起请求,最大化提升站群安全性。

(3)拦截特定恶意端口扫描(如 135/445/3389)

黑客常扫描 135、445、3389 等高危端口,站群服务器无需开放这些端口,可通过 firewalld 一键拦截:

bash

运行

# 拦截135/445/3389端口的所有请求
firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" port protocol="tcp" port="135" drop'
firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" port protocol="tcp" port="445" drop'
firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" port protocol="tcp" port="3389" drop'
firewall-cmd --reload

(4)宝塔自定义防护规则(拦截站群专属恶意行为)

针对站群站点常见的「批量采集」「恶意刷评论」,在宝塔防火墙自定义规则中添加正则规则,例如:

  • 拦截批量采集请求:添加规则^/wp-content/uploads/.*\?action=download(针对 WordPress 站群);
  • 拦截恶意评论请求:添加规则^/wp-comments-post.php.*&author=bot
  • 规则格式:选择「请求 URI」,匹配方式「正则匹配」,拦截方式「拒绝访问」。

3. 黑名单 / 白名单管理:站群服务器高效运维

(1)白名单:仅保留必要 IP

站群服务器的白名单仅添加管理员固定 IP+站群解析服务器 IP(若有),禁止添加陌生 IP,宝塔面板和系统防火墙白名单保持完全一致,避免漏配。

(2)黑名单:批量导入 + 自动清理

  • 批量导入:若有大量攻击 IP,可将 IP 整理为 TXT 文件(每行一个 IP),在宝塔防火墙「IP 黑名单」中点击「批量导入」,一键拉黑;
  • 自动清理:对于临时拉黑的 IP(如 CC 攻击临时拉黑),可在宝塔防火墙中设置「自动清理黑名单」,例如 7 天清理一次临时拉黑 IP,避免黑名单过大。

四、RAKsmart 站群服务器防火墙专属优化要点

RAKsmart 站群服务器与普通服务器的核心区别是多 IP、多网卡、大带宽,防火墙配置需兼顾防护性网络性能,避免因防火墙规则过多导致站群站点访问卡顿,以下为专属优化:

  1. 仅在主网卡配置防火墙:RAKsmart 站群服务器的多 IP 绑定在同一个主网卡(如 eth0),无需为每个 IP 配置单独的防火墙规则,仅对主网卡配置即可,减少规则冗余;
  2. 关闭防火墙日志冗余:firewalld 默认开启详细日志,会占用服务器磁盘空间,可关闭冗余日志,仅保留关键攻击日志:bash运行# 编辑firewalld配置文件 vi /etc/firewalld/firewalld.conf # 将LogLevel从info改为warning,减少日志量 LogLevel=warning # 重启firewalld systemctl restart firewalld
  3. 宝塔防火墙开启「高性能模式」:宝塔面板→安全→防火墙→设置,开启「高性能模式」,关闭不必要的防护规则(如非站群的 Web 防护),提升防火墙处理速度,适配站群大流量;
  4. 机房防火墙兜底:若服务器遭遇大规模 DDoS 攻击,可在 RAKsmart 用户中心→服务器管理→防火墙,开启机房级防火墙,添加站群 IP 白名单,实现「机房防火墙 + 服务器本地防火墙」双层兜底,RAKsmart 机房防火墙支持大流量 DDoS 清洗,适合站群高防需求;
  5. 定期备份防火墙规则:宝塔面板→安全→防火墙→规则备份,定期备份防火墙规则,若站群服务器重装系统 / 宝塔,可一键恢复规则,避免重复配置;
  6. 避免规则冲突禁止同时开启 firewalld 和 iptables,禁止宝塔防火墙与第三方防火墙(如阿里云安全卫士)同时运行,否则会导致端口不通、规则失效。

五、常见问题排查(RAKsmart 站群服务器专属)

问题 1:站群部分副 IP 的站点无法访问,主 IP 正常

原因:站群副 IP 未加入 firewalld 的信任源,系统防火墙拦截了副 IP 的请求;

解决:执行firewall-cmd --permanent --zone=public --add-source=副IP,重新加载配置,并在宝塔面板中确认所有站群 IP 已加入信任。

问题 2:SSH / 宝塔面板无法登录,提示「连接被拒绝」

原因 1:运维端口(22/8888)未添加白名单 IP,被防火墙拦截;

解决 1:通过 RAKsmart 用户中心→服务器管理→VNC 控制台(网页版终端)登录服务器,检查 firewalld / 宝塔防火墙的白名单配置,添加当前 IP;

原因 2:防火墙服务未启动,导致端口规则失效;

解决 2:VNC 控制台执行systemctl start firewalld && systemctl start bt,启动防火墙和宝塔服务。

问题 3:开启 Web 防护后,站群站点的正常请求被拦截

原因:宝塔 Web 防护规则过于严格,误判正常请求为恶意请求;

解决:在宝塔防火墙→白名单规则中,添加被拦截的请求路径 / IP / 域名,例如站点的后台路径/wp-admin、支付回调路径等。

问题 4:防火墙规则配置后,端口仍不通

原因:RAKsmart 机房防火墙未关闭,与本地防火墙冲突;

解决:登录 RAKsmart 用户中心,关闭机房防火墙,或在机房防火墙中开放对应端口。

六、Ubuntu 系统 RAKsmart 站群服务器防火墙配置要点(附)

若你的 RAKsmart 站群服务器为 Ubuntu 系统,默认防火墙为UFW,替代 CentOS 的 firewalld,核心配置思路一致(白名单 + 端口开放 + 恶意拦截),关键命令:

bash

运行

# 安装并启动UFW
apt update && apt install ufw -y
ufw enable
ufw default deny incoming
ufw default allow outgoing
# 开放80/443端口(全网)
ufw allow 80/tcp
ufw allow 443/tcp
# 开放22端口(仅白名单IP)
ufw allow from <白名单IP> to any port 22
# 查看规则
ufw status numbered
# 宝塔面板同步配置:与CentOS一致,可视化操作即可

七、配置验收标准

完成以上配置后,通过以下步骤验证 RAKsmart 站群服务器防火墙是否配置成功:

  1. 端口验证:所有业务端口(80/443)全网可访问,所有运维端口(22/8888)仅白名单 IP 可访问,非白名单 IP 无法访问;
  2. 恶意访问验证:用陌生 IP 尝试 SSH 暴力破解(多次输错密码),会被自动拉黑;用工具扫描服务器端口,会被拦截并加入黑名单;
  3. 站群访问验证:所有站群副 IP 的站点均可正常访问,无卡顿、无 403/502 错误;
  4. 规则验证:firewalld/UFW 规则无冗余,宝塔防火墙与系统防火墙规则一致,无冲突;
  5. 性能验证:站群站点大流量访问时,服务器 CPU / 内存占用正常,防火墙无明显延迟。

总结

RAKsmart 站群服务器的防火墙配置核心是 **「最小端口开放 + 白名单管控 + 双层防护」**,结合系统 firewalld(底层)和宝塔面板防火墙(可视化),既保证了多 IP 站群的安全性,又兼顾了运维便捷性。重点记住:运维端口仅白名单开放,业务端口全网开放,站群 IP 全部加入信任,禁止非必要端口开放,同时通过 RAKsmart 机房防火墙做兜底,可实现站群服务器的全方位网络安全防护。

后续本系列教程将继续讲解RAKsmart 站群服务器 + 宝塔面板的站群环境搭建(多 PHP 版本 + 多数据库 + 多站点绑定),助力站群从 0 到 1 实现稳定运行和商业变现。