解决Virtualizor遭遇CC攻击,造成面板无法访问,连带WHMCS瘫痪问题

近日帮助某知名IDC运维,经常出现WHMCS卡死及无法访问问题。

起初以为是WHMCS所在主机遭遇攻击导致,然而加上防御后依然出现此问题。

经排查发现该问题原因:PHP-CURL单线程读取卡死,导致WHMCS整体瘫痪。

主机商WHMCS脑残设置未做线程优化是一方面,因商家技术拒绝配合调查,只能从CURL目标分析。

发现是内嵌Virtualizor面板调用所致,而Virtualizor面板所在主控服务器:4083端口亦无法访问。

检查该服务器发现多个CPU被MySQL进程100%卡死,导致指令无法运行。

分析MySQL进程:show full processlist

发现其中出现上万个睡眠进程:root     localhost     virtualizor     Sleep     21856         NULL

因此得出该问题结论:

1. 主控遭遇CC攻击,导致超多闲置进程产生并挂起。(睡眠)

2. Virtualizor面板使用长链接,进程睡眠后并没有超时关闭。(已反馈至Virtualizor)

3. MySQL设置中并未限制睡眠进程过期时间,导致长时间无法释放。(修改配置)

MySQL设置修改:/etc/my.cnf

加入:wait_timeout=30

重启MySQL后,睡眠进程数量明显降低。

“近日帮助某知名IDC运维”

[em_23]

丢进我的收藏夹吃灰

[em_23]

pr直呼内行[em_37]

pr直呼内行

1