Linux中端口检查怎么排查端口扫描软件的告警

大明吖_9340

大明吖_9340

2026-09-17

651人浏览

原创

端口检查本身不告警,真正触发告警的是异常扫描行为;排查关键在于查“谁在扫、怎么扫、扫了什么、是否合法”,需根据fail2ban日志、iptables限速、自定义脚本或siem等不同告警来源,结合tcpdump、ss、日志分析等手段交叉验证并分类处置。

linux中端口检查怎么排查端口扫描软件的告警

端口检查本身不会“告警”,它只是查看状态的手段;真正触发告警的是检测到异常扫描行为——比如某IP在短时间内狂扫上百个端口。排查这类告警,关键不是查“端口开没开”,而是查“谁在扫、怎么扫、扫了什么、是否合法”。

确认告警来源是哪类工具

不同机制产生的告警,排查路径完全不同:

  • Fail2ban 类日志分析告警:通常来自 /var/log/auth.log(SSH)、/var/log/nginx/error.log(Web)等。先看告警邮件或 journalctl -u fail2ban 输出,定位被封禁的 IP 和匹配的 filter 名称(如 [nginx-badbots]
  • iptables/nftables 连接限速告警:若用了 recentlimit 模块,需查 dmesg | grep -i "DROP"iptables -L -n -v | grep DROP,确认是否因 SYN/NEW 连接超限触发
  • 自定义脚本告警(如 arp/port/icmp 监控):检查 /var/log/scan-alert.log 或脚本中指定的日志路径,看是 ARP 异常、端口连接突增,还是 ICMP 请求超标
  • SIEM 或安全设备告警:需结合原始流量(如 tcpdump 抓包)或 ss -tuln + netstat -antp 快照比对,验证是否真有密集探测流量

快速验证是否真是恶意扫描

别急着拉黑,先做三步交叉验证:

Linux Journey
Linux Journey

当用户想学习Linux基础、命令行、文件系统等时,在LabEx查找并推荐免费的Linux Journey课程。

下载
  • ss -tn state established | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nr | head -10 查当前高频连接源IP,看是否与告警IP一致
  • tcpdump -i eth0 src and port 80 -c 50 -nn 抓包(替换为实际网卡和端口),观察请求是否规律性强(如连续 GET /wp-login.php、/admin.php、/phpmyadmin)、User-Agent 是否为空或含 Nikto/nmap 字样
  • 查该IP是否出现在合法运维清单里:对比 Ansible 日志(/var/log/ansible.log)、Zabbix agent 主动检查记录、备份脚本执行时间,排除定时任务误报

定位扫描行为的技术特征

根据告警类型,聚焦对应痕迹:

  • 全端口扫描(TCP/UDP):执行 nmap -sS -p- 的典型表现是 ss -tuln 看不到新监听端口,但 tcpdump -i eth0 'src <ip> and (tcp or udp)'</ip> 显示大量不同目标端口的 SYN 或 UDP 包
  • 服务识别扫描(-sV):会在 TCP 握手后立刻发探测载荷,表现为 tcpdump -i eth0 'src <ip> and port 22' -A -c 20</ip> 中出现 SSH banner 读取、HTTP Server 头探测等
  • 隐蔽扫描(-sS、-sN、-sF):不完成三次握手,需用 tcpdump 查看 SYN、NULL、FIN 等异常标志位组合,配合 iptables -L INPUT -v -n 看对应规则命中数

收尾:判断处置方式

确认是真实扫描后,按风险等级响应:

  • 内网IP扫内网其他主机:立即查该主机是否中毒(ps auxf 看异常进程、crontab -l 查可疑定时任务),并通知负责人
  • 外网IP扫你暴露的 80/443/22:用 whois <ip></ip> 和 VirusTotal 查历史记录;若多次出现,加入防火墙黑名单(iptables -I INPUT -s <ip> -j DROP</ip>
  • 告警IP是云厂商健康检查或 CDN 回源地址:加白名单,避免误封;可在 Fail2ban 的 jail.local 中用 ignoreip 配置段排除
  • 无法确认来源且频率不高:暂不处置,但开启 auditd 记录其后续行为,命令如 auditctl -a always,exit -F arch=b64 -S connect -F key=port-scan

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
Java 网络安全
Java 网络安全

本专题聚焦 Java 在网络安全与加密通信中的应用,系统讲解常见加密算法(MD5、SHA、AES、RSA)、数字签名、HTTPS证书配置、令牌认证(JWT、OAuth2)及常见安全漏洞防护(XSS、SQL注入、CSRF)。通过实战项目(如安全登录系统、加密文件传输工具),帮助学习者掌握 Java 安全开发与加密技术的实战能力。

2025.10.13

3885

12

PHP 安全与防护
PHP 安全与防护

本专题聚焦于PHP开发中的安全问题与防御措施,详细讲解SQL注入、XSS攻击、CSRF攻击、文件包含漏洞等常见安全风险及其修复方法。通过结合实际案例,帮助开发者理解漏洞成因,掌握输入验证、会话安全、加密存储与安全编码规范,全面提升PHP网站的安全防护水平。

2025.11.04

355

21

磁盘配额是什么
磁盘配额是什么

磁盘配额是计算机中指定磁盘的储存限制,就是管理员可以为用户所能使用的磁盘空间进行配额限制,每一用户只能使用最大配额范围内的磁盘空间。php中文网为大家提供各种磁盘配额相关的内容,教程,供大家免费下载安装。

2023.06.21

3550

4

如何安装LINUX
如何安装LINUX

本站专题提供如何安装LINUX的相关教程文章,还有相关的下载、课程,大家可以免费体验。

2023.06.29

3093

10

linux find
linux find

find是linux命令,它将档案系统内符合 expression 的档案列出来。可以指要档案的名称、类别、时间、大小、权限等不同资讯的组合,只有完全相符的才会被列出来。find根据下列规则判断 path 和 expression,在命令列上第一个 - ( ) , ! 之前的部分为 path,之后的是 expression。还有指DOS 命令 find,Excel 函数 find等。本站专题提供linux find相关教程文章,还有相关

2023.06.30

2133

5

linux修改文件名
linux修改文件名

本专题为大家提供linux修改文件名相关的文章,这些文章可以帮助用户快速轻松地完成文件名的修改工作,大家可以免费体验。

2023.07.05

5070

7

linux系统安装教程
linux系统安装教程

linux系统是一种可以免费使用,自由传播,多用户、多任务、多线程、多CPU的操作系统。本专题提供linux系统安装教程相关的文章,大家可以免费体验。

2023.07.06

4762

7

linux查看文件夹大小
linux查看文件夹大小

Linux是一种自由和开放源码的类Unix操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。linux怎么查看文件夹大小呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

2023.07.20

2873

8

linux查看ip命令
linux查看ip命令

本专题为大家提供linux查看ip命令相关文章内容,感兴趣的朋友可以免费下载体验试试。

2023.07.20

2365

4

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Valgrind支持平台说明
Valgrind支持平台说明

共0课时 | 0人学习

CLion 远程开发实战
CLion 远程开发实战

共0课时 | 0人学习