如何检查 Linux 服务器是否遭受 DDoS 攻击?

avatar
作者
猴君
阅读量:2

1. 写在前面

DDoS(Distributed Denial-of-Service)攻击是最常见的服务器安全威胁之一,攻击频率和强度逐年稳步上升。本文主要介绍如何通过资源监控和及时采取一些措施来缓解 DDos 攻击。

2. 什么是 DDoS 攻击?

DDoS 是一种恶意行为,攻击发起方通过向网络发出大量请求来耗尽目标服务器所有可用资源的攻击,与标准的 DoS(拒绝服务)攻击不同:

DDoS:

  • 采用多个分布式的设备:通常情况下,设备已被黑客提前入侵并安装相关木马,设备所有者不知情;

  • 攻击针对多种网络设备和协议,而不仅仅是网络端点;

以下是三种主要的 DDoS 攻击类型:

  • 应用层 DDoS(OSI模型 第 7 层):重点攻击 Web 服务,如 Apache 和 Nginx 等;

  • 协议攻击(OSI模型 第 3/4 层):针对重要网络设备上的操作系统和防火墙;

  • 容量攻击(Volumetric attacks):产生大量流量,消耗服务器可用带宽和吞吐量;

3. 如何检查 Linux 服务器是否受到 DDoS 攻击?

恶意行为者(黑客)使用标准网络进行 DDoS 攻击。因此,通过监视网络流量是否存在异常连接来检测攻击通常是一种简单的方式。以下列出了检查服务器是否遭受 DDoS 攻击的一些简单方法。

3.1 检查服务器负载

使用 uptime 命令检查服务器的平均负载:

root@jpzhang-dev:~# uptime    00:28:32 up 12 days, 13:13,  2 users,  load average: 0.13, 0.10, 0.04    

显示三个值:分别代表一分钟、五分钟和十五分钟内的平均负载:

0.13, 0.10, 0.04    

服务器可用线程数是服务器可接受负载的一个便捷参考。如果负载等于或大于线程数,则可能表明活动量过高。

root@jpzhang-dev:~# grep processor /proc/cpuinfo | wc -l   4    

在本例中,服务器有 4 个可用线程。平均负载高于 4 表示服务器负载异常高。

由于篇幅有限,各位直接点击嚯取哦:CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享

200多本网络安全系列电子书
网络安全标准题库资料
项目源码
网络安全基础入门、Linux、web安全、攻防方面的视频
网络安全学习路线图

3.2 检查网络负载

如果服务器只是速度慢,但仍可通过直接连接(如通过 IPMI)访问,可使用以下工具来检查网络负载。

(1). bmon

bmon 是一款带宽监控和速率估算工具,在 Linux 命令行可提供简单的数据可视化。

ubuntu 安装:sudo apt install bmon

启动:root@jpzhang-dev:~# bmon

使用键盘的向上或向下箭头指定到要检查的网络设备。

(2). nload

nload 工具实时监控网络流量和带宽使用情况。

ubuntu 安装:sudo apt install nload

启动:root@jpzhang-dev:~# nload

按向左或向右箭头指定到要监控网络接口,终端将会显示所选接口进出网络流量详情。

(3). vnStat

nload 类似,vnStat 也是一款流量监控工具。vnStat 的优势在于它能为指定接口保存每小时、每天和每月的网络流量日志。

ubuntu 安装:sudo apt install vnstat

默认列出所有可用网络接口:

root@jpzhang-dev:~# vnstat   ------------------------------------------------------------------------------------                         rx      /      tx      /     total    /   estimated    br-3c911bd828a7: Not enough data available yet.    br-921af635eb7e:          2024-01      1.02 KiB  /       210 B  /    1.22 KiB  /     --                 today      1.02 KiB  /       210 B  /    1.22 KiB  /      34 KiB       docker0: Not enough data available yet.    ens3:          2024-01     33.11 KiB  /   39.63 KiB  /   72.74 KiB  /     --                 today     33.11 KiB  /   39.63 KiB  /   72.74 KiB  /    1.97 MiB       veth15be175:          2024-01      2.23 MiB  /    1.19 MiB  /    3.41 MiB  /     --                 today      2.23 MiB  /    1.19 MiB  /    3.41 MiB  /   94.55 MiB   ... ...    

