前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >CentOS7 中使用 firewall-cmd 配置只允许指定ip访问本机的指定端口

CentOS7 中使用 firewall-cmd 配置只允许指定ip访问本机的指定端口

作者头像
互联网-小阿宇
发布2022-11-21 18:59:32
4.5K0
发布2022-11-21 18:59:32
举报
文章被收录于专栏:互联网-小阿宇

1、启动firewalld服务并设置开机自动启动,下面的命令必须在防火墙开启的状态下才可用 ,由于firewalld默认不是放行所有端口,所以启动firewalld会造成该机器的某些端口无法访问。 systemctl enable firewalld systemctl start firewalld

2、更改防火墙默认区域为trusted,默认放行所有连接请求 firewall-cmd --set-default-zone=trusted

3.新建一个zone,将想要访问本机80端口的ip,如:192.168.1.123 ,添加的这个zone中,同时在这个zone中放行80端口。 firewall-cmd --permanent --new-zone=newzone

firewall-cmd --permanent --zone=newzone --add-source=192.168.1.123

firewall-cmd --permanent --zone=newzone --add-port=80/tcp

4.除192.168.1.123这个ip以外的地址访问本机时会使用当前默认的trusted这个zone里的规则,即禁止访问本机的80端口。 firewall-cmd --permanent --zone=trusted --add-rich-rule=“rule family=“ipv4” port protocol=“tcp” port=“80” drop”

systemctl restart firewalld

查看配置是否生效:

firewall-cmd --list-all-zone

firewall-cmd --list-all

对于一个请求具体优先使用哪个zone,优先级如下:

我们知道每个zone就是一套规则集,但是有那么多zone,对于一个具体的请求来说应该使用哪个zone(哪套规则)来处理呢?这个问题至关重要,如果这点不弄明白其他的都是空中楼阁,即使规则设置的再好,不知道怎样用、在哪里用也不行。

对于一个接受到的请求具体使用哪个zone,firewalld是通过三种方法来判断的:

1、source,也就是源地址 优先级最高

2、interface,接收请求的网卡 优先级第二

3、firewalld.conf中配置的默认zone 优先级最低

这三个的优先级按顺序依次降低,也就是说如果按照source可以找到就不会再按interface去查找,如果前两个都找不到才会使用第三个,也就是在firewalld.conf中配置的默认zone。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020-12-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
命令行工具
腾讯云命令行工具 TCCLI 是管理腾讯云资源的统一工具。使用腾讯云命令行工具,您可以快速调用腾讯云 API 来管理您的腾讯云资源。此外,您还可以基于腾讯云的命令行工具来做自动化和脚本处理,以更多样的方式进行组合和重用。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档