zoukankan      html  css  js  c++  java
  • CentOS 7下用firewall-cmd

    一 、控制端口/服务

    可以通过两种方式控制端口的开放,一种是指定端口号另一种是指定服务名。虽然开放http服务就是开放了80端口,但是还是不能通过端口号来关闭,也就是说通过指定服务名开放的就要通过指定服务名关闭;通过指定端口号开放的就要通过指定端口号关闭。还有一个要注意的就是指定端口的时候一定要指定是什么协议,tcp还是udp。知道这个之后以后就不用每次先关防火墙了,可以让防火墙真正的生效。

    firewall-cmd --add-service=mysql # 开放mysql端口
    firewall-cmd --remove-service=http # 阻止http端口
    firewall-cmd --list-services  # 查看开放的服务
    firewall-cmd --add-port=3306/tcp # 开放通过tcp访问3306
    firewall-cmd --remove-port=80tcp # 阻止通过tcp访问3306
    firewall-cmd --add-port=233/udp  # 开放通过udp访问233
    firewall-cmd --list-ports  # 查看开放的端口

    二、伪装IP

    防火墙可以实现伪装IP的功能,下面的端口转发就会用到这个功能。

    firewall-cmd --query-masquerade # 检查是否允许伪装IP
    firewall-cmd --permanent --add-masquerade # 允许防火墙伪装IP
    firewall-cmd --permanent --remove-masquerade# 禁止防火墙伪装IP

    三、端口转发

    端口转发可以将指定地址访问指定的端口时,将流量转发至指定地址的指定端口。转发的目的如果不指定ip的话就默认为本机,如果指定了ip却没指定端口,则默认使用来源端口。

    如果配置好端口转发之后不能用,可以检查下面两个问题:

    • 比如我将80端口转发至8080端口,首先检查本地的80端口和目标的8080端口是否开放监听了
    • 其次检查是否允许伪装IP,没允许的话要开启伪装IP
    # 将80端口的流量转发至8080
    firewall-cmd --permanent --add-forward-port=port=80:proto=tcp:toport=8080
    # 将80端口的流量转发至
    firewall-cmd --permanent --add-forward-port=port=80:proto=tcp:toaddr=192.168.1.0.1192.168.0.1
    # 将80端口的流量转发至192.168.0.1的8080端口
    firewall-cmd --permanent --add-forward-port=port=80:proto=tcp:toaddr=192.168.0.1:toport=8080
    • 当我们想把某个端口隐藏起来的时候,就可以在防火墙上阻止那个端口访问,然后再开一个不规则的端口,之后配置防火墙的端口转发,将流量转发过去。
    • 端口转发还可以做流量分发,一个防火墙拖着好多台运行着不同服务的机器,然后用防火墙将不同端口的流量转发至不同机器。
    查询端口号80 是否开启:firewall-cmd --query-port=80/tcp
    
    永久开放80端口号:firewall-cmd --permanent --zone=public --add-port=80/tcp
    重新加载防火墙规则:firewall-cmd --reload 移除80端口号:firewall
    -cmd --permanent --zone=public --remove-port=80/tcp --zone #作用域 --add-port=80/tcp #添加端口,格式为:端口/通讯协议 --permanent #永久生效,没有此参数重启后失效
    --reload  #配合--permanent参数永久保存

    查看防火墙状态
    systemctl status firewalld.service
    启动|关闭|重新启动  防火墙
    systemctl [start|stop|restart] firewalld.service 

    来自:https://blog.csdn.net/slovyz/article/details/78487182

              https://blog.csdn.net/tongdengquan/article/details/79923706

  • 相关阅读:
    【百度地图API】让用户选择起点和终点的驾车导航
    JS解决通过按钮切换图片的问题
    JavaScript (JS)基础:DOM 浅析 (含数组Array、字符串String基本方法解析)
    JavaScript (JS)基础:ECMAScript 浅析 (含Math基本方法解析)
    感谢Sylvia的技术支持
    0904 存储过程、触发器、事务、视图、生成脚本
    0903 连接查询
    0901 子查询
    0831 模糊查询,排序查询,聚合函数,时间日期函数,数学函数,字符串函数
    0829 数据库的增删改查
  • 原文地址:https://www.cnblogs.com/luck666/p/10449087.html
Copyright © 2011-2022 走看看