当前位置: 首页 > news >正文

netstat命令_使用netstat命令验证DDOS入侵

一般来说,服务器非常慢可能原因是多方面的,有可能是配置错误,脚本错误或者是一些奇诡的硬件。当然也有可能是有人对你的服务器进行 Dos (拒绝服务攻击)或者 DDOS (分布式拒绝服务攻击)。

Dos攻击或者DDos攻击目的是使服务器或者网络资源耗尽,使其他用户无法使用。一般来说,这种攻击主要针对重要的网站或服务,比如银行、信用卡支付网关甚至是根域名服务器。Dos攻击主要通过强制目标主机重启或大量消耗其主机资源,使得目标主机无法提供服务或者妨害主机和用户之间的通信的手段,使得主机无法提供正常的服务的。

a542f06ad443c4c11b79025cd7a177b7.png

在本文中你将知道如何在终端中使用netstat命令判断服务器是否遭受Dos攻击。

netstat命令的用户手册描述其作用是用来显示网络连接、路由表、接口统计、伪连接和组播成员的。

一些例子和解释

netstat -na

该命令将显示所有活动的网络连接。

netstat -an | grep :80 | sort

显示所有80端口的网络连接并排序。这里的80端口是http端口,所以可以用来监控web服务。如果看到同一个IP有大量连接的话就可以判定单点流量攻击了。

netstat -n -p|grep SYN_REC | wc -l

这个命令可以查找出当前服务器有多少个活动的 SYNC_REC 连接。正常来说这个值很小,最好小于5。当有Dos攻击或者邮件炸弹的时候,这个值相当的高。尽管如此,这个值和系统有很大关系,有的服务器值就很高,也是正常现象。

netstat -n -p | grep SYN_REC | sort -u

列出所有连接过的IP地址。

netstat -n -p | grep SYN_REC | awk '{print $5}' | awk -F: '{print $1}'

列出所有发送SYN_REC连接节点的IP地址。

netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n

使用netstat命令计算每个主机连接到本机的连接数。

netstat -anp |grep 'tcp|udp' | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n

列出所有连接到本机的UDP或者TCP连接的IP数量。

netstat -ntu | grep ESTAB | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nr

检查 ESTABLISHED 连接并且列出每个IP地址的连接数量。

netstat -plan|grep :80|awk {'print $5'}|cut -d: -f 1|sort|uniq -c|sort -nk 1

列出所有连接到本机80端口的IP地址和其连接数。80端口一般是用来处理HTTP网页请求。

如何减少DOS攻击

一旦你获得攻击服务器的IP地址你就可以使用以下命令拒绝此IP的所有连接。

iptables -A INPUT 1 -s $IPADRESS -j DROP/REJECT

注意,你需要将 $IPADRESS 替换成需要拒绝连接的IP地址。

执行完以上命令后,使用以下命令结束所有的httpd连接以清理系统。

killall -KILL httpd

然后执行以下命令重启httpd服务。

service httpd start           #RedHat 系统 
/etc/init/d/apache2 restart   #Debian 系统

46cac88594c6fa7941019c8f0f68aabf.png

相关文章:

  • 深度学习和神经网络_神经网络与深度学习
  • oracle 不同用户 关联表_【DB笔试面试517】在Oracle中,什么是临时表?它有哪些分类?有关临时表需要注意什么?...
  • small用于不连续数组_左神直通BAT算法之找出B中不属于A的数
  • python接口自动化测试报告_python接口自动化(二十八)--html测试 报告——下(详解)...
  • python对键和值有没有类型限制_python基础之-数据类型
  • python编程小白变大神_零基础Python,从小白到大神的方法全在这了!
  • 如果表不存在则创建_当创建一个文件的时候,操作系统发生了什么
  • 胖终端和瘦终端的区别_企业级无线覆盖与家庭级无线覆盖的区别与发展趋势
  • pythonnode js结合_Node js 和 python 混合编程之JSON入参的区别 如何转换js对象使其能在python脚本中作为python 字典直接使用...
  • sql 统计每月入职离职人数_说离职就离职,他们就不害怕失业吗,为什么90后的离职率那么高...
  • redis 端口_基础架构之Redis
  • python check module_Python 的 module 机制(重要)
  • springboot技术架构图_阿里技术专家告诉你:如何画出优秀的架构图
  • python嗅探m3u8_python通过m3u8下载视频
  • 安装python3.6.1的步骤_在Linux上安装Python3.6.1
  • 【译】JS基础算法脚本:字符串结尾
  • $translatePartialLoader加载失败及解决方式
  • iOS仿今日头条、壁纸应用、筛选分类、三方微博、颜色填充等源码
  • Java 内存分配及垃圾回收机制初探
  • Java读取Properties文件的六种方法
  • magento 货币换算
  • Quartz初级教程
  • SAP云平台运行环境Cloud Foundry和Neo的区别
  • SegmentFault 社区上线小程序开发频道,助力小程序开发者生态
  • vue-cli在webpack的配置文件探究
  • 包装类对象
  • 分享自己折腾多时的一套 vue 组件 --we-vue
  • 两列自适应布局方案整理
  • 排序算法之--选择排序
  • 前端每日实战:61# 视频演示如何用纯 CSS 创作一只咖啡壶
  • 前端面试总结(at, md)
  • 区块链技术特点之去中心化特性
  • 如何优雅地使用 Sublime Text
  • 腾讯优测优分享 | 你是否体验过Android手机插入耳机后仍外放的尴尬?
  • 通过来模仿稀土掘金个人页面的布局来学习使用CoordinatorLayout
  • 微服务核心架构梳理
  • 线上 python http server profile 实践
  • 详解NodeJs流之一
  • 译有关态射的一切
  • media数据库操作,可以进行增删改查,实现回收站,隐私照片功能 SharedPreferences存储地址:
  • 曜石科技宣布获得千万级天使轮投资,全方面布局电竞产业链 ...
  • (2/2) 为了理解 UWP 的启动流程,我从零开始创建了一个 UWP 程序
  • (27)4.8 习题课
  • (33)STM32——485实验笔记
  • (4)Elastix图像配准:3D图像
  • (8)STL算法之替换
  • (ISPRS,2023)深度语义-视觉对齐用于zero-shot遥感图像场景分类
  • (PyTorch)TCN和RNN/LSTM/GRU结合实现时间序列预测
  • (附源码)ssm基于jsp的在线点餐系统 毕业设计 111016
  • (六)Hibernate的二级缓存
  • (三)Hyperledger Fabric 1.1安装部署-chaincode测试
  • (删)Java线程同步实现一:synchronzied和wait()/notify()
  • (原創) X61用戶,小心你的上蓋!! (NB) (ThinkPad) (X61)
  • (转)PlayerPrefs在Windows下存到哪里去了?
  • (转)用.Net的File控件上传文件的解决方案