RHCE

RHCE.net
红帽RHCE认证网——精选每一篇高品质的技术干货
  1. 首页
  2. 开源快讯
  3. 正文

Linux包过滤防火墙的配置方法及安装方法汇总!!

2023年6月3日 270点热度

iptables防火墙

一、Linux包过滤防火墙1、Linux防火墙概述2、netfilter3、iptables4、netfilter/iptables关系二、四表五链1、表链作用2、四表raw表确定是否对该数据包进行状态跟踪。包含两个规则链:OUTPUT、PREROUTING。

mangle表

更改数据包内容,拿来做流量整形的,给数据包设置标记。包含五个规则链:INPUT、OUTPUT、FORWARD、PREROUTING、POSTROUTING。

nat表

负责网路地址转换,拿来更改数据包中的源、目标IP地址或端口。包含三个规则链:OUTPUT、PREROUTING、POSTROUTING。

filter表

负责过滤数据包,确定是否放行该数据包(过滤)。包含三个规则链:INPUT、FORWARD、OUTPUT。

3、五链INPUT链处理入站数据包,匹配目标IP为本机的数据包。

OUTPUT链

处理出站数据包,通常不在此链上做配置。

FORWARD链

处理转发数据包linux端口映射,匹配流经本机的数据包。

PREROUTING链

在进行路由选择前处理数据包,拿来更改目的IP,拿来做DNAT。相当于把外网服务器的IP和端口映射到路由器的内网IP和端口上。

POSTROUTING链

在进行路由选择后处理数据包,拿来更改源IPlinux主机,拿来做SNAT。相当于外网通过路由器NAT转换功能实现外网主机通过一个网段IP地址上网。

4、数据包抵达防火墙时,规则表之间的优先次序

raw>mangle>nat>filter

5、规则链之间的匹配次序

主机型防火墙

出站数据(从防火墙本机向外部地址发送的数据包)

网路型防火墙

规则链内的匹配次序

三、iptables的安装

#关闭防火墙
systemctl stop firewalld.service
systemctl disable firewalld.service   #设置firewalld不再开机自启动,enable开启
#安装并开启iptables服务
yum -y install iptables iptables-services
systemctl start iptables.service

四、iptables防火墙的配置方式

(1)、使用iptables命令行
(2)、使用system-config-firewall

1、iptables命令行配置方式

命令格式
iptables [-t 表名] 管理选项 [链名] [匹配条件] [-j 控制类型]

2、注意事项3、常用的控制类型控制类型作用

ACCEPT

容许数据包通过。

DROP

直接扔掉数据包,不给出任何回应信息。

REJECT

拒绝数据包通过,会给数据发送端一个响应信息。

SNAT

更改数据包的源地址。

DNAT

更改数据包的目的地址。

MASQUERADE

伪装成一个非固定网段IP地址。

LOG

在/var/log/messages文件中记录日志信息redhat清空防火墙规则,之后将数据包传递给下一条规则。LOG只是一种辅助动作,并没有真正处理数据包。

4、常用的管理选项选项说明

-A

在指定链的末尾追加(–append)一条新的规则

-I(小写的i)

在指定链的开头插入(–insert)一条新的规则,未指定序号时默认作为第一条规则

-R

更改、替换(–replace)指定链中的某一条规则,可指定规则序号或具体内容

-P

设置指定链的默认策略(–policy)

-D

删掉(–delete)指定链中的某一条规则,可指定规则序号或具体内容

-F

清空(–flush)指定链中的所有规则,若未指定链名,则清空表中的所有链

-L

redhat 7 关闭防火墙_redhat 防火墙_redhat清空防火墙规则

列举(–list)指定链中所有的规则,若未指定链名,则列举表中的所有链

-n

使用数字方式(–numeric)显示输出结果,如显示IP地址而不是主机名

-v

显示详尽信息,包括每条规则的匹配包数目和匹配字节数

–line-numbers

查看规则时,显示规则的序号。

5、添加新的规则

iptables -t filter -A INPUT -P icmp -j REJECT
iptables -I INPUT 5 -p tcp --dport 22 -j ACCEPT

6、查看规则列表

iptables [-t 表名] -n -L [链名] [--line-numbers]
或
iptables -[vn]L    #注意:不可以合写为-Ln
iptables -n -L --line-numbers

7、设置默认策略

iptables [-t表名] -P <链名> <控制类型>
#一般在生产环境中设置网络型防火墙、主机型防火墙时都要设置默认规则为DROP, 并设置白名单
iptables -P INPUT DROP
iptables -P FORWARD DROP

8、删除规则

iptables -D INPUT 1
iptables -t filter -D INPUT -P icmp -j REJECT
注意:
1.若规则列表中有多条相同的规则时,按内容匹配只删除的序号最小的a条
2.按号码匹配删除时,确保规则号码小于等于已有规则数,否则报错
3.按内容匹配删数时,确保规则存在,否则报错

9、清空规则

