网站被攻击了怎么办?记录阿里工单筛选并屏蔽异常IP

2023年11月17日11:02:21 发表评论 1

网站被攻击缘由:2019年8月10日,访问本站前台和后台都异常卡。查看了阿里云服务器发现cup占用率正常,网络带宽长时间满负荷运行。从以往同期数据来看,不可能是访问量太大造成的,很可能是服务器异常或者其他原因造成的。

而当天在江浙一带发生了超强台风“利奇马”。阿里云官方发布了上海、杭州运营商网络可能异常的预警通知,而怀音街使用的服务器正好在浙江,怀疑是受到台风影响?于是提交了工单询问,并开始了下面的排查过程。

网站被攻击了怎么办?记录阿里工单筛选并屏蔽异常IP

 

阿里云工程师排查过程记录

以下是提交阿里云工单的对话记录:

问题描述 : 今天出现服务器带宽持续很长时间满跑,重启服务器没有得到缓解,后来停止服务器10分钟左右,后台数据显示降下来了,几分钟后又出现带宽满跑现象,再次期间我的网站访问巨卡。请问是什么原因?(说明:就是今天才出现这种情况,以前运行都很正常,服务器运行的博客和网站都很正常,访问速度也正常,近期没有对网站进行改动,也没有对服务器进行配置调整)。

网站被攻击了怎么办?记录阿里工单筛选并屏蔽异常IP

 

售后工程师:您好,建议您查看下您的网站的访问日志,查看是否存在异常IP访问您的网站,谢谢.

问题描述:cup显示正常,网络长时间持续满跑,没有异常IP访问。

售后工程师:服务器上执行下yum install iftop然后iftop -i eth0 -P看下建立连接的IP有没有异常的。

问题描述:运行结果截图:

网站被攻击了怎么办?记录阿里工单筛选并屏蔽异常IP

 

售后工程师:连接状况来看都是web应用建立的连接,这种突发情况很有可能就是被攻击了,网站有访问日志的话可以筛选下看下有没有异常的IP,在安全组屏蔽下 筛选命令:awk '{a[$1] += 1;} END {for (i in a) printf("%d %s\n", a[i], i);}' 日志文件 | sort -n | tail 可以统计访问量最大的十个IP。

nginx使用这个awk '{print $1}' /var/log/nginx/access.log | sort | uniq -c | sort -nr -k1 | head -n 10 登录服务器之后输入命令即可,日志文件路径要替换成您的 安全组屏蔽规则内网入方向选择拒绝,授权对象填写异常的IP即可,拒绝的优先级设为1https://help.aliyun.com/document_detail/25471.html

分析结果:网站被攻击。

解决方法:通过查看网站日志,筛选访问量最大的前10个异常IP,在安全组下进行屏蔽处理。

 

开启访问日志功能

由于在此之前网站没有开启访问日志功能,之前的访问记录查看不到,所以我们先要开启访问日志功能。nginx开启访问日志。

1、查找网站配置文件路径命令:

  1. find / -name www.xxx.com.conf

2、找到网站nginx配置文件后,打开并将所有access_log参数改成on(“on”代表开启);

3、将更改后的nginx配置文件回传服务器,重启nginx,重启命令:

  1. service nginx restart

这样就开启了访问日志功能,以后网站的每一个访问IP就都会记录。

 

筛选异常IP并在安全组添加屏蔽

1、筛选访问量最大的十个IP

登录服务器之后输入筛选命令即可,日志文件路径要替换成你自己的。

  1. awk '{print $1}' /data/wwwlogs/access_nginx.log | sort | uniq -c | sort -nr -k1 | head -n 10

查找日志文件路径命令:

  1. find / -name access_nginx.log

 

网站被攻击了怎么办?记录阿里工单筛选并屏蔽异常IP

参数解释:

  • awk:一个脚本语言解释器,适合格式化文本,对文本进行较复杂格式处理;
  • '{print $1}':打印该行的第一个字段;
  • /var/log/nginx/access.log:网站访问日志文件路径;
  • sort:对文本内容进行排序命令;
  • uniq -c:在每列旁边显示该行重复出现的次数;
  • sort -nr -k1:依照数值的大小反向排序;
  • head -n 10:显示结果中的前10行;

 

2、安全组添加屏蔽规则

安全组屏蔽规则设置,内网 - 入方向 - 选择拒绝,协议选择全部IPv4,拒绝的优先级设为1,授权对象填写异常的IP即可。

网站被攻击了怎么办?记录阿里工单筛选并屏蔽异常IP

不明白参数的可以查看《添加安全组规则

到此,攻击我们网站的异常IP就被屏蔽了。但是还不能彻底放松警惕,如果出现大量攻击IP就很麻烦了,我们可以依照上面的思路进行排查和处理。

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: