zoukankan      html  css  js  c++  java
  • firewall的规则设置与命令(白名单设置)

    一. 设置firewall规则

    例1:对外暴露8080端口

    firewall-cmd --permanent --add-port=8080/tcp
    

    例2:使mysql服务的3306端口只允许192.168.1.1/24网段的服务器能访问

    1. #添加规则
    2. firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.1.1/24" port protocol="tcp" port="3306" accept"
    3.  
    4. #reload使生效
    5. firewall-cmd --reload

    例3:端口转发,将到本机的3306端口的访问转发到192.168.1.1服务器的3306端口

    1. # 开启伪装IP
    2. firewall-cmd --permanent --add-masquerade
    3. # 配置端口转发
    4. firewall-cmd --permanent --add-forward-port=port=3306:proto=tcp:toaddr=192.168.1.2:toport=13306

    注意:如果不开启伪装IP,端口转发会失败;其次,要确保源服务器上的端口(3306)和目标服务器上的端口(13306)是开启的。

    二. firewall命令

    1.启动, 停止, 重启firewalld

    1. 1. 停止
    2. systemctl stop firewalld.service
    3.  
    4. 2. 启动
    5. systemctl start firewalld.service
    6.  
    7. 3. 重启
    8. systemctl restart firewalld.service
    9.  
    10. 4. 查看状态:
    11. systemctl status firewalld
    12.  
    13. 5.禁止firewall开机启动
    14. systemctl disable firewalld
    15.  
    16. 6. 设置开机启用防火墙:
    17. systemctl enable firewalld.service

    2.查看firewall规则与状态

    1. 1. 查看默认防火墙状态(关闭后显示notrunning,开启后显示running)
    2. firewall-cmd --state
    3.  
    4. 2. 查看防火墙规则(只显示/etc/firewalld/zones/public.xml中防火墙策略)
    5. firewall-cmd --list-all
    6.  
    7. 3. 查看所有的防火墙策略(即显示/etc/firewalld/zones/下的所有策略)
    8. firewall-cmd --list-all-zones
    9.  
    10. 4. 重新加载配置文件
    11. firewall-cmd --reload
    12.  

    3.配置firewalld-cmd

    1. 查看版本: firewall-cmd --version
    2.  
    3. 查看帮助: firewall-cmd --help
    4.  
    5. 显示状态: firewall-cmd --state
    6.  
    7. 查看所有打开的端口: firewall-cmd --zone=public --list-ports
    8.  
    9. 更新防火墙规则: firewall-cmd --reload
    10.  
    11. 查看区域信息: firewall-cmd --get-active-zones
    12.  
    13. 查看指定接口所属区域: firewall-cmd --get-zone-of-interface=eth0
    14.  
    15. 拒绝所有包:firewall-cmd --panic-on
    16.  
    17. 取消拒绝状态: firewall-cmd --panic-off
    18.  
    19. 查看是否拒绝: firewall-cmd --query-panic

    4. 那怎么开启一个端口呢

    1. 1. 添加(--permanent永久生效,没有此参数重启后失效)
    2. firewall-cmd --zone=public --add-port=80/tcp --permanent
    3.  
    4. 2. 重新载入(修改规则后使其生效)
    5. firewall-cmd --reload
    6.  
    7. 3. 查看
    8. firewall-cmd --zone= public --query-port=80/tcp
    9.  
    10. 4. 删除
    11. firewall-cmd --zone= public --remove-port=80/tcp --permanent
    12.  
    13. 因为在/usr/lib/firewalld/services/中事先定义了ssh.xml的相应的规则

    5. systemctl是CentOS7的服务管理工具中主要的工具,它融合之前service和chkconfig的功能于一体。

    1. 启动一个服务:systemctl start firewalld.service
    2. 关闭一个服务:systemctl stop firewalld.service
    3. 重启一个服务:systemctl restart firewalld.service
    4. 显示一个服务的状态:systemctl status firewalld.service
    5. 在开机时启用一个服务:systemctl enable firewalld.service
    6. 在开机时禁用一个服务:systemctl disable firewalld.service
    7. 查看服务是否开机启动:systemctl is-enabled firewalld.service
    8. 查看已启动的服务列表:systemctl list-unit-files|grep enabled
    9. 查看启动失败的服务列表:systemctl --failed
       
       
      原文: https://blog.csdn.net/qq_29493353/article/details/83383844
       
  • 相关阅读:
    寻找大富翁
    C++ STL sort()函数用法
    众数
    平方因子
    Hdu 1089 A+B for Input-Output Practice (I)
    Hdu 1090 A+B for Input-Output Practice (II)
    Hdu 1083 Courses
    Hdu 1069 Monkey and Banana
    Hdu 1062 Text Reverse
    Hdu 1068 Girls and Boys
  • 原文地址:https://www.cnblogs.com/jiftle/p/13180979.html
Copyright © 2011-2022 走看看