Ubuntu 16.04 如何透過配置在啟動時停用 UFW

Ubuntu 16.04 如何透過配置在啟動時停用 UFW

我有一個 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

參考這個SO問題:啟用防火牆後無法 ssh 進入 AWS EC2

答案1

您可以嘗試透過/etc/ufw/ufw.conf以下方式變更啟動時停用 UFW:

ENABLED=no

答案2

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

相關內容