firewall-cmd --permanent --get-zone-of-interface=ens33显示no zone

(操作系统为CentOS7)
在学习firewall-cmd命令的时候,执行firewall-cmd --permanent --zone=internal --change-interface=ens33后提示成功,再执行firewall-cmd --get-zone-of-interface=ens33查看当前网卡的zone区域,立刻就更新过来了(此出并没有执行reload),而执行firewall-cmd --permanent --get-zone-of-interface=ens33也就是加了个–permanent参数却显示no zone。
在这里插入图片描述
查阅相关资料,了解到在CentOS上面(rhel不知道,没测过)有network和NetworkManager这两种网络管理工具,而两者同时开启的时候可能导致冲突,NetworkManager在未连接网络的时候会清理路由,重连网络的时候要手动加上去。此时分别执行systemctl status netwoksystemctl status NetworkManager发现两者均在运行,所以上面设置permanent zone的语句在这里(permanent)并没生效。这里就把NetworkManager给disable掉,执行systemctl stop NetworkManagersystemctl disable NetworkManager。然后再修改/etc/firewalld/zones/*.xml(这里我的是public.xml),在zone区域加入,这个名字按你自己实际的来,接着便是reload了:firewall-cmd --reload
firewall-cmd --permanent --get-zone-of-interface=ens33显示no zone_第1张图片
到现在终于可以重新执行本文最上面的指令firewall-cmd --permanent --zone=internal --change-interface=ens33了,结果如下所示,成功。
firewall-cmd --permanent --get-zone-of-interface=ens33显示no zone_第2张图片

你可能感兴趣的:(linux)