作为系统强化的一部分,我尝试在 CentOS 6.6 kickstart 期间使用以下行配置我的防火墙。它确实在一种情况下起作用,否则就不起作用。
启动防火墙
firewall --enabled
--service=ssh --service=http --service=https
--port=53:udp,69:udp,25150:tcp,25151:tcp,3306:tcp
Run Code Online (Sandbox Code Playgroud)
这告诉它启用防火墙,并打开一组特定的服务。换行符是为了可读性,而不是配置的一部分。
我的包部分在下面,请注意:如果我添加 --nobase选项,iptables 处于直通模式,没有配置的痕迹。
一旦我删除 --nobase,iptables 就会正确设置,只有定义的一组开放端口。
启动包:
#%packages --nobase --excludedocs
%packages --excludedocs
@core
yum
wget
openssh-server
yum-downloadonly
screen
sysstat
lsscsi
ntpdate
rudder-agent
-nano
-selinux-policy
-selinux-policy-targeted
Run Code Online (Sandbox Code Playgroud)
我做了很多重新安装来追踪这个问题,并通过谷歌搜索发现有相当多的人结合了 --nobase 和 firewall --enabled --port设置。
另外,仅供参考:将 iptables 添加到包列表并没有什么不同。- 它是自动添加的。
如果您想知道,最终应用程序的软件供应商不允许启用 SELinux。
防火墙输出 1
这是添加 base 时的输出:
[host]# iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT all -- …
Run Code Online (Sandbox Code Playgroud)