iptables [-t 表名] -F [链名]
iptables -F FORWARD
iptables -F
注意:
1.-E仅仅是清空链中的规则,并不影响-P设置的默认规则,默认规则需要手动进行修改
2.-P设置了DROP后, 使用 -F 一定要小心!
#防止把允许远程连接的相关规则清除后导致无法远程连接主机,此情况如果没有保存规则可重启主机解决
3.如果不写表名和链名,默认清空filter表中所有链里的所有规则

五、规则的匹配1、通用匹配合同匹配-p合同名

地址匹配

-s源地址、-d目的地址#可以是IP、网段、域名、空(任何地址)

插口匹配

-i入站网卡、-o出站网卡

例:
iptables -A FORWARD ! -p icmp -j ACCEPT                  #想要设置转发的数据包除了icmp协议都被丢弃
iptables -A INPUT -s 192.168.80.11 -j DROP               #想要设置入站数据包是从192.168.145.30地址来的数据包都被丢弃
iptables -I INPUT -i ens33 -s 192.168.80.0/24 -j DROP    #想要在之前规则之前插入新的入站数据包规则,规定是192.168.145.0/24网段的ip地址都会呗丢弃

2、隐含匹配–sport1000匹配源端口是1000的数据包

–sport1000:3000

匹配源端口是1000-3000的数据包

–sport:3000

匹配源端口是3000及以下的数据包

–sport1000:

匹配源端口是1000及以上的数据包

注意:--sport和–dport必须配合-p使用

iptables -A INPUT -p tcp --dport 20:21 -j ACCEPT
iptables -I FORWARD -d 192.168.80.0/24 -p tcp --dport 24500:24600 -j DROP

(1)TCP标记匹配:--tcp-flagsTCP标记

三次握手的数据包发送设置如下:
iptables -I INPUT -i ens33 -p tcp --tcp-flags SYN,ACK,FIN,RST,URG,PSH SYN -j ACCEPT
iptables -I OUTPUT -p tcp --dport 22 --tcp-flags SYN,ACK,FIN,RST,URG,PSH SYN,ACK -j ACCEPT
iptables -I INPUT -p tcp --dport 22 --tcp-flags SYN,ACK,FIN,RST,URG,PSH ACK -j ACCEPT

(2)ICMP类型匹配:--icmp-typeICMP类型

#可以是字符串、数字代码、、目标不可达
“Echo-Request”(代码为 8)表示 请求
“Echo-Reply”(代码为 0)表示 回显
“Destination-Unreachable”(代码为 3)表示 目标不可达
关于其它可用的 ICMP 协议类型,可以执行“iptables -p icmp -h”命令,查看帮助信息
iptables -A INPUT -p icmp --icmp-type 8 -j DROP		#禁止其它主机ping 本机
iptables -A INPUT -p icmp --icmp-type 0 -j ACCEPT	#允许本机ping 其它主机
iptables -A INPUT -p icmp --icmp-type 3 -j ACCEPT	#当本机ping 不通其它主机时提示目标不可达
#此时其它主机需要配置关于icmp协议的控制类型为 REJECT
iptables -A INPUT -p icmp -j REJECT	

(3)显示匹配

多端口匹配:

-m multiport     --sports 源端口列表
-m multiport     --dports 目的端口列表
例:
iptables -A INPUT -p tcp -m multiport --dport 80,22,21,20,53 -j ACCEPT
iptables -A INPUT -p udp -m multiport --dport 53 -j ACCEPT

MAC地址匹配

MAC地址匹配: -m mac --mac-source MAC地址
iptables -A FORWARD -m mac --mac-source xx:xx:xx:xx:xx:xx -j DROP
#禁止来自某MAC地址的数据包通过本机转发

IP范围匹配

IP范围匹配:-m iprange --src-range IP范围
iptables -A FORWARD -p udp -m iprange --src-range 192.168.80.100-192.168.80.200 -j DROP			
#禁止转发源地址位于192.168.80.100-192.168.80.200的udp数据包

状态匹配

状态匹配:-m state --state 连接状态

常见的联接状态:

NEW与任何联接无关的,还没开始联接

ESTABLISHED

响应恳求或则已完善联接的,联接态

RELATED

与已有联接有相关性的(如FTP主被动模式的数据联接)redhat清空防火墙规则,衍生态,通常与ESTABLISHED配合使用

INVALID

不能被辨识属于那个联接或没有任何状态

iptables -A FORWARD -m state --state NEW -p tcp ! --syn -j DROP
#禁止转发与正常TCP连接无关的非--syn请求数据包( 如伪造的网络攻击数据包)
iptables -I INPUT -P tcp -m multiport --dport 80,22,21,20,53 -j ACCEPT
iptables -A INPUT -P udp -m multiport --dport 53 -j ACCEPT
iptables -A INPUT -p tcp -m state --state ESTABLISHED, RELATED -j ACCEPT
#对进来的包的状态进行检测。已经建立tcp连接的包以及该连接相关的包允许通过。
#比如我和你做生意,我们谈成了生意,到了支付的时候,就可以直接调用与这笔生意相关的支付功能
iptables -P INPUT DROP

