linux CPU 异常消耗

问题现象如下图所示,cpu被异常消耗了一半左右:

linux CPU 异常消耗_第1张图片

描述:最近突然发现服务器的CPU异常消耗,试了很多方法(jstack测试、内存溢出、kworker影响)等。说来惭愧,最后启用防火墙规则对来自国外IP地址进行屏蔽,并重启服务器就好了,操作步骤总结如下。

1.定期更改服务器的登陆密码

2.更改ssh登陆的默认端口号

3.检查当前服务器的防火墙策略,如下图所示,当前服务器的防火墙策略为空。

linux CPU 异常消耗_第2张图片

4.使用iftop命令检查都有哪些可疑的IP地址对服务器进行访问(视实际情况而定),如下图所示。

linux CPU 异常消耗_第3张图片

5.将可疑的IP地址添加到防火墙的黑名单内。

linux CPU 异常消耗_第4张图片

 

6.第二种方法就是仅允许国内和保留地址访问,并屏蔽剩余IP地址对服务器的访问。

#使用脚本添加防火墙策略(此处简单、粗暴),脚本如下:

root@ubuntu:~# cat acceptChinaIp.sh 
#!/bin/bash
for i in `cat allChinaIp.txt | awk '{print $3}'`
do
    iptables -A INPUT -s $i -j ACCEPT
done

allChinaIp.txt文件链接:

链接:https://pan.baidu.com/s/1MJqBeDZf2eJon44IvH6OxA 
提取码:7wao 

注:防火墙的策略添加,写法规则等均视情况而定。

#脚本执行完成以后,需额外手动添加一条防火墙策略,默认阻止其余地址对服务器的访问。

iptables -A INPUT -j DROP

#若需要允许新的地址对当前服务器访问,可以使用以下防火墙规则。

iptables -I INPUT -s xxx.xxx.xxx.xxx/xx -j ACCEPT

#安装防火墙开机自启动服务

apt-get install iptables-persistent

#保存防火墙策略,该服务器支持开机自启动

service iptables-persistent save

#以上解决方法的前提是,默认服务器受到了来自国外的恶意攻击而采取的简单防御措施。

 

你可能感兴趣的:(Linux)