最近有位站长朋友凌晨三点给我打电话,说他的网站流量没涨,但服务器带宽却跑满了,网站后台打开都卡成幻灯片,我登录他的宝塔面板一看——好家伙,实时带宽曲线直接拉成了一条“涨停板”,这不是个例,很多用宝塔面板的站长都遇到过类似问题,今天我就结合这些年的运维经验,从安全风险分析到具体操作步骤,把带宽异常这块掰开揉碎了讲清楚,保证你照着做就能解决问题。
先别慌:带宽异常背后的四种常见风险
带宽被占满,表面上只是网速慢,但背后往往藏着四种风险:
宝塔面板带宽异常飙升?这份排查与防护实操指南请收好
- 最危险的——被植入挖矿木马,黑客利用你网站程序的漏洞(比如旧版WordPress插件)植入挖矿脚本,这些脚本会悄悄调用你的服务器CPU和带宽去挖门罗币,你的服务器就成了免费矿机。
- 最常见的——CC攻击或DDoS流量攻击,攻击者用大量肉鸡持续请求你的网站,导致带宽被挤爆,正常用户访问不了。
- 隐藏最深的——后台被入侵后对外发包,你的服务器可能被控制成为“跳板”,对外发送垃圾邮件或参与攻击别人的流量放大。
- 最容易被忽视的——日志文件撑爆硬盘,访问日志、错误日志如果开启了全量记录且不轮转,几个月下来能占几十GB,虽然不直接占带宽,但会让系统变慢,间接导致连接异常。
宝塔面板安全设置:五个开关必须拧紧
登录宝塔面板后,按以下步骤依次操作,每一步都不难:
第一步:修改SSH端口和面板端口。 默认的22端口和8888端口是扫描器最爱,在“安全”菜单里,找到“SSH管理”,把端口改成1万以上的随机数(比如22345),同时关闭密码登录,改用密钥登录(宝塔的“SSH密钥”功能一键生成),面板端口要在“面板设置”里改,改完记得在云服务商的安全组里同步放行新端口。
第二步:开启面板SSL和BasicAuth认证。 在“面板设置”->“安全设置”里,开启“BasicAuth认证”,设置复杂的用户名密码(建议16位以上混合字符),这样即使有人扫到你的面板地址,也进不了登录页。
第三步:安装并启用防火墙插件(宝塔官方有免费版)。 在“软件商店”搜索“防火墙”,安装后启用,到“安全”->“防火墙”界面,只放行你需要的端口(比如80、443、改过的SSH端口),其余全部拒绝,特别注意不要开放888、3306这些数据库远程端口,除非你有特殊需求,否则一律只允许本地访问。
第四步:配置Fail2ban防暴力破解。 宝塔应用商店里有“Fail2ban”插件,安装后按默认配置启动即可,它会自动封禁连续尝试登录失败的IP,如果有海外IP恶意扫描,可以在“过滤规则”里添加对SSH、面板登录、FTP的额外保护。
第五步:开启网站日志轮转和访问控制。 在“网站”->设置->“网站目录”->“日志”里,将日志格式改为“每天生成一个文件”,并勾选“自动清理超过30天的日志”,在“配置文件”里加上一行:limit_req_zone $binary_remote_addr zone=one:10m rate=1r/s;,然后在server段里加limit_req zone=one burst=5;,这能有效限制单个IP的请求频率,压制CC攻击。
防火墙配置说明:别只会点“放行”
很多人以为防火墙就是“放行80和443就完事”,其实远远不够,请按以下规则配置:
- 入方向:只放行你主动使用的端口,用“端口规则”添加:TCP 80、443(HTTPS)、你改过的SSH端口、宝塔面板新端口,其他端口一律拒绝,尤其注意UDP端口,除了DNS(53)和NTP(123)外,全部拒绝,很多放大攻击走UDP。
- 出方向:宝塔防火墙默认放行所有出站,这时建议在“出站规则”里,将访问目的地限制为常用端口(80、443、25),阻止服务器对外连接不明的高位端口(比如4444、5555等木马常用端口),但要注意,出站限制可能影响软件更新,所以可以加白名单域名(如
download.bt.cn、镜像站)。 - 地区封锁:如果网站只面向国内用户,在防火墙插件里开启“地区封锁”,屏蔽所有海外IP,这招能减少90%的扫描流量攻击。
日常维护检查清单:每月花10分钟做一遍
- 查看宝塔“监控”页面的带宽和CPU历史曲线,如果发现每天固定时间带宽有规律性尖峰,很可能是定时任务或恶意爬虫,检查“计划任务”里有没有异常脚本。
- 进入“安全”->“登录日志”,核对最近一周的登录记录,有无陌生IP,如果有,立即修改密码并封禁该IP。
- 用“宝塔终端”执行命令:
netstat -antlp | grep :80 | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n,看连接数最多的10个IP,如果某个IP连接数超过100,基本可以断定是攻击源,用防火墙将其IP加入黑名单。 - 检查“计划任务”,确认没有不明来源的sh脚本,常见的挖矿脚本会定时从外部下载执行文件,发现立即删除任务并查杀文件。
- 升级面板和软件版本,宝塔“软件商店”里看到有红点就升级,尤其是Nginx、PHP、MySQL的补丁版本,很多漏洞修复都靠这些更新。
常见攻击防范方法:遇到攻击别慌,按顺序做
带宽被占满,但网站还能打开。
优先怀疑CC攻击,第一步,开启防火墙的“CC防护”开关(宝塔防火墙自带,设置阈值为单IP每分钟60次请求),第二步,在“网站”->“配置文件”里启用limit_req规则,如果攻击流量仍然大,临时开启“CDN加速”将所有流量引到CDN节点,源站只对CDN的IP段放行。
带宽被占满,CPU也飙到100%。
大概率是挖矿木马,第一步,用宝塔终端执行top,查看哪个进程占用CPU最高,记下PID,第二步,执行ls -l /proc/[PID]/exe查看可执行文件路径,第三步,杀掉进程并删除对应文件,同时检查crontab(执行crontab -l)和/etc/rc.local是否有自启动项,第四步,修改所有数据库密码和面板密码,因为挖矿木马通常伴随拖库。
服务器对外发送大量数据包。
这属于被植入后门,先断开外网(在防火墙中暂时拒绝所有出站),然后检查/tmp、/var/tmp目录下有无近期新建的可疑文件,再用rkhunter(宝塔商店可装)扫描一遍,找到后门后彻底清除,并重装系统(最彻底的方法)。



发表评论