**注意:**如果刚刚安装了 vnStat,它将给出以下消息“ens3:Not enough data available yet.”。等待一段时间,然后再次尝试该命令。

(4). iftop

iftop 以用户友好的格式显示网络连接列表和相关网络信息。默认情况下,列表按照带宽使用情况排序。

ubuntu 安装:sudo apt install iftop

启动:iftop

(5). ifstat

ifstat 命令输出网络接口统计数据。默认情况下,它会显示每个活动接口的进出网络流量数据。

ubuntu 安装:sudo apt install ifstat

启动:ifstat

3.3 检查连接到服务器的 IP 地址

列出当前连接到服务器的 IP 地址可帮助识别潜在威胁。

netstat 是一款命令行工具,可用于列出系统上所有的网络套接字连接情况,包括 tcp, udp 以及 unix 套接字,另外它还能列出处于监听状态(即等待接入请求)的套接字。

下面的命令使用带有 -n-t-u 选项的 netstat 命令,用于创建包含 TCP 和 UDP 连接的输出,然后使用 awkcutsort 命令对输出进行格式化。

root@jpzhang-dev:~# netstat -ntu|awk '{print $5}'|cut -d: -f1 -s|sort|uniq -c|sort -nk1 -r   --------------------------------------------------------------------------------------         1 10.20.0.6    

显示已连接的 IP 地址。

负载高的服务器上,列表可能很长,难以阅读。可以过滤输出,在一行中显示同一子网中的所有连接。下面的示例合并了同一 255.255.0.0 子网掩码中的 IP 地址。

netstat -ntu|awk '{print $5}'|cut -d: -f1 -s |cut -f1,2 -d'.'|sed 's/$/.0.0/'|sort|uniq -c|sort -nk1 -r    

现在输出只显示一行,10.20.0.6 前面的数字 1 表明有1个连接来自该 IP 地址。

由于篇幅有限,各位直接点击嚯取哦:CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享

200多本网络安全系列电子书
网络安全标准题库资料
项目源码
网络安全基础入门、Linux、web安全、攻防方面的视频
网络安全学习路线图

4. 如何缓解 Linux 服务器的 DDoS 攻击?

一旦确认服务器遭受 DDoS 攻击,采取一些快速措施以减轻损失。

**注:**未受保护的服务器很容易成为 DDoS 攻击对象。具有 DDoS 保护功能的专用服务器可在不中断可用性的情况下继续工作。

使用路由命令阻止攻击者的 IP 地址:

sudo route add [ip-address] reject    

**注意:**路由(route)命令是 net-tools 软件包的一部分。要在 Ubuntu 上安装:sudo apt install net-tools

或者使用 iptables

(1)阻止某个 IP 地址访问:

iptables -A INPUT 1 -s [ip-address] -j DROP/REJECT    

(2)保存新策略规则:

service iptables save    

(3)重新启动服务:

service iptables restart    

(4)重新启动 Web 服务。例如,如果运行的是 Apache 网络服务器:

sudo systemctl restart apache2    

现在,系统已被配置为拒绝来自可疑 IP 地址的流量。

5.结论

本文介绍了 DDoS 攻击,并提供了识别方法。此外,还介绍了一些快速反应技巧,以帮助缓解正在发生的 DDoS 攻击。

题外话

初入计算机行业的人或者大学计算机相关专业毕业生,很多因缺少实战经验,就业处处碰壁。下面我们来看两组数据:

  • 2023届全国高校毕业生预计达到1158万人,就业形势严峻;

  • 国家网络安全宣传周公布的数据显示,到2027年我国网络安全人员缺口将达327万。

一方面是每年应届毕业生就业形势严峻,一方面是网络安全人才百万缺口。

6月9日,麦可思研究2023年版就业蓝皮书(包括《2023年中国本科生就业报告》《2023年中国高职生就业报告》)正式发布。

2022届大学毕业生月收入较高的前10个专业

本科计算机类、高职自动化类专业月收入较高。2022届本科计算机类、高职自动化类专业月收入分别为6863元、5339元。其中,本科计算机类专业起薪与2021届基本持平,高职自动化类月收入增长明显,2022届反超铁道运输类专业(5295元)排在第一位。

