iptables防火墙使用及规则配置

author author     2022-10-10     175

关键词:

说明

防火墙,其实说白了讲,就是用于实现Linux下访问控制的功能的,它分为硬件的或者软件的防火墙两种。无论是在哪个网络中,防火墙工作的地方一定是在网络的边缘。而我们的任务就是需要去定义到底防火墙如何工作,这就是防火墙的策略,规则,以达到让它对出入网络的IP、数据进行检测。

目前市面上比较常见的有3、4层的防火墙,叫网络层的防火墙,还有7层的防火墙,其实是代理层的网关。

对于TCP/IP的七层模型来讲,我们知道第三层是网络层,三层的防火墙会在这层对源地址和目标地址进行检测。但是对于七层的防火墙,不管你源端口或者目标端口,源地址或者目标地址是什么,都将对你所有的东西进行检查。所以,对于设计原理来讲,七层防火墙更加安全,但是这却带来了效率更低。所以市面上通常的防火墙方案,都是两者结合的。而又由于我们都需要从防火墙所控制的这个口来访问,所以防火墙的工作效率就成了用户能够访问数据多少的一个最重要的控制,配置的不好甚至有可能成为流量的瓶颈
本次介绍iptables防火墙

iptables防火墙说明及工作原理

iptables防火墙包含四个表和五个链,分别为

  1. 四个表分别为:

    Filter表(真正的防火墙功能)
    Nat表(负责数据包的改写)
    Mangle表(路由标记)
    raw表(禁止数据包的连接跟踪,用于提高性能)

  2. 五个链分别为:

    INPUT(进入防火墙)
    OUTPUT(离开防火墙)
    FORWARD(流经防火墙)
    PREROUTING(数据包到达防火墙之前进行路由判断)
    POSTROUTING(数据包离开防火墙时进行的路由判断)

3.表和链的包含情况说明

Filter表包含: INPUT、OUTPUT、FORWARD;
Nat表包含: OUTPUT、PREROUTING、POSTROUTING;
Mangle表包含: INPUT、OUTPUT、FORWARD、PREROUTING、POSTROUTING;
Raw表包含: OUTPUT、PREROUTING;

4.iptables防火墙的工作原理说明

1、iptables防火墙是一层层过滤的,实际是按照配置规则的顺序从上到下,从前到后进行过滤的。
2、如果匹配上规则,即明确表明是阻止还是通过,此时数据包就不在向下匹配新规则了。
3、如果所有规则中没有明确表示是阻止还是通过这个数据包,也就是没有匹配上规则,向下进行匹配,直到匹配到默认规 则到明确阻止还是通过。
4、防火墙的默认规则是对应链的所有规则执行完才会执行的。
注:防火墙规则执行顺序默认是从前到后,(从上到下)依次执行,遇到匹配的规则就不在继续向下检查,只有遇到不匹配的规则才会继续向下进行匹配

技术分享图片

iptables命令常用参数

很多参数请通过man iptables或iptables --help来查看

