02-CentOS防火墙配置,但是由于端口对外都是


一、防火墙配置

前言:计算机的防火墙配置保证了别的主机无法访问本机非开放端口

1、防火墙介绍

  • Linux默认防火墙是开启的,而且所以的端口对外都是不可访问的,该策略保证了计算机的安全
  • 但同时也带来了问题如:其他计算机无法访问本机上项目开启的端口号
    • 在Linux上安装Tomcat,Tomcat软件需要使用8080端口。但是由于端口对外都是不可访问的,所以Windows没法访问Linux的Tomcat
  • 不过问题也有如下两种解决方案
    • 直接关闭防火墙,释放所有的端口,允许外界去访问全部的端口 , 方便省心,弊端不安全(开发阶段)
    • 只开放8080端口。开放指定的端口 (生产阶段,项目上线)
  • 防火墙类似于一个关卡检查人员,当你访问其他人的电脑,或者其他人访问你的电脑,都要进行拦截并进行处理,有的阻止,有的放行,有的转发。默认情况下防火墙在开机以后就自动启动了。

2、防火墙相关服务语法格式

  • 作用 命令
    systemctl start firewalld 开启
    systemctl stop firewalld 关闭
    systemctl enable firewalld 开机自启动(默认状态)
    systemctl disable firewalld 关闭开机自启
    systemctl status firewalld 查看当前防火墙状态
  • 操作演示

    • 查看防火墙当前的状态
    • 关闭防火墙,再查看防火墙的状态
    • 再次开启防火墙,查看防火墙的状态

3、firewall-cmd参数解析

  • firewall-cmd 参数说明
    --zone=public 开放某个网络,默认是public
    public:来宾或公用网络(公告场所如机场和咖啡厅中的网络)
    internal:专用网络(你知道且信任的用户和设备所在的家庭或工作网络)
    --add-port=端口/tcp 添加到防火墙中端口号,对外是打开的
    --remove-port=端口/tcp 从防火墙的规则中删除端口号
    --permanent 永久添加规则
    --list-all 显示现有的规则,展示所有开放端口
    --reload 重新加载规则,让新加的端口号起作用,重启防火墙的服务 systemctl restart firewalld

    操作示例

    • ①永久开放443端口,添加到公开区域,允许外部连接
      • firewall-cmd --add-port=端口/tcp --zone=public --permanent
    • ②重新加载防火墙的规则
      • firewall-cmd --reload:见①
    • ③显示所有打开的端口号
      • firewall-cmd --list-all:见①
    • ④从公共区域中,永久移除443端口,不允许外部连接
      • firewall-cmd --remove-port=端口/tcp --zone=public --permanent
    • ⑤重新加载防火墙规则
      • firewall-cmd --reload:见②
    • ⑥显示打开的端口号
      • firewall-cmd --list-all:见②

相关内容