在Linux下如何查CC攻击?

本文介绍了CC攻击的基本概念,并提供了一系列Linux命令用于检测CC攻击,包括查看特定端口的连接数、TCP连接状态等,同时提供了使用iptables进行IP封禁的方法。

什么是CC攻击?CC攻击就是利用大量代理服务器对目标计算机发起大量连接,导致目标服务器资源枯竭造成拒绝服务。那么如何判断查询CC攻击呢?本文主要介绍了一些Linux下判断CC攻击的命令。

查看所有80端口的连接数

netstat -nat|grep -i "80"|wc -l

对连接的IP按连接数量进行排序

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

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

netstat -ntu | awk '{print $5}' | egrep -o "[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}" | sort | uniq -c | sort -nr

查看TCP连接状态

netstat -nat |awk '{print $6}'|sort|uniq -c|sort -rn

netstat -n | awk '/^tcp/ {print $NF}'|sort|uniq -c|sort -rn

netstat -n | awk '/^tcp/ {++S[$NF]};END {for(a in S) print a, S[a]}'

netstat -n | awk '/^tcp/ {++state[$NF]}; END {for(key in state) print key,"\t",state[key]}'

netstat -n | awk '/^tcp/ {++arr[$NF]};END {for(k in arr) print k,"\t",arr[k]}'

netstat -ant | awk '{print $NF}' | grep -v '[a-z]' | sort | uniq -c

查看80端口连接数最多的20个IP

cat /www/web_logs/waitalone.cn_access.log|awk '{print $1}'|sort|uniq -c|sort -nr|head -100

tail -n 10000 /www/web_logs/waitalone.cn_access.log|awk '{print $1}'|sort|uniq -c|sort -nr|head -100

cat /www/web_logs/waitalone.cn_access.log|awk '{print $1}'|sort|uniq -c|sort -nr|head -100

netstat -anlp|grep 80|grep tcp|awk '{print $5}'|awk -F: '{print $1}'|sort|uniq -c|sort -nr|head -n20

netstat -ant |awk '/:80/{split($5,ip,":");++A[ip[1]]}END{for(i in A) print A,i}' |sort -rn|head -n20

用tcpdump嗅探80端口的访问看看谁最高

tcpdump -i eth0 -tnn dst port 80 -c 1000 | awk -F"." '{print $1"."$2"."$3"."$4}' | sort | uniq -c | sort -nr |head -20

查找较多time_wait连接

netstat -n|grep TIME_WAIT|awk '{print $5}'|sort|uniq -c|sort -rn|head -n20

查找较多的SYN连接

netstat -an | grep SYN | awk '{print $5}' | awk -F: '{print $1}' | sort | uniq -c | sort -nr | more

linux下实用iptables封ip段的一些常见命令:

封单个IP的命令是:

iptables -I INPUT -s 211.1.0.0 -j DROP

封IP段的命令是:

iptables -I INPUT -s 211.1.0.0/16 -j DROP

iptables -I INPUT -s 211.2.0.0/16 -j DROP

iptables -I INPUT -s 211.3.0.0/16 -j DROP

封整个段的命令是:

iptables -I INPUT -s 211.0.0.0/8 -j DROP

封几个段的命令是:

iptables -I INPUT -s 61.37.80.0/24 -j DROP

iptables -I INPUT -s 61.37.81.0/24 -j DROP

想在服务器启动自运行的话有三个方法:

1、把它加到/etc/rc.local中

2、iptables-save >/etc/sysconfig/iptables可以把你当前的iptables规则放到/etc/sysconfig/iptables中,系统启动iptables时自动执行。

3、service iptables save 也可以把你当前的iptables规则放/etc/sysconfig/iptables中,系统启动iptables时自动执行。

后两种更好此,一般iptables服务会在network服务之前启来,更安全。



本文转自 a120518129 51CTO博客,原文链接:http://blog.51cto.com/silencezone/1704156,如需转载请自行联系原作者

