前言

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

在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. ASP.NET Core 发布 centos7 配置守护进程

    ASP.NET Core应用程序发布linux在shell中运行是正常的.可一但shell关闭网站也就关闭了,所以要配置守护进程, 用的是Supervisor,本文主要记录配置的过程和过程遇到的问题 ...

  2. WPF项目学习.二

    WPF用MVVM的解决记录 版权声明:本文为博主初学经验,未经博主允许不得转载. 一.前言 记录在学习与制作WPF过程中遇到的解决方案.  焦点的控制,键盘事件触发,输入框的数字限制,异步处理,隐藏状 ...

  3. shell编程之SHELL基础(1)

    shell脚本基础 shell是一个命令行解释器,她为互用提供了一个想linux内核发送请求以便运行程序的界面系统级程序,用户可以用shell来启动.挂起.停止甚至编写一些程序. shell还是一个功 ...

  4. canvas常用api

    1. 在canvas标签中给出长宽(不带单位):<canvas width="600" height="600"></canvas> 或 ...

  5. vmware安装centos7

    VMware下安装CentOS7.2 http://www.mamicode.com/info-detail-1455647.html centos7.2配置网络 http://blog.csdn.n ...

  6. Pycharm 出现Unresolved reference '' 错误的解决方法

    在用Pycharm做Pygame游戏小实战的时候碰到一个很无语的问题 如下 什么鬼?????? 我明明有写settings模块啊 而且还是放在同一个目录下  然后Pycharm给我来了一个错误 而且在 ...

  7. Linux一些常用操作

    1.linux swap分区 可采用文件的方式 dd if=/dev/zero of=/var/swap bs=1024 count=2048000 mkswap /var/swap swapon / ...

  8. jsz中的作用域与上下文

    var x=10; function fun() { console.log(x);//10 } function demo(f) { if(f instanceof Function){ fun() ...

  9. ubuntu17 安装中文输入法

    在此说的是intelligent pinyin.我首先尝试的是搜狗输入法,虽然最终安装成功了,但还是直接卸载了.因为它不仅需要fcitx框架,在安装成功后,标题栏上面还会出现两个输入法图标.真正不能让 ...

  10. 用VSCode开发一个基于asp.net core 2.0/sql server linux(docker)/ng5/bs4的项目(1)

    最近使用vscode比较多. 学习了一下如何在mac上使用vscode开发asp.netcore项目. 这里是我写的关于vscode的一篇文章: https://www.cnblogs.com/cgz ...