linux – 使用Firewall-cmd在centos 7中创建特定于地址的限制

如何使用firewall-cmd工具(new firewalld)创建防火墙规则,以便限制特定网络仅访问一个服务并允许一个区域中的所有服务.

例如:

我只有一个接口eno1,它与公共区域相关联.在该区域上启用了Http和https服务.我想在该区域启用ssh访问但是我想限制对网络的ssh访问(例如100.0.0.0/8)

做这个的最好方式是什么?

解决方法

搜索了答案,但我发现很多与我自己有关的问题没有答案.

经过深入研究,我找到了一个解决方法.这就是我做的

添加了公共区域的界面

然后

sudo firewall-cmd --permanent --zone=public --add-service=http 
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="x.x.x.x/x" service name="ssh" log prefix="ssh" level="info" accept' 
sudo firewall-cmd --reload

注意:源地址可以是范围.只需指定网络掩码即可

由于未为公共区域添加ssh,因此认情况下将阻止ssh.富规则将仅为该源ip启用它.

任何更好的解决方案请添加

相关文章

在Linux上编写运行C语言程序,经常会遇到程序崩溃、卡死等异...
git使用小结很多人可能和我一样,起初对git是一无所知的。我...
1. 操作系统环境、安装包准备 宿主机:Max OSX 10.10.5 虚拟...
因为业务系统需求,需要对web服务作nginx代理,在不断的尝试...
Linux模块机制浅析 Linux允许用户通过插入模块,实现干预内核...
一、Hadoop HA的Web页面访问 Hadoop开启HA后,会同时存在两个...