<think>首先,用户的问题是:“我想在Linux系统中找用于监测ARP探测过程中IP地址变化的命令 请问Linux ARP探测 IP变化 监测命令”。这涉及到在Linux中监测ARP探测和IP地址变化的命令。 从系统级指令中,我知道: - 所有行内数学表达式用$...$格式。 - 独立公式用$$...$$格式。 - 使用中文回答。 - 生成相关问题。 - 在回答中引用的段落末尾添加引用标识,如[^1]。 - 结构清晰,逐步解决问题。 - 参考提供的引用内容。 提供的引用内容: - [^1]: arpwatch是一个开源的计算机软件程序,用于监控网络上的以太网流量活动,如IP和MAC地址的变化。它可以维护一个以太网/IP地址配对的数据库,并生成日志。 - [^2]: ARP欺骗检测工具的工作原理是通过捕获和分析ARP报文,检IP和MAC地址的对应关系。工具如ARPWatch会发出警报。 - [^3]: arping是一个命令行工具,用于发送ARP请求并接收ARP响应,可以检IP地址冲突。 - [^4]: 一些Linux命令,如ifconfig和netstat,用于获取IP地址和查看连接。 用户的需求是监测ARP探测过程中IP地址变化的命令。ARP探测通常涉及发送ARP请求来解析IP到MAC地址的映射。监测IP变化可能意味着检测何时IP地址对应的MAC地址发生变化,这可能表示IP冲突或ARP欺骗。 基于引用,最相关的命令是: - arpwatch:正如[^1]所述,它专门用于监控IP和MAC地址的变化,并生成日志。 - arping:[^3]提到它可以用于检IP地址冲突,但它是主动工具,而不是被动监测。 - 其他工具如tcpdump或Wireshark可以捕获ARP流量,但用户可能想要更简单的命令。 所以,我应该推荐arpwatch作为主要工具,因为它直接满足需求:监测IP和MAC地址的变化。 回答结构: 1. **介绍问题**:解释ARP探测和IP变化监测的重要性。 2. **推荐命令**:详细描述arpwatch命令,包括如何安装和使用。 3. **其他相关命令**:提到arping或tcpdump作为补充。 4. **添加引用**:在描述arpwatch时,引用[^1]。 5. **生成相关问题**:在最后添加相关问题部分。 确保使用中文回答。 逐步解决问题: - 步骤1:解释什么是ARP探测和为什么要监测IP变化。 - 步骤2:介绍arpwatch命令。 - 步骤3:给出安装和使用示例。 - 步骤4:讨论其他选项。 - 步骤5:总结。 引用标识:当提到arpwatch的功能时,添加[^1]。 生成相关问题:基于主题,如如何安装arpwatch、如何解释日志、其他监测工具等。 最终回答格式: - 使用标题或清晰段落。 - 结尾有“相关问题”部分。</think>### Linux 中监测 ARP 探测和 IP 地址变化的命令 在 Linux 系统中,监测 ARP 探测过程中 IP 地址变化的需求,主要涉及监控网络中的 ARP(地址解析协议)流量,以检测 IP 地址与 MAC 地址映射关系的变化。这有助于识别潜在的网络问题,如 IP 冲突、ARP 欺骗攻击或设备变动。以下我将逐步解释并推荐相关命令,确保回答结构清晰、真实可靠。重点工具是 `arpwatch`,它专为此设计。 #### 步骤 1: 理解需求背景 - ARP 探测是网络设备通过发送 ARP 请求来解析 IP 地址到 MAC 地址的过程。 - 监测 IP 变化意味着跟踪何时同一 IP 地址对应不同的 MAC 地址(例如,新设备加入或恶意攻击)。 - 在 Linux 中,这通常通过被动监听网络流量来实现,而不是主动探测。 #### 步骤 2: 核心命令推荐 — `arpwatch` `arpwatch` 是最适合的工具,它是一款开源的被动监控工具,专门用于捕获 ARP 报文并记录 IP-MAC 地址配对的变化。当网络中出现新的 IP 地址或现有配对发生更改时,它会生成详细日志,包括时间戳和事件类型(如添加、删除或修改)。这直接满足了监测 IP 变化的需求[^1]。 - **功能亮点**: - 自动维护一个以太网/IP 地址配对的数据库。 - 生成日志文件(默认在 `/var/log/arpwatch`),记录所有变化事件。 - 可选通过电子邮件发送警报,便于管理员及时响应。 - 支持多种网络接口,适用于持续监控。 - **安装方法**: - 在基于 Debian/Ubuntu 的系统上,使用包管理器安装: ```bash sudo apt-get update sudo apt-get install arpwatch ``` - 在基于 RHEL/CentOS 的系统上: ```bash sudo yum install epel-release # 先启用 EPEL 仓库 sudo yum install arpwatch ``` - **基本使用示例**: - 启动监控(指定网络接口,如 `eth0`): ```bash sudo arpwatch -i eth0 ``` - 查看日志文件(实时监控变化): ```bash tail -f /var/log/arpwatch/arpwatch.log ``` 输出示例: ``` Jul 10 14:30:01 arpwatch: new station 192.168.1.100 aa:bb:cc:dd:ee:ff Jul 10 14:35:01 arpwatch: changed ethernet address 192.168.1.100 aa:bb:cc:dd:ee:ff (old: 00:11:22:33:44:55) ``` 这表示 IP 地址 `192.168.1.100` 的 MAC 地址发生了变化,帮助您识别潜在问题。 - **注意事项**: - 确保以 root 权限运行,以捕获网络流量。 - 如果日志未启用,检系统日志服务(如 `systemctl status arpwatch`)。 - 更多选项:使用 `man arpwatch` 查看完整文档,如 `-d` 调试模式或 `-e` 邮件报警设置。 #### 步骤 3: 其他辅助命令 虽然 `arpwatch` 是首选,但以下命令可作为补充: - **arping**:用于主动发送 ARP 请求,检测 IP 地址冲突(如是否有多个设备响应同一 IP)。它不直接监测变化,但可用于验证可疑 IP。例如: ```bash sudo arping -c 3 192.168.1.100 # 发送 3 个 ARP 请求到指定 IP ``` 如果输出显示多个 MAC 地址响应,则可能发生 IP 冲突[^3]。 - **tcpdump**:通用网络抓包工具,可捕获 ARP 流量进行分析。但需手动过滤,不如 `arpwatch` 自动化: ```bash sudo tcpdump -i eth0 arp # 捕获所有 ARP 包 ``` 结合 `grep` 可搜索特定 IP 变化,例如: ```bash sudo tcpdump -i eth0 arp | grep "192.168.1.100" ``` - **ip neigh**:查看 ARP 缓存表,快速检当前 IP-MAC 映射: ```bash ip neigh show # 显示所有邻居条目 ``` 如果条目频繁变化,可能表示问题。 #### 步骤 4: 最佳实践和安全建议 - **为什么选择 `arpwatch`**:它轻量级、易配置,且专为长期监控设计,适合生产环境。引用[^2]提到,ARP 欺骗检测工具正是通过分析 ARP 报文变化来工作,`arpwatch` 是此类工具的代表。 - **潜在风险**:在大型网络中,日志量可能较大;建议配置邮件警报或集成到监控系统(如 Nagios)。 - **综合方案**:结合 `arpwatch`(被动监控)和 `arping`(主动验证),可全面覆盖 ARP 探测和 IP 变化监测。 总之,`arpwatch` 是解决您需求的核心命令。安装后运行它,即可自动监测 IP 地址变化。如果遇到问题,检网络接口权限或系统日志。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值