一、查看防火墙状态
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. 转载-使用Nodepad++来编辑我们服务器的配置文件

    转自------------------ 作者:李阿昀 来源:CSDN 原文:https://blog.csdn.net/yerenyuan_pku/article/details/73128819 ...

  2. Android逆向之旅---解析编译之后的Resource.arsc文件格式

    一.前言 快过年了,先提前祝贺大家新年快乐,这篇文章也是今年最后一篇了.今天我们继续来看逆向的相关知识,前篇文章中我们介绍了如何解析Android中编译之后的AndroidManifest.xml文件 ...

  3. 学习日记4、datagrid多行删除

    1.前台展现单选框datagrid代码 $('#List').datagrid({ url: '@Url.Action("GetList")', width: $(window). ...

  4. Linux(RHEL7)下安装vsftp服务

    1.安装vsftp(没有配置yum源的先配置yum源) yum install -y vsftpd 2.启动ftp服务 systemctl start vsftpd.service 3.打开防火墙 f ...

  5. Ubuntu 18.04 截图工具-flameshot(安装及使用)

    安装flameshot:https://github.com/lupoDharkael/flameshot 安装命令: sudo apt-get install flameshot 设置>设备& ...

  6. php中数组的指针

    利用PHP内置的函数 key() 获得键. current()获得值, next(); prev();移动到上一个 reset();//重置,移动到第一个元素 end();//移动到最后一个元素上 注 ...

  7. mariadb(二)增删改

    一.表的结构的增删改 添加数据类型 alter table 表名 add 字段 数据类型: #如果字段存在则会报错 Duplicate column name '字段' #修改数据类型 alter t ...

  8. MSSQL sql常用判断语句

    .判断数据库是否存在 if exists (select * from sys.databases where name = '数据库名')    drop database [数据库名]  2 判断 ...

  9. fatal error C1047: The object or library file xxx was created with an older compiler than other objects

    之前编译Cocos2DX时遇到过一次,这次又遇到了,记下解决方法,以防再来第三次. 这个错误是说链接的库或者文件是老版本编译器生成的,与当前编译器不符,比如这次用的预编译库是2015的,而我当前使用的 ...

  10. HeightCharts柱状图和饼状图

    HTML: <div id="container1"  style="height:350px; " ></div>    <di ...