具体看专业,2022届本科月收入较高的专业是信息安全(7579元)。对比2018届,电子科学与技术、自动化等与人工智能相关的本科专业表现不俗,较五年前起薪涨幅均达到了19%。数据科学与大数据技术虽是近年新增专业但表现亮眼,已跻身2022届本科毕业生毕业半年后月收入较高专业前三。五年前唯一进入本科高薪榜前10的人文社科类专业——法语已退出前10之列。
在这里插入图片描述

“没有网络安全就没有国家安全”。当前,网络安全已被提升到国家战略的高度,成为影响国家安全、社会稳定至关重要的因素之一。

网络安全行业特点

1、就业薪资非常高,涨薪快 2021年猎聘网发布网络安全行业就业薪资行业最高人均33.77万!

2、人才缺口大,就业机会多

2019年9月18日《中华人民共和国中央人民政府》官方网站发表:我国网络空间安全人才 需求140万人,而全国各大学校每年培养的人员不到1.5W人。猎聘网《2021年上半年网络安全报告》预测2027年网安人才需求300W,现在从事网络安全行业的从业人员只有10W人。

行业发展空间大,岗位非常多

网络安全行业产业以来,随即新增加了几十个网络安全行业岗位︰网络安全专家、网络安全分析师、安全咨询师、网络安全工程师、安全架构师、安全运维工程师、渗透工程师、信息安全管理员、数据安全工程师、网络安全运营工程师、网络安全应急响应工程师、数据鉴定师、网络安全产品经理、网络安全服务工程师、网络安全培训师、网络安全审计员、威胁情报分析工程师、灾难恢复专业人员、实战攻防专业人员…

职业增值潜力大

网络安全专业具有很强的技术特性,尤其是掌握工作中的核心网络架构、安全技术,在职业发展上具有不可替代的竞争优势。

随着个人能力的不断提升,所从事工作的职业价值也会随着自身经验的丰富以及项目运作的成熟,升值空间一路看涨,这也是为什么受大家欢迎的主要原因。

从某种程度来讲,在网络安全领域,跟医生职业一样,越老越吃香,因为技术愈加成熟,自然工作会受到重视,升职加薪则是水到渠成之事。

黑客&网络安全如何学习

今天只要你给我的文章点赞,我私藏的网安学习资料一样免费共享给你们,来看看有哪些东西。

由于篇幅有限,各位直接点击嚯取哦:CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享

1.学习路线图

攻击和防守要学的东西也不少,具体要学的东西我都写在了上面的路线图,如果你能学完它们,你去就业和接私活完全没有问题。

2.视频教程

网上虽然也有很多的学习资源,但基本上都残缺不全的,这是我自己录的网安视频教程,上面路线图的每一个知识点,我都有配套的视频讲解。

内容涵盖了网络安全法学习、网络安全运营等保测评、渗透测试基础、漏洞详解、计算机基础知识等,都是网络安全入门必知必会的学习内容。
在这里插入图片描述

(都打包成一块的了,不能一一展开,总共300多集)

3.技术文档和电子书

技术文档也是我自己整理的,包括我参加大型网安行动、CTF和挖SRC漏洞的经验和技术要点,电子书也有200多本,由于内容的敏感性,我就不一一展示了。

在这里插入图片描述

4.工具包、面试题和源码

“工欲善其事必先利其器”我为大家总结出了最受欢迎的几十款款黑客工具。涉及范围主要集中在 信息收集、Android黑客工具、自动化工具、网络钓鱼等,感兴趣的同学不容错过。

还有我视频里讲的案例源码和对应的工具包,需要的话也可以拿走。

由于篇幅有限,各位直接点击嚯取哦:CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享

最后就是我这几年整理的网安方面的面试题,如果你是要找网安方面的工作,它们绝对能帮你大忙。

这些题目都是大家在面试深信服、奇安信、腾讯或者其它大厂面试时经常遇到的,如果大家有好的题目或者好的见解欢迎分享。

参考解析:深信服官网、奇安信官网、Freebuf、csdn等

内容特点:条理清晰,含图像化表示更加易懂。

内容概要:包括 内网、操作系统、协议、渗透测试、安服、漏洞、注入、XSS、CSRF、SSRF、文件上传、文件下载、文件包含、XXE、逻辑漏洞、工具、SQLmap、NMAP、BP、MSF…

因篇幅有限,仅展示部分资料,需要保存下方图片,微信扫码即可前往获取

请添加图片描述

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!