傲来云 发表于 2025-11-18 14:55:47

如何实时监控端口状态与异常流量

对于运维来说,端口异常往往意味着:服务意外退出;被恶意扫描或爆破;存在未知进程监听端口;挖矿木马占用高位端口;端口突然暴增引发高负载。能及时发现这些情况,比事后排查要轻松得多。本文介绍几种可落地的监控方式。

一、实时查看端口状态
1. 使用 ss 监控端口监听情况(推荐)
ss 是 netstat 的升级版,速度快、信息更全。
ss -tulnp参数说明:
t:TCP
u:UDP
l:仅显示监听
n:不解析域名
p:显示进程名
常用做法:盯紧异常端口
ss -tulnp | grep -E "0.0.0.0|LISTEN"如果你的服务器突然出现:
50000/tcpLISTEN....
60123/tcpLISTEN....而你不认识这些端口,那么可能有猫腻。

二、如何实时检测“新端口被开启”
有时候新端口突然出现,意味着有服务被拉起,或者有木马启动。
下面提供一个小型监控脚本,用来 实时对比端口变化。
端口变化监控脚本
#!/bin/bash

BASELINE=/tmp/port_baseline.txt
CURRENT=/tmp/port_current.txt

# 初始化基线
if [ ! -f "$BASELINE" ]; then
    ss -tuln > "$BASELINE"
    echo "Baseline created."
    exit 0
fi

ss -tuln > "$CURRENT"

DIFF=$(diff $BASELINE $CURRENT)

if [ ! -z "$DIFF" ]; then
    echo " New or removed ports detected:"
    echo "$DIFF"
    cp $CURRENT $BASELINE
fi添加 crontab 每分钟跑一次也很方便。

三、实时监控端口连接量(发现攻击或异常流量)
1. 查看某端口连接数
ss -ant | grep :80 | wc -l如果你的网站端口 80/443 突然出现上千个连接,很可能遭遇 CC 攻击。

2. 按 IP 统计访问量(定位恶意 IP)
ss -tn state established | awk '{print $5}' | awk -F: '{print $1}' | sort | uniq -c | sort -nr | head可以快速看到:哪个 IP 并发最高;是否存在恶意扫描;是否被海外机器人爆破。

四、实时监控流量情况
1. 使用iftop(像 top 的流量监控)
yum install iftop -y
iftop可以看到:实时带宽;每个 IP 的流量情况;是否存在异常上行流量(挖矿木马特征)

2. 使用 nethogs 查看每个进程占用的流量
nethogs如果发现:
python5MB/s
node    4MB/s
unknown 8MB/s那就要小心了。

五、监控端口变化的自动告警系统(可直接使用)
下面是一个 端口异常自动邮件告警脚本(适用于 Linux):
#!/bin/bash

LOG=/tmp/port_watch.log
BASE=/tmp/port_base.txt
CUR=/tmp/port_cur.txt

ss -tuln > $CUR

if [ ! -f $BASE ]; then
    cp $CUR $BASE
    exit 0
fi

DIFF=$(diff $BASE $CUR)

if [ ! -z "$DIFF" ]; then
    echo "Port change detected:" > $LOG
    echo "$DIFF" >> $LOG
    mail -s "Server Port Change Alert" admin@example.com < $LOG
    cp $CUR $BASE
fi适用于:端口异常监听;服务自动拉起;后门端口检测;木马扫描端口识别。

六、结合 fail2ban、firewalld 进行自动阻断
如果监控脚本发现某 IP 同时触发多端口访问,可以让 fail2ban 自动封禁:
例如封禁大量发起 SSH 连接的 IP:
fail2ban-client set sshd banip 1.2.3.4或通过 firewalld:
firewall-cmd --permanent --add-rich-rule="rule family='ipv4' source address='1.2.3.4' reject"
七、总结
实时监控端口和流量是服务器安全的关键环节。运维中 80% 的入侵事件,都能在端口层面提前发现异常。

本篇总结的要点包括:如何查看端口状态;如何检测端口变化;如何快速发现流量异常;如何追踪高访问 IP;如何自动告警端口变化;如何结合防火墙自动封禁攻击流量。
只要把以上方法掌握好,就能提前发现大多数异常服务、木马后门、扫描行为或流量攻击。

页: [1]
查看完整版本: 如何实时监控端口状态与异常流量