六、总结

本作品采用 知识共享署名 4.0 国际许可协议 进行许可
标签: linux服务器 linux系统 包过滤防火墙 方法汇总 防火墙
最后更新:2023年6月3日

红帽RHCE认证网

每日更新,欢迎收藏♥ 不积跬步无以至千里,加油,共勉。

点赞
< 上一篇
下一篇 >

红帽RHCE认证网

每日更新,欢迎收藏♥
不积跬步无以至千里,加油,共勉。

最新 热点 随机
最新 热点 随机
血红帽电影:黑暗下的温情与希望,暴力之中的故事 系统架构师负责设计系统整体架构的主要任务是什么 Linux下软件包的内容分类Linux应用程序的安装方法 Redhat系统上安装Oracle10g的方法 (Linux基础知识)RPM格式软件包的安装和安装 redhat 配置bond Red Hat实现网络高可用性和负载均衡的简单方法 红帽Linux的软件安装方法一览 开源项目的未来出路在哪里?——OpenStack计划 redhat linux 7.1下载 RedhatLinux7.1评测:对比 帽子搭配该如何搭配更加时尚,而不是弄巧成拙 红帽公司下半年将RHEL(RedHatLinux)产品升级到版本8 rhce认证t恤的意义是什么? 红帽开发者订阅 红帽认证考试有哪些考试级别?认证系统管理员 配置本地yum源,轻松提速redhat系统 张曙光:“红帽子企业”是个历史遗留问题 红帽系统轻松安装gcc rpm包 什么是红帽子?红帽Linux操作系统认可度高认证 红帽Linux系统软件安装攻略 青州实信花卉苗木有限公司红帽月季质量的有力保证
RedHatAnaconda安装器介绍安装过程有四个主要步骤血红帽电影:黑暗下的温情与希望,暴力之中的故事高效稳定,畅享RedHat企业版下载(智传网优)虚拟机安装的方式和方式简单高效!红帽安装文件命令解析红帽企业Linux与红帽智能管理搭配使用方法介绍蝙蝠侠大战红帽火魔:英雄对决!不同雅思培训课程的表,你值得拥有!!红帽双系统U盘安装指南雅思英语课一般多少钱?雅思培训班报名费取决于你redhat linux RedHatLinux使用经验与技巧:简明指南红帽Linux系统的root密码:设置与修改指南上海注册会计师可以选择的培训机构,学费是多少RedHat Linux70下载:全新Linux之旅红帽哥表情包 北京市致诚律师事务所主任佟丽华:网络平台净化是当务之急血红帽预告片:智能科技大突破!红帽企业Linux8测试版为操作系统如何实现IT创新设定标准双Linux系统红帽:九个重要安装体验点redhat系统 RedHat系统使用技巧,你掌握了吗?红帽认证考试怎么报名?考试费用多少?认证
动画电影《》什么时候上映的/免费播放的? (技巧)64位电脑安装32位系统的方法! IBM官方宣布收购开源软件公司红帽(RedHat)! 红帽64位操作系统下载,奇妙之处! 为啥要用容器?应用容器是个啥样子呢? 成都RHCE认证考试亲身感受 多种硬盘格式化供选择RedHatEnterpriseLinux(RHEL) 《圣斗士星矢》:金牛座阿鲁迪巴被神斗士“一招击倒” Linux系统内核与Linux发行套件系统的不同介绍 php进阶到架构之后端开发必备学习系列课程:了解gitlab与github的区别 《暮光之城:暮色》豆瓣评分5.7,《孤儿》 红帽企业Linux8测试版为操作系统如何实现IT创新设定标准 《小红帽》里的狼外婆竟然有点暗黑恐怖 rhcsa ex200 备战RHCSA,备考心得+计划! RedHat网络配置:8个要点解析 轻松掌握!查看红帽版本信息的基础命令及高级技巧 2013红帽挑战赛终极大比拼:开源技术比思科多 蒜苔在菜市场里有两种区别,蒜苔的味道却不一样 如何使用ubuntu命令进行软件安装卸载命令格式: 揭秘bash漏洞:RedHatLinux(RHEL)的安全隐患
标签聚合
软件 操作 redhat 红帽认证 认证 linux系统 开源 红帽 linux服务器 应用
书籍
课程
技术群
技术干货大合集↓
  • 2023年10月 / 18篇
  • 2023年9月 / 120篇
  • 2023年8月 / 122篇
  • 2023年7月 / 120篇
  • 2023年6月 / 118篇
  • 2023年5月 / 124篇
  • 2023年4月 / 118篇
  • 2023年3月 / 99篇
友情链接:

Linux书籍 | Linux命令 | Linux系统 | RHCE红帽认证 | Linux软件 | Linux教程 | CentOS系统 | Linux内核 | Linux服务器 | Linux大神 | IT资源 | Linux系统

COPYRIGHT © 2023 RHCE.net ALL RIGHTS RESERVED.

京ICP备16058923号-2