防火墙(iptables与firewalld)
防火墙
iptables
疏通和堵
进行路由选择前处理的数据包:prerouting
处理流入的数据包:input
处理流出的数据包:output
处理转发的数据包:forward
进行路由选择后处理的数据包:POSTROUTING
允许, 拒绝, 允许流入进行日志登记,不理睬
ACCEPT,REJECT, LOG, DROP
iptables
-P 设置默认策略
-F 清空规则链
-L 查看规则链
-I 在规则链的头部加入新规则
-A 在规则链的末尾加入新规则
==================================
-j 用来指定要'进行的处理动作
-s 匹配来源地址
-d 匹配目标地址
-i 匹配从这块网卡流入的数据
-o 匹配从这块网卡流出的数据
-p 接协议—匹配协议(TCP/UDP/ICMP)
-dport 匹配目标端口
-sport 匹配来源端口
保存iptables配置
iptbales-PINPUT DROP 白名单
iptbales -PINPUT ACCEPT 黑名单
如果是redhat8或者centos8以上版本,iptables-save
以下版本使用service iptables save
设置默认策略,对流入的数据包不理睬
firewalld
| 区域 | 默认规则策略 |
|---|---|
| trusted | 允许所有数据包 |
| home | 拒绝流入的流量,除非与流出的流量相关;如果流量与ssh、mdns、ipp-client、dhcpv6-clent服务相关,则允许流量 |
| internal | 等同于home |
| work | 拒绝流入的流量,除非与流出的流量相关;如果流量与ssh、dhcpv6-clent服务相关,则允许流量 |
| public | 拒绝流入的流量,除非与流出的流量相关;如果流量与ssh服务相关,则允许流量 |
| dmz | 拒绝流入的流量,除非与流出的流量相关;如果流量与ssh服务相关,则允许流量 |
| drop | 拒绝流入的流量,除非与流出的流量相关 |
firewall-cmd
| 参数 | 作用 |
|---|---|
| --get-default-zone | 查询默认的区域名称 |
| --set-default-zone | 设置默认区域,使其永久生效 |
| --get-zones | 显示可用的区域 |
| --get-services | 显示预先定义的服务 |
| --get-active-zones | 显示当前正在使用的区域与网卡名称 |
| --add-source= | 源自此ip或子网的流量导向到某个区域 |
| --remove-source= | 不源自此ip或子网的流量导向到某个区域 |
| --add-interface= | 源自此网卡的流量导向到某个区域 |
| --list-all | 显示当前区域的网卡配置参数、资源、端口以及服务等信息 |
| --list-all-zones | 显示当所有区域的网卡配置参数、资源、端口以及服务等信息 |
| --add-service=服务名称 | 设置默认允许该服务的流量 |
| --remove-port=端口/协议 | 设置默认区域不允许该端口的流量 |
| --reload | 让“永久生效”的配置规则立即生效,并覆盖当前的配置规则 |
| -panic-on | 开启应急模式 |
| -panic-off | 关闭应急模式 |
| --permanent | 当前不生效,重启后生效,也叫永久生效 |




目的:让http协议在public区域,流量允许通过
firewall-cmd --zone=public --query-service=http 检查public区域是否允许http协议通过,yes为允许,no不允许
firewall-cmd --get-zone-of-interface=ens160 检查ens160网卡处于哪个区域,如果不在public区域我们就修改回来
firewall-cmd --permanent --zone=public --change-interface=ens160 将ens160网卡修改区域为public
firewall-cmd --zone=public--add-service=http --permanent 将http协议在public区域内永久允许通过
firewall-cmd --reload 重新加载firewall配置规则
目的:让8080和和8081端口在public允许通过
firewall-cmd --permanent --zone=public --add-port=8080-8081/tcp

端口流量转发
把888端口转发到22
firewa11-cmd --permanent --zone=public --add-forward-port=port=888:proto=tcp:toport=22:toaddr=192.168.175.131
显示只有192.168.175.0/24 拒绝访问ssh
防火墙富规则
firewal1-cmd --permanent --Zone=public --add-rich-rule="rule family="ipv4”source address="192.168.175.0/24” service name="ssh” reject"
kali连接显示拒绝访问

练习:
redhat开启端口转发,win10访问redhat的8888端口,连接到kali的22端口

firewall-cmd --permanent --zone=public --add-forward-port=port=8888:proto=tcp:toport=22:toaddr=192.168.163.143
将访问本地8888端口转发到192.168.163.143的22端口
firewall-cmd --permanent --zone=public --add-port=8888/tcp
添加8888端口放行
firewall-cmd --permanent --add-masquerade
开启伪装IP
firewall-cmd --reload
重新加载服务


win10连接成功

