![在 CentOS 上禁用 iptables 服务](https://linux22.com/image/36255/%E5%9C%A8%20CentOS%20%E4%B8%8A%E7%A6%81%E7%94%A8%20iptables%20%E6%9C%8D%E5%8A%A1.png)
我不希望该服务在重新启动后启动。我的代码是这样做的:
service iptables stop
service iptables save
chkconfig --level 123456 iptables off
service iptables status
iptables: Firewall is not running.
但重启后:
[root@cteraportal ~]# service iptables status
Table: filter
Chain INPUT (policy ACCEPT)
num target prot opt source destination
Chain FORWARD (policy ACCEPT)
num target prot opt source destination
Chain OUTPUT (policy ACCEPT)
num target prot opt source destination
为什么即使在 chckonfig 关闭后它仍然在启动时启动?
答案1
为什么即使在 chckonfig 关闭后它仍然在启动时启动?
系统V在里面(这就是service
命令的使用所暗示的)不跟踪服务本身,它只是执行“init 脚本”中的命令,并且这些命令应该执行服务特有的任何检查。您应该查看 init 脚本(可能/etc/init.d/iptables
或类似)以及它响应status
.它可能只是这样称呼:
iptables -L
注意这确实不是使用用户态守护进程进行检查,因为 WRT iptables 中没有这样的东西;核心功能实际上由内核提供,用户层工具仅用于配置或查询内核的网络过滤规则。
从这个意义上说,它不能被“关闭”,因为它并不是一开始就打开的——建立防火墙只是向内核传递一组网络数据包过滤规则的问题。但是,如果没有任何规则,则不会进行任何过滤。这就是你所service iptables status
反映的。