Linux firewalld 防火墙使用

目录

firewall 防火墙服务简述与安装

firewalld 服务基本使用

firewalld-cmd 防护墙命令使用

public.xml 文件修改防火墙端口

注意事项


firewall 防火墙服务简述与安装

1、Centos7 默认的防火墙是 firewall,替代了以前的 iptables

2、firewall 使用更加方便、功能也更加强大一些

3、firewalld 服务引入了一个信任级别的概念来管理与之相关联的连接与接口。它支持 ipv4 与 ipv6,并支持网桥,采用 firewall-cmd (command) 或 firewall-config (gui) 来动态的管理 kernel netfilter 的临时或永久的接口规则,并实时生效而无需重启服务。

4、查看 firewall  版本:firewall-cmd --version


   
   
  1. [root@localhost ~]# firewall-cmd --version
  2. 0.4. 4.4
  3. [root@localhost ~]#

firewall 防火墙安装

1)像使用 iptables 一样,firewall 同样需要安装

2)需要注意的是某些系统已经自带了 firewal l的,如果查看版本没有找到,则可以进行 yun 安装

3)安装指令: yum install firewalld

firewalld 服务基本使用

1、firewall 与 iptables 一样都是服务,所以可以使用 systemctl 服务管理工具来操作

目的命令
查看防火墙状态systemctl status firewalld
关闭防火墙,停止 firewall 服务systemctl stop firewalld
开启防火墙,启动 firewall 服务systemctl start firewalld
重启防火墙,重启 firewall 服务systemctl restart firewalld
查看 firewall 服务是否开机启动systemctl is-enabled firewalld
开机时自动启动 firewall 服务systemctl enable firewalld.service
开机时自动禁用 firewall 服务systemctl disable firewalld.service

firewalld-cmd 防护墙命令使用

1、上面所说的 firewall 可以看成整个防火墙服务,而 firewall-cmd 可以看成是其中的一个功能,可用来管理端口

一:查看 firewall-cmd 状态,即查看 firewall 防火墙程序是否正在运行: firewall-cmd --state


   
   
  1. [root@localhost ~]# firewall-cmd --state
  2. running
  3. [root@localhost ~]#

二:查看已打开的所有端口,firewall-cmd --zone=public --list-ports


   
   
  1. [root@localhost ~]# firewall-cmd --zone= public --list-ports
  2. 6379/tcp 22122/tcp 23000/tcp 8080/tcp 8888/tcp 9502/tcp 6662/tcp 9999/tcp 7002/tcp 6661/tcp 6688/tcp 6667/tcp 6689/tcp 8000/tcp 6663/tcp 9070/tcp 9089/tcp 9988/tcp 9222/tcp 4444/tcp
  3. [root@localhost ~]#

三:开启指定端口

1、开启一个端口:firewall-cmd --zone=public --add-port=80/tcp --permanent    (--permanent 永久生效,没有此参数重启后失效)

2、重新加载 firewall,修改配置后,必须重新加载才能生效:firewall-cmd --reload 


   
   
  1. [root@localhost ~]# firewall-cmd --zone= public --list-port
  2. 9876/tcp 8090/tcp 80/tcp 8080/tcp
  3. [root@localhost ~]# firewall-cmd --zone= public --add-port= 3307/tcp --permanent
  4. success
  5. [root@localhost ~]# firewall-cmd --reload
  6. success
  7. [root@localhost ~]# firewall-cmd --zone= public --list-port
  8. 9876/tcp 8090/tcp 80/tcp 8080/tcp 3307/tcp
  9. [root@localhost ~]#

四:关闭指定端口

1、关闭 9876 端口:firewall-cmd --zone=public --remove-port=9898/tcp --permanent(--permanent 表示永久生效,没有此参数重启后失效)

2、重新加载 firewall,修改配置后,必须重新加载才能生效:firewall-cmd --reload 


   
   
  1. [root@localhost ~]# firewall-cmd --zone= public --list-ports
  2. 9876/tcp 8090/tcp 80/tcp 8080/tcp
  3. [root@localhost ~]# firewall-cmd --zone= public --remove-port= 9876/tcp --permanent
  4. success
  5. [root@localhost ~]# firewall-cmd --reload
  6. success
  7. [root@localhost ~]# firewall-cmd --zone= public --list-ports
  8. 8090/tcp 80/tcp 8080/tcp
  9. [root@localhost ~]#

public.xml 文件修改防火墙端口

1、firewall-cmd对端口的操作,如开放端口等信息,都放在在"/etc/firewall/zones/public.xml"中记录

2、所以直接修改此文件也是可以的

注意事项

1、如下所示,CentOS 7.2 Linux系统防火墙明明开启了指定的端口,tomcat服务器端口也指定正确,启动没有任何问题,最后从windows浏览器访问的时候,却只有80端口有效,其余的端口全部访问失败

2、最后原因居然是因为系统是阿里云服务器,而它的后台为了安全,封掉了其它端口的访问,所以即使防火墙修改了也没用,解决办法是登录阿里云服务器后台,修改它的安全组策略即可。这是生产上遇到的问题。

 

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.csdn.net/wangmx1993328/article/details/80738012 ———————————————— 版权声明:本文为CSDN博主「蚩尤后裔」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/wangmx1993328/article/details/80738012
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值