Ubuntu 16.04 如何在启动时通过配置禁用 UFW

Don*_*cow 8 server ssh ufw 16.04

我有一个 Ubuntu 16.04 AWS 实例,我不小心通过启用 UFW 而不允许 SSH 端口 22 将自己锁定在外面。我创建了一个新实例并将受影响实例的卷安装到它。

现在我可以访问受影响实例的文件系统,如何阻止 UFW 在启动时运行,以便我可以通过 SSH 再次访问该实例?或者,如何通过配置文件允许 SSH 访问端口 22?

我在网上环顾四周,我的文件结构似乎与其他人使用的不匹配。在/media/myDrive/lib/ufw我没有user.rulesuser6.rules; 这些在/etc/ufw/. 我已经编辑了user*.rules如下文件以允许访问,但是当我重新启动服务器时,我仍然无法通过 SSH 访问它。

#user.rules
-A ufw-user-input -p tcp --dport 22 -j ACCEPT
-A ufw-user-input -p udp --dport 22 -j ACCEPT
#user6.rules
-A ufw6-user-input -p tcp --dport 22 -j ACCEPT
-A ufw6-user-input -p udp --dport 22 -j ACCEPT
Run Code Online (Sandbox Code Playgroud)

引用自这个 SO 问题:Can't ssh into AWS EC2 after enable firewall

jdg*_*son 6

pa4080 的答案似乎是正确答案,但我发现 UFW 在默认 Ubuntu 14.04 安装后阻止了 ping 和 Samba 连接,即使ENABLED=no/etc/ufw/ufw.conf. 在我停止 UFW 后,service ufw stop我能够按预期连接到机器。

在启动时禁用 UFW

在 Ubuntu 14.10 及更早版本上: sudo echo manual > /etc/init/ufw.override

在 Ubuntu 15.04 及更高版本上: sudo systemctl disable ufw

在其他任何事情上或只是为了确定: sudo echo "service ufw stop" >> /etc/init.d/rc.local


pa4*_*080 5

您可以尝试通过/etc/ufw/ufw.conf以下方式在启动时禁用 UFW :

ENABLED=no
Run Code Online (Sandbox Code Playgroud)