前言

防火墙对服务器起到一定的保护作用,所以了解一些相关的操作是很有必要的。

在CentOS 7.x中,有了一种新的防火墙策略,FireWall , 还记得在6.x中用的还是iptables。

这几天一直在自己的服务器上瞎搞,由于关于这个防火墙的命令还没有烂熟于心,每次都需要google一下,所以就自己动手整理了一下,方便今后的使用也同时加强记忆。

基本命令

在CentOS 7.x中,防火墙的基本命令是 firewall-cmd

先通过man firewall-cmd 来简单看看它的帮助文档。

具体的使用方法可以用 firewall-cmd -h来进行查询。

状态查询

要用防火墙,自然是需要知道防火墙有没有启动。

可以通过查询防火墙的当前状态来确定服务器是否开启了防火墙

firewall-cmd --state

如果终端输出running就表示防火墙已经开启了,反之就没有。

也可以使用下面的命令来查询

systemctl status firewalld

输出的信息中,会告诉你是否处于活动状态

启动防火墙

当得知防火墙没有被开启时,就需要手动将其开启。

systemctl start firewalld

执行上述命令后,是没有任何输出信息的。没有提示信息对我们来说就是个好消息,说明我们的防火墙起来了。

这个时候在通过查询防火墙状态的命令就能看到它已经跑起来了。

查看已经开放的端口

许多情况下是需要查看服务器是否开启了端口的。比如我添加了一个站点,用的端口是8080,在服务器能正常访问,但是外面却访问不了,这个时候的第一反应应该就是防火墙的8080端口还没有对外开放。

firewall-cmd --list-ports

执行上面的命令后,就可以查看所有开放的端口了。

由于Catcher还开放了除80以外的其他端口,所以对其他端口打了码。

添加新端口

这一步的操作就好比在Windows上的防火墙中新建一个入站规则。

只添加一个单独的端口(示例为81)

firewall-cmd --zone=public --add-port=81/tcp --permanent

添加一组连续的端口(示例为82到85)

firewall-cmd --zone=public --add-port=82-85/tcp --permanent

当添加成功之后,发现并没有看到刚才添加的端口。

此时我们应该要重新启动防火墙,让其生效。

重启防火墙

firewall-cmd --reload

执行这条命令后,会输出success的字样表示已经重启成功了。

此时在去查看端口的情况就可以发现81端口已经成功添加进去了。

其他查看端口开放的方法

  1. 查询指定的端口是否已经开放
firewall-cmd --zone=public --query-port=81/tcp

执行上面的命令后,如果指定的端口已经开放就会输出yes,反之就输出no

  1. 通过zones下面的xml文件来查看

在 /etc/firewall/zones 目录下面有一个名为public.xml的文件。这里存放着这个zone相关的信息,不只是端口!

cat /etc/firewall/zones/public.xml

关闭端口

firewall-cmd --zone=public --remove-port=81/tcp --permanent

同样的,关闭端口之后也是要重启才能生效。

关闭防火墙

systemctl stop firewalld.service

当然,Catcher是不建议关闭防火墙的。

总结

这几个命令还是比较简单的,希望这篇小小的总结能给你带来小小的帮助。