防火墙(iptables与firewalld)的更多相关文章
- 第7章 Iptables与Firewalld防火墙。
第7章 Iptables与Firewalld防火墙. Chapter7_听较强节奏的音乐能够让您更长时间的投入在学习中. <Linux就该这么学> 00:00/00:00 ...
- 9.Iptables与Firewalld防火墙
第9章 Iptables与Firewalld防火墙 章节简述: 保障数据的安全性是继保障数据的可用性之后最为重要的一项工作.防火墙作为公网与内网之间的保护屏障,在保障数据的安全性方面起着至关重要的作用 ...
- centos 防火墙 iptables firewalld SELinux
参考 Centos7 只启用iptables 禁用firewalld功能 java.net.NoRouteToHostException: 没有到主机的路由 相关内容 centos7 中才开始引用fi ...
- Linux中的防火墙(Netfilter、Iptables、Firewalld)
目录 Netfilter Iptables iptables做本地端口转发 Firewalld Netfilter Netfilter是Linux 2.4内核引入的全新的包过滤引擎,位于Linux内核 ...
- 【Redhat系列linux防火墙工具】firewalld与iptables防火墙工具的激烈碰撞
前言 iptables与firewalld防火墙管理工具在linux发行版Redhat7系列使用较为广泛. UFW则是在linux发行版Ubuntu下进行管理防火墙的一款管理工具. 在选用防火墙工具的 ...
- netfilter/iptables和firewalld的关系
1.netfilter 是linux 内核模块,其中包含了大量的内核规则,而要想对这些内核规则进行操作,就需要用户态的工具. iptables和firewalld就是一个用户态的工具. 2.iptab ...
- iptables和firewalld的配置
一.iptables 1.配置 vi /etc/sysconfig/iptables -A RH-Firewall-1-INPUT -m state --state NEW -p tcp -m tcp ...
- 关于Linux防火墙'iptables'的面试问答
1. 你听说过Linux下面的iptables和Firewalld么?知不知道它们是什么,是用来干什么的? 答案 : iptables和Firewalld我都知道,并且我已经使用iptables好一段 ...
- centos7之iptables与firewalld
保障数据的安全性是继保障数据的可用性之后最为重要的一项工作.防火墙作为公网 与内网之间的保护屏障,在保障数据的安全性方面起着至关重要的作用. firewalld与iptables iptables f ...
- 防火墙iptables介绍
防火墙: netfilter/iptables是集成在Linux2.4.X版本内核中的包过滤防火墙系统.该架构可以实现数据包过滤,网络地址转换以及数据包管理功能.linux中防火墙分为两部分:netf ...
随机推荐
- Vue上传XLS文件
data() { return { tableData:[] } }, //原生JS+XLSX包实现 xls文件上传 methods: { //上传excel表格文件 uploadHandler(da ...
- Java中的自动装箱与自动拆箱
前言 在Java中,基本数据类型与其对应的封装类之间可以进行自动转换,这种特性称为自动装箱(autoboxing)和自动拆箱(unboxing).自动装箱和自动拆箱使得我们在使用基本数据类型时更加方便 ...
- 【Lua】VSCode 搭建 Lua 开发环境
前言 最近在找工作,基本所有的岗位都会问到 Lua(甚至拼 UI 的都要求会 Lua),咱能怎么办呢,咱也只能学啊-- 工欲善其事,必先利其器.第一步,先来把环境配置好吧! 当前适用版本: LuaBi ...
- Jmeter-测试报告模板分享
1.jmeter-results-detail-report_21 <?xml version="1.0"?> <!-- ~ Licensed to the Ap ...
- Centos7.x 安装 newman + postman
一.基础环境 输入 npm -v (查看 npm 版本) 输入 node -v(查看 node 版本) 二.安装newman 1.执行 npm install –g newman 进行安装 2.验证安 ...
- VS2022使用ClickOnce发布程序本地安装.net框架
因为遇到下面的错误,没有在网上搜到详细解决问题的教程,费了一些时间才解决了问题,特此记录一下,也希望能帮助到其他人. 要在"系统必备"对话框中启用"从与我的应用程序相同的 ...
- Xposed框架关于无法在模拟器中下载和激活的问题
开头 最近xposed不知道出了什么问题,导致安装的时候一直在失败,所以记录下网上参考到的并用于实践中 安装软件 1.模拟器 逍遥游模拟器 安卓7.1 版本.下载地址为: https://www.52 ...
- Spring源码:Bean生命周期(五)
前言 在上一篇文章中,我们深入探讨了 Spring 框架中 Bean 的实例化过程,该过程包括从 Bean 定义中加载当前类.寻找所有实现了 InstantiationAwareBeanPostPro ...
- 【GiraKoo】面向对象开发系列之【为什么要用面向对象】
开源项目:https://girakoo.com/ 问答 为什么要有面向对象开发? 面向过程开发的C语言,往往有以下几个问题: 不同的开发人员需要使用功能完全相同,或者大部分相同的函数.如果某个算法存 ...
- springboot~国际化Locale正确的姿势
Java中的Locale.getDefault()获取的是操作系统的默认区域设置,如果需要获取客户端浏览器的区域设置,可以从HTTP头中获取"Accept-Language"的值来 ...








