zoukankan      html  css  js  c++  java
  • Centos7防火墙快速开放端口配置方法

    这篇文章主要为大家详细介绍了Centos7防火墙开放端口的快速方法,感兴趣的小伙伴们可以参考一下!

    Firewalld服务是红帽RHEL7系统中默认的防火墙管理工具,特点是拥有运行时配置永久配置选项且能够支持动态更新以及"zone"的区域功能概念,

    使用图形化工具firewall-config或文本管理工具firewall-cmd

    1、区域概念与作用:

     防火墙的网络区域定义了网络连接的可信等级,我们可以根据不同场景来调用不同的firewalld区域,区域规则有:

     特别需要注意的是firewalld服务有两份规则策略配置记录,必需要能够区分:

        RunTime:当前正在生效的。

        Permanent:永久生效的。

    当下面实验修改的是永久生效的策略记录时,必须执行"--reload"参数后才能立即生效,否则要重启后再生效。

    2、查看当前的区域:

    [root@CentOS7 ~]# firewall-cmd --get-default-zone
    public

    3、查询网卡的区域:

    [root@Centos7 ~]# firewall-cmd --get-zone-of-interface=eno16777736
    public

    4、在public中分别查询ssh与http服务是否被允许:

    [root@Centos7 ~]# firewall-cmd --zone=public --query-service=ssh
    yes
    [root@Centos7 ~]# firewall-cmd --zone=public --query-service=http
    no

    5、实例A-允许https服务流量通过public区域,要求立即生效且永久有效:

      方法一:设置当前生效的规则:

    [root@Centos7 ~]# firewall-cmd --zone=public --add-service=https
    success
    [root@Centos7 ~]# firewall-cmd --reload
    success

      方法二:设置永久生效的规则:

    [root@Centos7 ~]# firewall-cmd --permanent --zone=public --add-service=https
    success
    [root@Centos7 ~]# firewall-cmd --reload
    success

    6、实例B-不再允许http服务流量通过public区域,要求立即生效且永久生效:

    [root@Centos7 ~]# firewall-cmd --permanent --zone=public --remove-service=http
    success
    
    [root@Centos7 ~]# firewall-cmd --reload 
    success

    7、实例C-允许8080与8081端口流量通过public区域,立即生效且永久生效:

    [root@Centos7 ~]# firewall-cmd --permanent --zone=public --add-port=8080-8081/tcp
    success
    [root@Centos7 ~]# firewall-cmd --reload 
    success

    8、实例D-查看模拟实验中的规则:

    [root@Centos7 ~]# firewall-cmd --zone=public --list-services
    dhcpv6-client http https ssh
    [root@Centos7 ~]# firewall-cmd --zone=public --list-ports
    8080-8081/tcp

    9、实例E:将访问主机888端口的请求转发至22端口:

    [root@Centos7 ~]# firewall-cmd --permanent --zone=public --add-forward-port=port=888:proto=tcp:toport=22:toaddr=192.168.0.100
    success
    [root@Centos7 ~]# firewall-cmd --reload 
    success

    10、例如安装Nagios后,要开放5666端口与服务器连接,命令如下:

    #临时生效
    [root@centos7 ~]# firewall-cmd --add-port=5666/tcp
    success
    #这里也可以是一个端口范围,如1000-2000/tcp
    [root@centos7 ~]# firewall-cmd --add-port=1000-2000/tcp
    success
    #永久生效写入配置文件
    [root@centos7 ~]# firewall-cmd --permanent --add-port=5666/tcp
    success
    #重新加载防火墙配置 
    [root@centos7 ~]# firewall-cmd --reload
    success

    11、例如需要对指定的ip开放http服务,指定的ip开放3306端口,命令如下:

    firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="172.17.0.1/16" port port="3306" protocol="tcp" accept'
    
    firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="192.168.0.4/24" service name="http" accept"'

    12、CentOS7快速开放端口:

    CentOS升级到7之后,发现无法使用iptables控制Linuxs的端口,baidu之后发现Centos 7使用firewalld代替了原来的iptables。下面记录如何使用firewalld开放Linux端口:

    开启端口:

    [root@centos7 ~]# firewall-cmd --permanent --zone=public --add-port=80/tcp

    取消端口开放:

    [root@centos7 ~]# firewall-cmd --permanent --zone=public --remove-port=80/tcp

    查询端口号80 是否开启:

    [root@centos7 ~]# firewall-cmd --query-port=80/tcp

    查询有哪些端口是开启的:

    [root@centos7 ~]# firewall-cmd --list-port

    命令含义:

    --zone #作用域
    --add-port=80/tcp #添加端口,格式为:端口/通讯协议
    --permanent #永久生效,没有此参数重启后失效

    重启防火墙

    [root@centos7 ~]# firewall-cmd --reload

    13、CentOS6防火墙开放端口:

    在我们使用CentOS系统的时候,CentOS防火墙有时是需要改变设置的。CentOS防火墙默认是打开的,设置CentOS防火墙开放端口方法如下:

    打开iptables的配置文件:vi /etc/sysconfig/iptables

    修改CentOS防火墙时注意:一定要给自己留好后路,留VNC一个管理端口和SSh的管理端口

    下面是一个iptables的示例:

    # Firewall configuration written by system-config-securitylevel
    # Manual customization of this file is not recommended.
    *filter
    :INPUT ACCEPT [0:0]
    :FORWARD ACCEPT [0:0]
    :OUTPUT ACCEPT [0:0]
    :RH-Firewall-1-INPUT - [0:0]
    -A INPUT -j RH-Firewall-1-INPUT
    -A FORWARD -j RH-Firewall-1-INPUT
    -A RH-Firewall-1-INPUT -i lo -j ACCEPT
    -A RH-Firewall-1-INPUT -p icmp –icmp-type any -j ACCEPT
    -A RH-Firewall-1-INPUT -p 50 -j ACCEPT
    -A RH-Firewall-1-INPUT -p 51 -j ACCEPT
    -A RH-Firewall-1-INPUT -m state –state ESTABLISHED,RELATED -j ACCEPT
    -A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 53 -j ACCEPT
    -A RH-Firewall-1-INPUT -m state –state NEW -m udp -p udp –dport 53 -j ACCEPT
    -A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 22 -j ACCEPT
    -A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 25 -j ACCEPT
    -A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 80 -j ACCEPT
    -A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 443 -j ACCEPT
    -A RH-Firewall-1-INPUT -j REJECT –reject-with icmp-host-prohibited
    COMMIT

    修改CentOS防火墙需要注意的是,你必须根据自己服务器的情况来修改这个文件。

    举例来说,如果你不希望开放80端口提供web服务,那么应该相应的删除这一行:
    -A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 80 -j ACCEPT

    全部修改完之后重启iptables:service iptables restart

    你可以验证一下是否规则都已经生效:iptables -L

    这样,我们就完成了CentOS防火墙的设置修改。

  • 相关阅读:
    java架构解密——实时动态aop
    guice基本使用,配置模块的两种方式(三)
    guice基本使用,三种注入方式(二)
    guice的基本使用(一)
    Java 集合系列10之 HashMap详细介绍(源码解析)和使用示例
    java泛型(二)、泛型的内部原理:类型擦除以及类型擦除带来的问题
    java泛型(一)、泛型的基本介绍和使用
    java泛型学习(2)
    jquery,从后台查数据,给页面上添加树形。
    Java Annotation认知(包括框架图、详细介绍、示例说明)
  • 原文地址:https://www.cnblogs.com/Sungeek/p/8257681.html
Copyright © 2011-2022 走看看