温馨提示×

ubuntu防火墙如何监控

小樊
49
2025-08-03 16:12:04
栏目: 智能运维

在Ubuntu系统中,可以使用多种工具和方法来监控防火墙的状态和活动。以下是一些常用的方法和工具:

使用UFW(Uncomplicated Firewall)进行监控

  • 查看防火墙状态

    sudo ufw status 

    或者使用更详细的版本:

    sudo ufw status verbose 

    输出结果里,Status: active意味着防火墙正在运行,而Status: inactive则表示防火墙未开启。

  • 查看防火墙规则

    sudo ufw show raw # 查看原始规则 sudo ufw show added # 查看已添加的规则 

    如果要查看按端口排序的规则:

    sudo ufw status numbered 
  • 查看应用程序配置文件

    sudo ufw app list 

    若要查看某个应用程序的详细配置:

    sudo ufw app info "应用名称" 
  • 查看端口开放情况

    sudo ufw status | grep "ALLOW" 

    或者使用netstat命令(需要先安装net-tools):

    sudo netstat -tulpn | grep LISTEN 
  • 查看防火墙日志

    sudo tail -f /var/log/ufw.log 

    如果防火墙日志功能未开启,可以使用以下命令启用:

    sudo ufw logging on 

使用iptables进行监控

  • 查看所有规则

    sudo iptables -L -v -n 
    • 查看特定链的规则:
      sudo iptables -L INPUT -v -n 
    • 查看特定规则的详细信息:
      sudo iptables -L -v -n --line-numbers 
  • 日志记录: 可以配置iptables规则来记录特定类型的网络流量。例如,记录所有进入和离开的TCP流量:

    iptables -A INPUT -p tcp -j LOG --log-prefix "IPTABLES_LOG: " iptables -A OUTPUT -p tcp -j LOG --log-prefix "IPTABLES_LOG: " 

    这些规则会将匹配的流量记录到系统日志中,可以使用journalctldmesg命令查看这些日志。

使用nftables进行监控

  • 查看所有规则

    sudo nft list ruleset 
    • 查看特定表的规则:
      sudo nft list table ip filter 
    • 查看特定链的规则:
      sudo nft list chain ip filter input 
  • 日志记录

    nft add table ip filter nft add chain ip filter log_traffic { type filter hook input priority 0 \; } nft add rule ip filter log_traffic tcp dport 80 -j log prefix "IPTABLES_LOG: " nft add rule ip filter log_traffic tcp sport 80 -j log prefix "IPTABLES_LOG: " 

    这些规则会将匹配的流量记录到系统日志中。

使用第三方工具进行监控

  • iftop:实时显示网络接口上的流量。

    sudo apt-get install iftop # Debian/Ubuntu sudo iftop -i eth0 
  • nload:显示网络接口的实时流量统计。

    sudo apt-get install nload # Debian/Ubuntu nload 
  • vnstat:记录并报告网络接口的流量统计。

    sudo apt-get install vnstat # Debian/Ubuntu sudo systemctl start vnstat vnstat -i eth0 

通过上述方法,您可以有效地监控Ubuntu系统中的防火墙状态和活动,确保系统的安全性。

0