昨天,我注意到我的 Debian 服务器(Buster,2020-10)的防火墙已关闭,并且我的所有规则都不再存在(根据$ sudo ufw status
)。好的。学过的知识。
起初我以为规则已经丢失了。 AskUbuntu 上也有类似的帖子,UFW 规则手动添加到 user.rules 后消失 ubuntu 16.04
“如果您在 /etc/ufw/before*.rules 或 after*.rules 中添加自定义规则,则重新加载后它不会消失。 [p] 当在 shell 上输入有效的 ufw 命令时,即自定义用户规则,它们进入 /etc/ufw/user*.rules 文件,并且这些文件持续存在。”
好的。我的规则确实已保存,但也使用日期时间进行烘焙,因此已卸载。
$ cd /etc/ufw
$ ls
applications.d/ after.rules.20210307_140833 before.rules.20210307_140833 user.rules
after6.rules before6.rules sysctl.conf user.rules.20210307_140833
after6.rules.20210307_140833 before6.rules.20210307_140833 ufw.conf
after.init before.init user6.rules
after.rules before.rules user6.rules.20210307_140833
如果启用了启动时重新启动,为什么要烘焙规则?当预期行为是使用当前规则时,什么机制正在烘焙旧规则并创建新的空规则配置?
# /etc/ufw/ufw.conf
#
ufw allow from 192.168.1.101 to any port 22
# Set to yes to start on boot. If setting this remotely, be sure to add a rule
# to allow your remote connection before starting ufw. Eg: 'ufw allow 22/tcp'
ENABLED=yes