CentOS 7.x 防火墙开放端口相关用法记录的更多相关文章

  1. centOS和redHat防火墙开放端口

    发现在CentOS 7上开放端口用iptables没效果(或者是sodino没找到正确的命令,传说Centos7 下默认的防火墙是 Firewall,替代了之前的 iptables)… 使用firew ...

  2. centOS服务器-firewall防火墙开放端口

    前言 日常开发中,我们常常会因为服务器各种端口未开放出现各种问题,下面我们就来简单了解下服务器上的端口开放!!! 作为一个后台开发,日常接触最多的除了代码就是服务器了: 产品:谁谁, 线上有个功能报错 ...

  3. centos 7 firewall(防火墙)开放端口/删除端口/查看端口

    1.firewall的基本启动/停止/重启命令 复制#centos7启动防火墙 systemctl start firewalld.service #centos7停止防火墙/关闭防火墙 system ...

  4. 修改阿里云ESC Centos 7.4 防火墙开放端口

    例如系统:Centos 7.4操作如下 1,进入 cd /etc/firewalld/zones/ 目录 2,编辑 vim public.xml 3,按i或insert键进入编辑模式 4,在<z ...

  5. CentOS 7防火墙开放端口快速方法

    这篇文章主要为大家详细介绍了Centos7.1防火墙开放端口的快速方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下   例如安装Nagios后,要开放5666端口与服务器连接,命令如下: [ro ...

  6. [转载]CENTOS 6.0 iptables 开放端口80 3306 22端口

    原文地址:6.0 iptables 开放端口80 3306 22端口">CENTOS 6.0 iptables 开放端口80 3306 22端口作者:云淡风轻 #/sbin/iptab ...

  7. Centos7和Centos6防火墙开放端口配置方法(避坑教学)

    ▲这篇文章主要为大家详细介绍了Centos7防火墙开放端口的快速方法,感兴趣的小伙伴们可以参考一下! 一.CentOS 7快速开放端口: CentOS升级到7之后,发现无法使用iptables控制Li ...

  8. Centos7 防火墙开放端口,查看状态,查看开放端口

    CentOS7 端口的开放关闭查看都是用防火墙来控制的,具体命令如下: 查看防火墙状态:(active (running) 即是开启状态) [root@WSS bin]# systemctl fire ...

  9. CentOS中iptables防火墙 开放80端口方法

    开放端口:  代码如下 复制代码 [root@WX32 ~]# iptables -I INPUT -p tcp --dport 80 -j ACCEPT 保存配置:  代码如下 复制代码 [root ...

随机推荐

  1. 基于Spring Boot,使用JPA动态调用Sql查询数据

    在<基于Spring Boot,使用JPA操作Sql Server数据库完成CRUD>,<基于Spring Boot,使用JPA调用Sql Server数据库的存储过程并返回记录集合 ...

  2. python中常见的三种句型if,while,for

    1.if语句: 特别说明:条件后面的冒号不能少,同样必须是英文字符. 特别特别说明:if内部的语句需要有一个统一的缩进,一般用4个空格.python用这种方法替代了其他很多编程语言中的{}. num= ...

  3. SSE图像算法优化系列十六:经典USM锐化中的分支判断语句SSE实现的几种方法尝试。

    分支判断的语句一般来说是不太适合进行SSE优化的,因为他会破坏代码的并行性,但是也不是所有的都是这样的,在合适的场景中运用SSE还是能对分支预测进行一定的优化的,我们这里以某一个算法的部分代码为例进行 ...

  4. centos7下安装apache服务器httpd的yum方式安装

    转自Clement-Xu的csdn博客 http://blog.csdn.net/clementad/article/details/41620631   Apache在Linux系统中,其实叫&qu ...

  5. Centos 6.7 KVM下安装windows 7系统

    装windows 虚拟机之前你需要做以下准备工作:A.下载windows 镜像文件和 windows 的驱动iso 文件到本地,然后上传至服务器的某个目录(当然你也可以直接在服务器上下载):B.你本地 ...

  6. ansible实践-1

      不需要安装客户端,通过sshd去通信 基于模块工作,模块可以由任何语言开发 不仅支持命令行使用模块,也支持编写yaml格式的playbook 支持sudo 有提供UI(浏览器图形化)www.ans ...

  7. golang 实现简单的一致性哈希

    package main import ( "fmt" "sort" "hash/crc32" ) var serverMap map[ui ...

  8. 标签(Label、JLabel)

    构造函数 Label( ) Label(String str) Label(String str, int how) 第一种形式生成一个空白标签:第二种形式生成一个包含由参数str所设定的字符串的标签 ...

  9. django-高级视图和url配置

    高级视图和url配置 一.URLconf技巧 1.流线型化函数导入 对于配置url,我们可以使用以下几种方式: (1)引入view中的函数 from firstSite.view import cur ...

  10. 了解一下Http常见状态码、Http协议的工作特点和原理、Http请求Post与Get的区别

    HTTP协议常见状态码状态码的作用负责标记客户端请求服务器的返回结果,标记服务器端的处理是否正常,通知出现的错误等等职责,借助客户端可以知道客户端是否正常请求服务端.五大类:1XX(信息类状态码,接收 ...