![UFW 默认规则...它们在哪里?](https://linux22.com/image/1394345/UFW%20%E9%BB%98%E8%AE%A4%E8%A7%84%E5%88%99...%E5%AE%83%E4%BB%AC%E5%9C%A8%E5%93%AA%E9%87%8C%EF%BC%9F.png)
UFW 教程在这里
https://help.ubuntu.com/community/UFW
它说如果启用但未配置,UFW 将使用默认规则。我检查了文件夹:
/etc/ufw/
我在那里找到的文件是
after.rules
after6.rules
before.rules
before6.rules
sysctl.conf
ufw.conf
那么“默认规则”在哪里?有 4 个不同的规则文件,我不知道如果我启用它,它会选择哪一个。
我担心如果我启用它,它只会阻止端口 22,并且我将失去与服务器的 SSH 连接,这不容易恢复。
如何安全地启动防火墙?
答案1
您可以启用 UFW,然后发出以下命令:
sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
sudo iptables -A INPUT -p tcp --dport ssh -j ACCEPT
这必将允许远程控制。如果你喜欢这个设置,你可以在文件中写入这两行/etc/rc.local,它们将在启动时应用(无需须藤, 在这种情况下)。
编辑
/etc/ufw 中有三个重要的文件:sysctl.conf、after.rules、before.rules。其余文件涉及 IPv6 规则(after6|before6.rules),少数应用程序使用的端口定义(在子目录中./应用程序.d)以及要启动的文件联邦快递,ufw配置文件。
系统配置参数完全替代了 /etc/sysctl.conf,因此它只是重复的。它包含用于作为一组安全措施的内核信息。
规则被分为前后两部分(从命令行输入的行),因为顺序很重要:当读取一系列规则时,防火墙将应用第一个相关的规则,无论是 ACCEPT、DROP 还是其他什么;然后其余的规则甚至没有读过由此可见,非常具体的规则先于一般规则。
之前的规则很简单:它们允许环回和 ICMP(=ping),丢弃无效的数据包,如果对话已经开始,则允许数据包通过(相当于我上面的规则 1),允许 DHCP 和本地流量,这对于 LAN 的运行绝对必不可少,IE尤其是网络发现、多播和广播。
之后的规则仅阻止记录产生过多材料的端口。
单个规则可以理解如下:
-A ufw-before-input -p udp --sport 67 --dport 68 -j ACCEPT
这会将(-A)添加到表中输入前接受来自端口 67(sport= 源端口)并发往端口 68(dport= 目标端口)的 UDP 协议数据包的规则。此表在 INPUT 上读取,因此每当内核处理 OUTPUT 或 FORWARD 数据包时都会忽略此表(两种类型的数据包都会发出,但 OUTPUT 数据包源自这机器,而 FORWARD 数据包源自其他地方并正在前往其最终目的地)。