一、查看防火墙状态
1、首先查看防火墙是否开启,如未开启,需要先开启防火墙并作开机自启

systemctl status firewalld

开启防火墙并设置开机自启

systemctl start firewalld
systemctl enable firewalld
一般需要重启一下机器,不然后面做的设置可能不会生效

二、开放或限制端口
1、开放端口
(1)如我们需要开启XShell连接时需要使用的22端口

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

其中--permanent的作用是使设置永久生效,不加的话机器重启之后失效

(2)重新载入一下防火墙设置,使设置生效

firewall-cmd --reload

(3)可通过如下命令查看是否生效

firewall-cmd --zone=public --query-port=22/tcp

(4)如下命令可查看当前系统打开的所有端口

firewall-cmd --zone=public --list-ports

2、限制端口
(1)比如我们现在需要关掉刚刚打开的22端口

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

(2)重新载入一下防火墙设置,使设置生效

firewall-cmd --reload

(3)再去查看系统所有开放的端口,已经看到没有22端口了

firewall-cmd --zone=public --list-ports

3、批量开放或限制端口
(1)批量开放端口,如从100到500这之间的端口我们全部要打开

firewall-cmd --zone=public --add-port=100-500/tcp --permanent

(2)重新载入一下防火墙设置,使设置生效

firewall-cmd --reload

(3)查看系统所有开放的端口,可以看到从100到500的端口已被全部开放

firewall-cmd --zone=public --list-ports

(4)同理,批量限制端口为

firewall-cmd --zone=public --remove-port=100-500/tcp --permanent
firewall-cmd --reload
三、开放或限制IP
1、限制IP地址访问
(1)比如限制IP为192.168.0.200的地址禁止访问80端口即禁止访问机器

firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.0.200" port protocol="tcp" port="80" reject"

(2)重新载入一下防火墙设置,使设置生效

firewall-cmd --reload
(3)查看已经设置的规则

firewall-cmd --zone=public --list-rich-rules

2、解除IP地址限制
(1)解除刚才被限制的192.168.0.200

firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.0.200" port protocol="tcp" port="80" accept"

(2)重新载入一下防火墙设置,使设置生效

firewall-cmd --reload
(3)再查看规则设置发现已经没有192.168.0.200的限制了

firewall-cmd --zone=public --list-rich-rules

如设置未生效,可尝试直接编辑规则文件,删掉原来的设置规则,重新载入一下防火墙即可

vi /etc/firewalld/zones/public.xml

3、限制IP地址段
(1)如我们需要限制10.0.0.0-10.0.0.255这一整个段的IP,禁止他们访问

firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="10.0.0.0/24" port protocol="tcp" port="80" reject"
其中10.0.0.0/24表示为从10.0.0.0这个IP开始,24代表子网掩码为255.255.255.0,共包含256个地址,即从0-255共256个IP,即正好限制了这一整段的IP地址,具体的设置规则可参考下表

(2)重新载入一下防火墙设置,使设置生效

firewall-cmd --reload
(3)查看规则,确认是否生效

firewall-cmd --zone=public --list-rich-rules
(4)同理,打开限制为

firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="10.0.0.0/24" port protocol="tcp" port="80" accept"
firewall-cmd --reload
---------------------
作者:咖啡那么浓
来源:CSDN
原文:https://blog.csdn.net/ywd1992/article/details/80401630
版权声明:本文为博主原创文章,转载请附上博文链接!

linux firewall的更多相关文章

  1. The Beginner’s Guide to iptables, the Linux Firewall

    Iptables is an extremely flexible firewall utility built for Linux operating systems. Whether you’re ...

  2. Linux Firewall 开启与关闭 以及sudo 设置

    Linux 系统下,普通用户经常需要使用root 用户的权限,所以要经常切换到root用户,比较麻烦,因此可以给普通用户添加root 权限,需要在常规命令前面加上sudo 切换到root vi  /e ...

  3. linux firewall指令

    CentOS7中firewall防火墙详解和配置,.xml服务配置详解修改防火墙配置文件之前,需要对之前防火墙做好备份 重启防火墙后,需要确认防火墙状态和防火墙规则是否加载,若重启失败或规则加载失败, ...

  4. linux firewall (marker)

    查看防火墙是否开启systemctl status firewalld 若没有开启则是开启状态systemctl start firewalld  关闭则start改为stop 查看所有开启的端口fi ...

  5. 发福利了!!超过100本的linux免费书籍

    New Books Kindle Fire App Development Essentials iPhone iOS 6 Development Essentials CentOS 6 Essent ...

  6. Apache Tomcat 9 Installation on Linux (RHEL and clones)

    Apache Tomcat 9 is not available from the standard RHEL distributions, so this article provides info ...

  7. Linux 中的网络数据包捕获

    Linux 中的网络数据包捕获 Ashish Chaurasia, 工程师 简介: 本教程介绍了捕获和操纵数据包的不同机制.安全应用程序,如 VPN.防火墙和嗅探器,以及网络应用程序,如路由程序,都依 ...

  8. Linux系统管理员必备参考资料下载汇总

    Linux系统管理员必备: Linux系统管理工具包系列汇总 Linux系统管理员必看 VanDyke SecureCRT 6.1.3 附特别文件 鸟哥的Linux私房菜 基础学习篇 (第二版) 高清 ...

  9. Linux 驱动开发

    linux驱动开发总结(一) 基础性总结 1, linux驱动一般分为3大类: * 字符设备 * 块设备 * 网络设备 2, 开发环境构建: * 交叉工具链构建 * NFS和tftp服务器安装 3, ...

随机推荐

  1. myeclipse web project 名字可以包含中文吗?

    1.理论上是可以有中文名的,但是由于中文因为编码的原因导致不可预料的后果,所以一般不建议使用中文名称 2.   Myeclipse中修改Web项目名字的方法 方法一:新建项目法(有效的备份原来的项目) ...

  2. php in_array()函数 语法

    php in_array()函数 语法 作用:搜索数组中是否存在指定的值.大理石机械构件价格 语法:in_array(search,array,type) 参数: 参数 描述 search 必需.规定 ...

  3. 人脸对比微信小程序

    https://cloud.tencent.com/document/product/867/17584 测试数据: 图片1: 图片2:

  4. 后端技术杂谈7:OpenStack的基石KVM

    Qemu,KVM,Virsh傻傻的分不清 本文转载自Itweet的博客 本系列文章将整理到我在GitHub上的<Java面试指南>仓库,更多精彩内容请到我的仓库里查看 https://gi ...

  5. PageObject设计模式 在selenium 自动化测试里面的应用

    PageObject设计模式1. Web自动化测试框架(WebTestFramework)是基于Selenium框架且采用PageObject设计模式进行二次开发形成的框架. 2. web测试时,建议 ...

  6. mybatis 绑定 statement 失败

    错误信息:org.apache.ibatis.binding.BindingException: Invalid bound statement (not found) 问题原因:编译时没有将mapp ...

  7. Dos.Common - 目录、介绍

    引言: Dos.Common是一个开发中的常用类库,如HttpHelper.LogHelper.CacheHelper.CookieHelper.MapperHelper等等.与Dos.WeChat. ...

  8. cts-verifier测试流程

    测试目的: cts的补充测试,可以理解为没法自动化的cts测试,这个是人工测试. 测试前提: 1.发货user版本 2.selinux:Enable 5.外网环境 设备需求: 2个待测设备:1个手机或 ...

  9. 【PP系列】SAP 取消报工后修改日期

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[PP系列]SAP 取消报工后修改日期   前言 ...

  10. vue手写轮播

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...