IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    Linux 服务器大量向外发包问题排查

    Teacher Du发表于 2024-11-01 03:51:26
    love 0

    最近杜老师的一台云服务器,向外大量发送流量,不断的建立 TCP 连接,目标地址是美国一个 IP,估计被当成肉鸡了,比较悲惨,今天杜老师聊一下如何处理这个问题!

    问题排查

    1
    sar -n DEV 2 10

    注意:在服务器运行上面命令,确认了出现大量发包的问题。

    问题处理

    开始之前,先清除 eth0 所有队列规则:

    1
    tc qdisc del dev eth0 root 2> /dev/null > /dev/null

    定义顶层队列规则,指定 default 类别编号:

    1
    2
    tc qdisc add dev eth0 root handle 1: htb default 20
    tc class add dev eth0 parent 1: classid 1:20 htb rate 2000kbit

    查看状态:

    1
    2
    yum install -y tcpdump
    tcpdump -nn

    找到大量的 IP 地址,可以将异常 IP 加入到/etc/hosts.deny,或者防火墙设置下。之后安装个 nethogs:

    1
    2
    3
    4
    5
    yum -y install epel-release
    yum clean all
    yum makecache
    yum -y install nethogs
    nethogs

    处理结果

    找到大量发包进程,之后 kill 掉,排查下这个进程是什么程序,文件路径在哪,删除掉异常的文件。

    目前的问题解决了,观察一段时间,看看问题是否还会发生,防火墙将公网 IP 进行了访问限制,只允许指定 IP 访问,增加安全。

    命令扩展

    nethogs 的选项如下:

    选项作用
    V显示版本信息,注意是大写字母 V
    d延迟更新刷新速率,秒为单位。默认为 1
    t跟踪模式
    p混合模式
    设备要监视的设备名称,默认为 eth0

    nethogs 运行时,按键效果如下:

    按键效果
    q退出
    m总数、当前使用情况模式之间切换


沪ICP备19023445号-2号
友情链接