You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

CentOS 7 高出站流量50-80MiB/s,无法定位进程求助

排查CentOS 7突发大流量出站问题的步骤

这种刚装完系统就炸出异常大流量的情况确实闹心,直接重装虽然省事,但既然好奇想挖根源,咱们一步步来揪出问题:

  • 先确认端口解析是否准确:iftop显示的asterix是端口名,先查它对应的实际端口号,避免解析错误误导排查:

    grep asterix /etc/services
    

    找到对应端口后,后续排查用端口号会更精准。

  • 实时抓包锁定流量细节:netstat和lsof可能抓不到短生命周期的连接(比如快速建立关闭的恶意连接),用tcpdump直接抓包:

    # 替换成刚才查到的端口号,比如假设是5038
    tcpdump -i any port 5038 -nn
    # 如果没查到端口号,直接抓所有非内网的出站流量(替换成你的内网网段)
    tcpdump -i any dst not in 192.168.0.0/16 -nn
    

    这样能看到目标IP、包的大小和类型,也可以把包保存下来后续分析:

    tcpdump -w suspicious_traffic.pcap -i any
    
  • 按进程追踪流量:用nethogs工具直接关联流量和进程,比iftop更直观:
    先安装工具:

    yum install nethogs -y
    

    运行(替换成你的网卡名,比如eth0或者ens33):

    nethogs eth0
    

    它会实时显示每个进程的出站/入站流量,直接定位到产生大流量的进程PID和名称。

  • 排查可疑进程与服务:

    • 用ps aux --sort=-%cpu,-%mem查看CPU、内存占用高的进程,留意陌生的进程名;
    • 用systemctl list-units --type=service --state=running列出所有运行的服务,检查是否有未授权的服务在后台运行;
    • 检查定时任务,看是否有恶意脚本定时执行:
      crontab -l
      ls -la /etc/cron* /var/spool/cron/
      
  • 从系统日志找线索:系统日志里可能记录了异常连接、进程启动的痕迹:

    # 查看系统消息日志
    tail -n 100 /var/log/messages
    # 查看安全日志(登录、权限变更等)
    tail -n 100 /var/log/secure
    # 查看最近1小时的所有日志
    journalctl --since "1 hour ago" --no-pager
    
  • 扫描rootkit与隐藏进程:如果怀疑系统被植入恶意程序,用rootkit扫描工具检查:
    先安装工具:

    yum install rkhunter chkrootkit -y
    

    运行扫描:

    rkhunter -c --sk
    chkrootkit
    

    重点关注扫描结果里的隐藏进程、异常文件警告项。

  • 检查防火墙规则:确认是否有被修改的出站规则,允许大量流量流出:

    firewall-cmd --list-all
    # 如果用的是iptables
    iptables -L -n -v
    

如果以上步骤都排查完还是找不到明确的根源,那可能是内核级的恶意模块或者更隐蔽的入侵,这时候重装系统确实是最稳妥的选择,但至少你已经把常见的排查路径都走了一遍,也排除了很多可能性。

内容的提问来源于stack exchange,提问作者Stuart Young

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 08:33:03