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

    QNAP QuFirewall 防火墙的规则

    bbis发表于 2024-03-01 12:45:23
    love 0

    QNAP QuFirewall 防火墙配置和虚拟网络设备管理

    QNAP QuFirewall 防火墙概览

    QuFirewall 是 QNAP NAS 设备上的防火墙功能,用于管理网络流量、控制数据包的流向和访问权限。在启用 QuFirewall 防火墙时,默认不会存在开放所有端口的规则,以提高网络安全性。

    • 默认规则和安全策略
      当 QuFirewall 开启时,默认不会有如下规则:

    开启 - 接口[ALL] - 服务端口[任何] - 协议[任何] - 来源[任何] - 权限[允许]

    因为拥有这样的规则将导致防火墙不再限制任何端口的流量,仅进行一些基础的安全防护。例如,在指定时段内多次尝试登录失败时,系统将自动阻止恶意 IP 地址,提高对 SSH、FTP、HTTP/HTTPS 等服务的破解抵抗能力。

    • 防火墙策略的配置

    在大局域网中,NAS 设备相对较为安全。但在公网环境下,用户可能希望开放部分服务端口以供外部访问,同时又需要限制不必要的 IP 段的扫描。这时可以配置 QuFirewall 仅允许来自中国的流量,以有效保护免受互联网上的恶意扫描攻击。

    当用户使用 ZeroTier、Tailscale 等服务时,它们通常会创建虚拟网络设备。由于 QNAP 防火墙无法识别第三方创建的虚拟网络设备,导致流量无法通过这些设备进入 NAS,只能从 NAS 流出。这可能导致 NAS 可以 ping 通其他设备,但其他设备无法 ping 通 NAS 的 IP。
    QNAP 无法识别虚拟网络设备的情况下,可能导致 NAS 无法建立到虚拟网络的双向通信。这是因为防火墙默认不会包含虚拟设备的规则,导致进入 NAS 的流量被阻止,仅有流出的权限。

    手动添加虚拟网络设备规则

    为了解决虚拟网络设备流量无法进入 NAS 的问题,可以使用 Linux 系统命令iptables`手动配置防火墙规则。当启用QuFirewall防火墙时,系统会自动创建一个名为 `QUFIREWALL`的链,用于配置防火墙策略。通过运行命令 `iptables -L QUFIREWALL -v 可以查看当前防火墙规则。

    要手动添加虚拟网络设备,可以使用以下命令:

    iptables -I QUFIREWALL 1 -i ztfp6pggry -j ACCEPT

    也可以使用下面代码,避免多次运行导致规则列表中出现冗余的重复规则

    iptables -C QUFIREWALL -i ztfp6pggry -j ACCEPT || iptables -I QUFIREWALL 1 -i ztfp6pggry -j ACCEPT

    这将允许虚拟网络设备 ztfp6pggry 的所有流量通过QUFIREWALL防火墙。
    运行 iptables -L QUFIREWALL -v 可以查看数字部分(如 pkts bytes),表示有多少数据包和字节数通过该规则,如果这个数值不断变大,表示该设备有流量通过,证明我们说的这个设备已经被系统防火墙接纳。
    以下是运行iptables -L QUFIREWALL -v 的示例输出:

    Chain QUFIREWALL (1 references)
     pkts bytes target     prot opt in     out     source               destination
      250 85642 ACCEPT     all  --  lxcbr0 any     anywhere             anywhere
        0     0 ACCEPT     all  --  docker0 any     anywhere             anywhere
        0     0 ACCEPT     all  --  lxdbr0 any     anywhere             anywhere
        0     0 NFLOG      all  --  !lo    any     anywhere             anywhere             match-set PSIRT.ipv4 src nflog-prefix  "RULE=4 ACT=DROP"
       48 21272 ACCEPT     all  --  br0    any     192.168.1.0/24       anywhere
        9   456 ACCEPT     all  --  !lo    any     anywhere             anywhere             -m geoip --source-country CN
       18  5684 NFLOG      all  --  !lo    any     anywhere             anywhere             nflog-prefix  "RULE=15 ACT=DROP"
       18  5684 NFLOG      all  --  !lo    any     anywhere             anywhere             nflog-prefix  "RULE=15 ACT=DROP" nflog-group 1
       18  5684 DROP       all  --  !lo    any     anywhere             anywhere

    删除虚拟网络设备规则

    如果需要删除已添加的虚拟网络设备,可以使用以下命令:

    iptables -D QUFIREWALL -i ztfp6pggry -j ACCEPT

    通过以上配置,用户可以更灵活地管理防火墙策略,确保 NAS 免受来自互联网的潜在威胁。

    以上内容是在配置 ZeroTier 过程中发现的问题和解决方法,顺便写下来,作为备忘录。



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