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

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

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。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/101905.html原文链接:https://javaforall.net

(0)
上一篇 2021年5月31日 上午10:00
下一篇 2021年5月31日 上午11:00


相关推荐

  • 2的6次方怎么用计算机,2的6次方是多少(进制转换计算器)

    2的6次方怎么用计算机,2的6次方是多少(进制转换计算器)2 的 6 次方等于 64 计算过程如下 2 6 22 3 43 64 扩展资料正整数指数幂 负整数指数幂 零指数幂统称为整数指数幂 正整数指数幂的运算法则对整数指数幂仍然 一个数的几次方 就用几个这个数去相乘 如 2 的 6 次方 2 6 2 2 2 2 2 2 4 2 2 2 2 8 2 2 2 16 2 2 32 2 643 的 4 次方 3 4 3 3 3 3 9 3 3 27 3 81 如上面的式 2 的

    2026年3月19日
    1
  • java voliate_Java之voliate, synchronized, AtomicInteger使用

    java voliate_Java之voliate, synchronized, AtomicInteger使用1:voliate用在多线程,同步变量。线程为了提高效率,将成员变量(如A)某拷贝了一份(如B),线程中对A的访问其实访问的是B。只在某些动作时才进行A和B的同步。因此存在A和B不一致的情况。volatile就是用来避免这种情况的。volatile告诉jvm,它所修饰的变量不保留拷贝,直接访问主内存中的(也就是上面说的A),但是不能用其来进行多线程同步控制publicclassCounter…

    2022年4月30日
    43
  • unpivot用法 MySql_unpivot和PostgreSQL

    unpivot用法 MySql_unpivot和PostgreSQL创建一个示例表 CREATETEMPTA idint atext btext ctext INSERTINTOfo 1 ant cat chimp 2 grape mint basil 您可以使用 UNIONALL 来 取消透视 或 取消交叉表 SELECTid a AScolname a

    2026年3月19日
    1
  • Linux FTP服务搭建(完整步骤)

    Linux FTP服务搭建(完整步骤)1 安装 vsftpd 使用静默模式直接安装 yum yinstallvsft 2 新增 FTP 用户默认仅允许用户使用 FTP 不允许登录系统 如要允许登录请使用 usermod 命令 useradd d home ftpftp user 增加用户 ftp user 并指定用户的主目录为 home ftpusermod s bin bashftp user 恢复用户 ftp user 的 ssh 登录权限 3 设置用户登录密码执行命令后根据提示输入两次密码即可完成

    2026年3月17日
    2
  • Mysqldump备份报错

    Mysqldump备份报错

    2021年5月30日
    110
  • MYSQL IFNULL使用功能

    MYSQL IFNULL使用功能

    2022年1月2日
    80

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号