iptables:unrecognized service 的解決方法
阿新 • • 發佈:2019-02-18
本人準備在Linux下配置一個ftp服務,採用vsftpd自然是首選,但是在配置過程中,執行到:
啟動vsftpd伺服器:
#service vsftpd restart
#service iptables stop
時,提示iptables:unrecognized service的錯誤。
於是準備著手解決,解決思路很是明瞭,就是首先確定Linux是否安裝了iptables 。
service iptables status
但是仍然提示:iptables:unrecognized service。準備安裝,根據不同的Linux核心選擇不同的方法如下:
yum install iptables #CentOS系統
apt-get install iptables #Debian系統
但是提示已經安裝,那為什麼狀態顯示是未識別的服務呢?繼續找原因。繼續研究發現可能是由於沒有安裝iptables-ipv6,於是採用
sudo apt-get install iptables-ipv6進行安裝,但提示Unable to locate package錯誤得錯誤。
考慮到軟體間的不相容,無奈先進行更新:sudo apt-get update,更新後重新安裝仍然無法解決定位的問題。
於是採用apt-get install iptables*進行所有可能性查詢和安裝。經過一輪安裝後iptables:unrecognized service的問題仍然沒有解決。
繼續研讀相關資料,最終發現問題所在:
在ubuntu中由於不存在 /etc/init.d/iptales檔案,所以無法使用service等命令來啟動iptables,需要用modprobe命令。 啟動iptables modprobe ip_tables 關閉iptables(關閉命令要比啟動複雜) iptables -F iptables -X iptables -Z iptables -P INPUT ACCEPT iptables -P OUTPUT ACCEPT iptables -P FORWARD ACCEPT modprobe -r ip_tables 依次執行以上命令即可關閉iptables,否則在執行modproble -r ip_tables時將會提示上述問題最總得到解決。
另外附上一些好的配置Vsftpd和iptables的部落格站點: