CentOS7中《防火墙》相关知识

本文介绍了如何在CentOS7系统中管理firewalld防火墙,包括检查防火墙状态、安装与卸载、启动与关闭、设置开机启动和关闭、以及通过firewall-cmd配置端口和服务。此外,还详细讲解了如何添加、移除端口,设置特定IP访问特定服务,以及检查规则是否生效的操作步骤。确保系统安全的同时,提供了灵活的网络访问控制。
摘要由CSDN通过智能技术生成

检查

  • 查看防火墙的状态
    $ systemctl status firewalld  ( 或者 firewall-cmd --state ) //running 表示运行
    

    Centos7默认安装了firewalld,如果没有这条命令,那就尝试安装一下

安装

  • 查看是否已经安装 firewalld 防火墙
    $ rpm -qa | grep firewalld
    
  • 如果你的系统上没有安装,使用命令安装firewalld 防火墙
    $ yum install -y firewalld firewalld-config
    

常用操作

  • 启动防火墙:
    $ systemctl start firewalld ( 或者 )
    
  • 关闭防火墙:
    $ systemctl stop firewalld ( 或者 )
    
  • 设置开机启用防火墙:
    $ systemctl enable firewalld.service
    
  • 设置开机禁用并停止防火墙:
    $ systemctl disable firewalld.service ( 或者 ) 
    
  • 在不改变状态的条件下重新加载防火墙(修改配置后要重启防火墙):
    $ systemctl reload firewalld ( 或者 $ firewall-cmd --reload  或者 $  service firewalld restart)
    

使用firewall-cmd配置端口:

  • 获取活动的区域

    $ firewall-cmd --get-active-zones
    

    这条命令将用以下格式输出每个区域所含接口:
    <zone1>: <interface1> <interface2> …<zone2>: <interface3> …

  • 查看开放的端口:

    $ firewall-cmd --list-all		
    # 显示:
    public (default)
      interfaces:
      sources:
      services: dhcpv6-client ftp ssh
      ports:
      masquerade: no
      forward-ports:
      icmp-blocks:
      rich rules:
    $ firewall-cmd --list-ports( 或者 $ firewall-cmd --permanent --list-port 
    

    查询服务的启动状态

    $ firewall-cmd --query-service ftp
    yes
    $ firewall-cmd --query-service ssh
    yes
    $ firewall-cmd --query-service samba
    no
    $ firewall-cmd --query-service http
    no
    

    查看开启的端口 或 服务:

    $ firewall-cmd --permanent --zone=public --list-services //服务空格隔开 例如 dhcpv6-client https ss
    $ firewall-cmd --permanent --zone=public --list-ports //端口空格隔开 例如 8080-8081/tcp 8388/tcp 80/tcp
    

    查询端口是否开放:

    $ firewall-cmd --query-port=8080/tcp
    
  • 开启端口 或 服务:

    $ firewall-cmd --permanent --add-port=80/tcp
    $ firewall-cmd --zone=public --add-port=9200/tcp //临时
    $ firewall-cmd --zone=public --add-port=80/tcp --permanent  //永久
    $ firewall-cmd --zone=public--add-port=4400-4600/udp --permanent //批量添加区间端口	
    $ firewall-cmd --zone=public --add-service=https //临时
    $ firewall-cmd --permanent --zone=public --add-service=https //永久
    
  • 移除(关闭)端口:

    $ firewall-cmd --permanent --remove-port=8080/tcp
    $ firewall-cmd --zone=public --remove-port=9200/tcp --permanent
    
  • 设置某个ip 访问某个服务

    $ firewall-cmd --permanent --zone=public --add-rich-rule="rule family="ipv4" source address="192.168.0.4/24" service name="http" accept"
    ip 192.168.0.4/24 访问 http
    
  • 删除上面设置的规则

    $ firewall-cmd --permanent --zone=public --remove-rich-rule="rule family="ipv4" source address="192.168.0.4/24" service name="http" accept"
    
  • 检查设定是否生效

    $ iptables -L -n | grep 21
    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:21 ctstate NEW
    

    命令含义:
      --zone #作用域
      --add-port=9200/tcp #添加端口,格式为:端口/通讯协议
      --permanent #永久生效,没有此参数重启后失效
      注意:添加端口后,必须用命令firewall-cmd --reload重新加载一遍才会生效

编辑 iptables配置文件

$ vi /etc/sysconfig/iptables     
$ service iptables restart
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值