防火墙(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 ...
随机推荐
- java中的装箱 拆箱 以及 字符串与基本数据类型的转化
java中的装箱 拆箱 装箱就是 自动将基本数据类型转换为包装器类型:拆箱就是 自动将包装器类型转换为基本数据类型 ; Integer i =5;//装箱 int j=i;//拆箱 在装箱的时候自动调 ...
- mysql安装my.cnf配置
进入my.cnf文件//乱码修改 设置编码 character_set_server = utf8mb4 //编码 collation-server = utf8mb4_general_ci //连接 ...
- [C++核心编程] 3、函数提高
文章目录 3 函数提高 3.1 函数默认参数 3.2 函数占位参数 3.3 函数重载 3.3.1 函数重载概述 3.3.2 函数重载注意事项 3 函数提高 3.1 函数默认参数 在C++中,函数的形参 ...
- css3 flex弹性布局详解
一.flexbox弹性盒子 2009年,W3C 提出了一种新的方案----Flex 布局,可以简便.完整.响应式地实现各种页面布局.目前,它已经得到了所有浏览器的支持,这意味着,现在就能很安全地使用这 ...
- 当Serverless遇到Regionless:现状与挑战
摘要:本文尝试基于分析现有的学术文章,剖析Serverless与Regionless并存时,在性能提升和成本控制两个方向的现状与挑战 本文分享自华为云社区<当Serverless遇到Region ...
- 2022-11-18:给定一个数组arr,表示连续n天的股价,数组下标表示第几天 指标X:任意两天的股价之和 - 此两天间隔的天数 比如 第3天,价格是10 第9天,价格是30 那么第3天和第9天的指
2022-11-18:给定一个数组arr,表示连续n天的股价,数组下标表示第几天 指标X:任意两天的股价之和 - 此两天间隔的天数 比如 第3天,价格是10 第9天,价格是30 那么第3天和第9天的指 ...
- 2020-09-19:TCP状态有哪些?
福哥答案2020-09-19:#福大大架构师每日一题# [答案来自此链接](https://www.zhihu.com/question/421833613) 11种状态1.CLOSED状态:初始状态 ...
- 2022-08-07:以下go语言代码输出什么?A:1 1;B:3 1;C:0 3;D:不能编译。 package main import ( “fmt“ “math“ ) func main
2022-08-07:以下go语言代码输出什么?A:1 1:B:3 1:C:0 3:D:不能编译. package main import ( "fmt" "math&q ...
- defer有什么用呢
1. 简介 本文将从一个资源回收问题引入,引出defer关键字,并对其进行基本介绍.接着,将详细介绍在资源回收.拦截和处理panic等相关场景下defer的使用. 进一步,介绍defer的执行顺序,以 ...
- Python encode()方法和decode()方法
Python encode()方法 encode() 方法为字符串类型(str)提供的方法,用于将 str 类型转换成 bytes 类型,这个过程也称为"编码".encode() ...








