Ubuntu 20.04 Server UFW 无法自动激活

Ubuntu 20.04 Server UFW 无法自动激活

最近,我注意到 UFW 处于非活动状态,直到我手动激活它。

我已运行ufw enable多次,检查其ufw.service是否处于活动状态,但它仍然无法在启动时启动。

输出systemctl list-unit-files | grep -i ufw

ufw.service                                enabled         enabled

输出systemctl status ufw

     Loaded: loaded (/lib/systemd/system/ufw.service; enabled; vendor preset: enabled)
     Active: active (exited) since Sat 2022-09-24 12:15:01 +03; 1min 26s ago
       Docs: man:ufw(8)
    Process: 388 ExecStart=/lib/ufw/ufw-init start quiet (code=exited, status=0/SUCCESS)
   Main PID: 388 (code=exited, status=0/SUCCESS)

Sep 24 12:15:01 alienus-server systemd[1]: Finished Uncomplicated firewall.
Warning: journal has been rotated since unit was started, output may be incomplete.

我尝试重新启用ufw.service但没有效果:

Removed /etc/systemd/system/multi-user.target.wants/ufw.service.
Created symlink /etc/systemd/system/multi-user.target.wants/ufw.service → /lib/systemd/system/ufw.service.

启动后所有内容的输出:航站楼镜头

附加信息:在清除并重新安装 UFW 后,复制旧配置并手动重新配置,它仍然无法按预期工作。尽管它在启动时处于活动状态,但几个小时后它又被停用了。因此,为了保持它的活动状态,我添加了一个 cronjob 以每 30 分钟重新激活它一次。

我还能在哪里检查它无法自动启动的原因?是什么Warning: journal has been rotated since unit was started, output may be incomplete.

答案1

即使您不启用它,UFW 守护程序也会自动启动。您应该运行ufw enable以启用它。下面的屏幕截图显示了差异。

(因为是完全重写,所以我认为重新发布比编辑更好。)

在此处输入图片描述

答案2

作为缓解措施,直到我可以收集有关此问题的更多信息,我创建了一个 systemd 服务来手动启用 ufw。

ufw2.服务:

[Unit]
Description=Uncomplicated firewall 2
Documentation=man:ufw(8)
After=ufw.service

[Service]
ExecStart=/etc/ufw/ufw.sh

[Install]
WantedBy=multi-user.target

ufw.sh

#!/bin/bash

sleep 10
ufw enable

(10 秒钟的睡眠是为了确保主 ufw 服务已经启动并稳定)

补充:我注意到,当服务器开放几个小时后,ufw 就被停用了。因此,作为第二个缓解措施,我添加了一个 cron 作业,每 30 分钟运行一次。

*/30 * * * * systemctl restart ufw2

相关内容