-n:以数字的方式显示ip,它会将ip直接显示出来,如果不加-n,则会将ip反向解析成主机名。
-L(大写)列表 例:iptbles -nL 查看iptables规则
--line-number显示规则的序号 iptables -nL --line-number (可以根据序号删除规则)
-D 删除规则 (查到规则序号后、指定链、指定序号删掉) 例: iptables -D INPUT 1 (指顶删除INPUT链的第一条规则、默认是FILTER表、如果是其他的表需要-t指定表)
-F(大写)清除所有规则,不会处理默认的规则
-X(大写)删除用户自定义的链
-Z(大写)清除链的计数器
-A (大写)添加规则到指定链的结尾
-I (大写) 添加规则到指定链的开头
-P (大写)设置默认策略的(设定默认门是关着的还是开着的)
-t 指定表(默认是filter表) 例:iptables -t filter -A INPUT -p tcp --dport 443 -j DROP #指定在filter表的input链的tcp协议443端口的请求丢弃
-p 匹配指定协议 (all(所有) 、tcp、udp、icmp(ping等)、默认all)
--dport 目的端口(对本地的端口做什么)
--sport 源端口(从那个端口连接过来的)
-j 处理的行为 {DROP(丢弃)、ACCEPT(接受)、REJECT(拒绝)、ACCEPT(接受)
-s 指定源ip地址
-d 目的地址
-i 匹配进入的网卡接口eth0或者eth1进行控制
-o 匹配出去的网卡借口

配置一个生产中只开启443端口的防火墙规则

说明:这里配置的防火墙规则只开启443端口(https),
1.首先清除防火墙的默认规则

# iptables -F
# iptables -X
# iptables -Z

2.允许自己的网段连接服务器

iptables -A INPUT -p tcp -s 10.0.0.0/24 -j ACCEPT
允许自己的回环接口进出:
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT

3.设置默认规则:

iptables -P INPUT DROP     #忽略进入的请求
iptables -P FORWARD DROP    #忽略要通过
iptables -P OUTPUT ACCEPT    #允许出去的请求

4.配置规则

iptables -A INPUT -s 124.43.62.96/27 -p all -j ACCEPT    #允许办公室的ip段连接

iptables -A INPUT -s 192.168.1.0/24 -p all -j ACCEPT    #允许其他机房的网段链接

iptables -A INPUT -p tcp --dport 443 -j ACCEPT    #允许业务端口对外提供链接

iptables -A INPUT -p icmp -m icmp --icmp-type any -j ACCEPT      #允许所有人ping

iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT      #允许关联包通过
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

至此防火墙就配完了。以上命令是在命令行执行的没有永久生效,重启主机就失效了:
永久保存的方法:

# services iptables save
就保存到/etc/sysconfig/iptables中了
以后维护iptables就可以通过编辑/etc/sysconfig/iptables来更改规则了。

CentOS 7自带的防火墙是firewalld,需要下载iptables:

# yum install -y iptables-services

(转载)iptables及使用layer7七层过滤

...则该系统有利于在Linux系统上更好地控制IP信息包过滤和防火墙配置。netfilter/iptablesIP信息包过滤系统是一种功能强大的工具,可用于添加、编辑和除去规则,这些规则是在做信息包过滤决定时,防火墙所遵循和组成的规则。这些... 查看详情

centos7配置iptables规则(代码片段)

 iptables,是Linux下自带的一款免费的基于包过滤的防火墙工具,可以对流入、流出、流经服务的数据包进行精细的控制,而在centos7中将iptables给取消掉了,我们需要自行安装,下面介绍iptables的安装及使用。    一、安装ipt... 查看详情

iptables防火墙(代码片段)

...可能不给服务器配置外网IP,可以通过代理转发或者通过防火墙映射。并发不是特别大情况有外网IP,可以开启防火墙服务。大并发的情况,不能开iptables,影响性能,利用硬件防火墙提升架构安全。iptables防火墙概念介绍Netfilter/... 查看详情

iptables的备份及脚本构成

...inux中,iptables为我们提供了批量备份与恢复规则的命令,防火墙脚本实际上是一个shell脚本程序,便于使用shell变量、程序控制逻辑,在需要重用、移植使用时会非常方便,只需修改下变量值就可使用iptables的备份及还原  ... 查看详情

防火墙配置防火墙配置记录

配置filter表防火墙#清除预设表filter中的所有规则链的规则iptables-F#清除预设表filter中使用者自定链中的规则iptables-X#保存iptables配置serviceiptablessave#重启iptables服务serviceiptablesrestart#查看iptables规则iptables-L-n#查看iptables规则文件cat/et... 查看详情

iptables原理及规则

iptables简介和原理我们先来了解以下社么是防火墙 防火墙:隔离功能,工作在网络或主机边缘,对进出网络或主机的数据包基于一定的规则检查,并在匹配某规则时由规则定义的行为进行处理的一组功能的组件,基本上的实... 查看详情

iptables简单使用

iptables网络防火墙一、简介防火墙:可以是硬件也可以是软件:规则(匹配标准,处理办法)netfilter:是一种框架,工作在内核中,通过iptables命令(用户空间)来规则交给netfilter(内核空间)。作用实现规则iptables:数据报文过滤,NAT... 查看详情

iptables基本使用

iptables是linux系统下的一款防火墙管理工具,也包含大量的参数,不过对于日常的防火墙策略来讲,只需要掌握常用的参数就可以了。首先查看是否安装了iptables,没有安装的话需要先安装iptables:serviceiptablesstatusyuminstall-yiptables&n... 查看详情

iptables的使用

iptables是Linux防火墙规则配置命令 iptables-L-n查看目前配置iptables-F       清除预设表filter中的所有规则链的规则iptables-AINPUT-ptcp--dport80-jACCEPTiptables-AOUTPUT-ptcp--sport80-jACCEPT设置完了之 查看详情

归纳常用的iptables规则

...h远程连接服务器会马上断开.(警告:这只适合在没有配置防火墙的环境中,如果已经配置过默认规则为deny的环境,此步骤将使系统的所有网络访问中断) iptables-X 是删除使用者自订iptable项目  开放 查看详情

llinux防火墙(selinux防火墙firewalldnetfilter(iptables))及iptables规则备份和恢复(代码片段)

selinux防火墙getenforce查看防火墙状态setenforce0临时关闭(0关闭1开启)#状态enforcing:强制模式,代表SELinux运作中,且已经正确的开始限制domain/type了;permissive:宽容模式:代表SELinux运作中,不过仅会有警告讯息并不会实际限制dom... 查看详情

centos7的防火墙怎么开放端口

可以用iptables防火墙试试CentOS_6.5配置iptables防火墙策略#清除预设表filter中的所有规则链的规则iptables-F#清除预设表filter中使用者自定链中的规则iptables-X#保存iptables配置serviceiptablessave#重启iptables服务serviceiptablesrestart#查看iptables规... 查看详情

iptables系列教程|iptables入门篇(代码片段)

前言在早期的Linux系统中,默认使用的是iptables配置防火墙。尽管新型的firewalld防火墙已经被投入使用多年,但是大量的企业在生产环境中依然出于各种原因而继续使用iptables。考虑到iptables在当前生产环境中还具有顽强的生命力... 查看详情

iptables防火墙规则使用

iptables是组成Linux平台下的包过滤防火墙,与大多数的Linux软件一样,这个包过滤防火墙是免费的,它可以代替昂贵的商业防火墙解决方案,完成封包过滤、封包重定向和网络地址转换(NAT)等功能。在日常Linux运维工作中,经常会... 查看详情

防火墙iptables

iptables命令可用于配置Linux的包过滤规则,常用于实现防火墙、NAT。咋一看iptables的配置很复杂,掌握规律后,其实用iptables完成指定任务并不难,下面我们通过具体实例,学习iptables的详细用法。 1.删除已有规则在新设定iptabl... 查看详情

阿里云服务开放端口配置

...程序连接服务;显示连接成功     阿里云服务器防火墙关闭了,iptables的INPUT和OUTPUT规则还是在生效;2.安全组配置规则   在云服务器管理控制台配置访问规则,开放指定端口;    查看详情

iptables防火墙配置

实验iptables防火墙配置实验的目的熟悉防火墙的基本原理。熟悉包过滤防火墙的测试。实验内容1)学习Linux防火墙的基本架构2)学习IPtable的基本原理3)学习IPtable的使用方法实验环境1)虚拟机:Linux主机2)... 查看详情

防火墙及iptables命令(代码片段)

防火墙:IT领域的防火墙:一整套安全隔离工具;1.软件防火墙:应用软件处理逻辑而运行通用硬件实现的防火墙;iptables/netfilter包过滤防火墙;2.硬件防火墙:在硬件级别能实现一部分防火墙功能,而另一部分功能依然要基于软... 查看详情