Linux网络之iptables

Linux网络之iptables

  • 防火墙的基本知识
      • 防火墙的定义
      • 防火墙的分类
      • 防火墙的基本工作原理
      • 包过滤防火墙工作原理
  • netfilter/iptables简介
      • netfilter的工作逻辑
      • Iptables数据流向
      • 工作机制(三表五链)
      • iptables结构
      • 数据包过滤的匹配流程
  • iptables的参数 含义
      • 防火墙可作为路由器起转发作用
      • 编写iptables的规则的注意事项
      • 表命令
      • 常用命令
      • 通用参数
      • 匹配(match)
      • 目标(target)
  • 实践演练
      • 配置路由器
      • iptables命令行
  • 参考链接

防火墙的基本知识

防火墙的定义

防火墙,也称防护墙,是由Check Point创立者Gil Shwed于1993年发明并引入国际互联网,防火墙是一个由软件和硬件设备组合而成、在内部网和外部网之间、专用网与公共网之间的边界上构造的保护屏障,它按照系统管理员预先定义好的规则来控制数据包的进出,防火墙是系统的第一道防线,主要由服务访问规则、验证工具、包过滤和应用网关4个部分组成,其作用是防止非法用户的进入。保障内网的安全性、保证内外网之间数据的流通性。

在网络中,所谓“防火墙”,是指一种将内部网和公众访问网(如Internet)分开的方法,它实际上是一种隔离技术,防火墙是在两个网络通讯时执行的一种访问控制尺度,它能允许你“同意”的人和数据进入你的网络,同时将你“不同意”的人和数据拒之门外,最大限度地阻止网络中的黑客来访问你的网络,换句话说,如果不通过防火墙,公司内部的人就无法访问Internet,Internet上的人也无法和公司内部的人进行通信,也就是说,如果没有防火墙,内网和外网之间就没办法进行交流。

防火墙的分类

防火墙从诞生开始,已经历了四个发展阶段:基于路由器的防火墙、用户化的防火墙工具套、建立在通用操作系统上的防火墙、具有安全操作系统的防火墙。常见的防火墙属于具有安全操作系统的防火墙。

从结构上来分,防火墙有两种:代理主机结构和路由器+过滤器结构;内部网络过滤器(Filter)路由器(Router)Internet

从原理上来分,防火墙则可以分成4种类型:特殊设计的硬件防火墙、数据包过滤型、电路层网关和应用级网关。

一般宏观来说,防火墙分为主机型防火墙,例如我们为了防止个人电脑被攻击,而开启的防火墙,还分为网关型防火墙,一般部署在企业的网关,用于过滤和转发,保证整个企业的网络环境安全性。

按照物理状态又分为:软件防火墙和硬件防火墙

按照功能分:包过滤型、状态检测型和代理性

防火墙的基本工作原理

防火墙通过审查经过的每一个数据包, 判断它是否有相匹配的过滤规则, 根据规则的先后顺序进行一一比较, 直到满足其中的一条规则为止,
然后依据控制机制做出相应的动作. 如果都不满足, 则将数据包丢弃, 从而保护网络的安全.

包过滤防火墙工作原理

Linux网络之iptables

Iptables数据流向

  • 入站数据流向(即流入本机流量:PREROUTING —> INPUT )
    从外界到达防火墙的数据包,先被PREROUTING规则链处理(是否修改数据包地址等),之后会进行路由选择(判断该数据包应该发往何处),如果数据包的目标主机是防火墙本机(比如说Internet用户访问防火墙主机中的web服务器的数据包),那么内核将其传给INPUT链进行处理(决定是否允许通过等),通过以后再交给系统上层的应用程序(比如Apache服务器)进行响应。

  • 转发数据流向(转发的流量: PREROUTING –> FORWARD —> POSTROUTING )
    来自外界的数据包到达防火墙后,首先被PREROUTING规则链处理,之后会进行路由选择,如果数据包的目标地址是其它外部地址(比如局域网用户通过网关访问QQ站点的数据包),则内核将其传递给FORWARD链进行处理(是否转发或拦截),然后再交给POSTROUTING规则链(是否修改数据包的地址等)进行处理。

  • 出站数据流向(由本机流出的流量:OUTPUT —> POSTROUTING)
    防火墙本机向外部地址发送的数据包(比如在防火墙主机中测试公网DNS服务器时),首先被OUTPUT规则链处理,之后进行路由选择,然后传递给POSTROUTING规则链(是否修改数据包的地址等)进行处理。

Linux网络之iptables
Linux网络之iptables

iptables的参数 含义

-t 指定表名称
-n 不作解析
-L 列出指定表中的策略
-A 增加策略
-p 网络协议
–dport 端口
-s 数据来源
-j 动作:ACCEPT允许;REJECT拒绝;DROP丢弃
-N 增加链
-E 修改链名称
-X 删除链
-D 删除指定策略
-I 插入
-R 修改策略
-P 修改默认策略

防火墙可作为路由器起转发作用

编写iptables的规则的注意事项

表命令

常用命令

通用参数

匹配(match)

目标(target)

Linux网络之iptables

Linux网络之iptables
客户端IP为192.168.0.226
Linux网络之iptables
客户端和服务端网络能通
Linux网络之iptables

先关闭firewall

Linux网络之iptables
iptables -t filter -nL 不作解析 查看filter表格里面的链( 不跟-t,默认为filter表格
Linux网络之iptables
iptables -t filter – L 作解析查看filter表格里面的链
Linux网络之iptables
service iptables save 保存,

Linux网络之iptables
iptables -t filter -A INPUT -s 172.25.254.25 -p tcp –dport 22 -j REJECT 拒绝172.25.254.25 访问22端口
Linux网络之iptables
iptables -t filter -I INPUT 1 -s 172.25.254.73-p tcp –dport 22 -j REJECT 插入策略默认插入到第一条。
Linux网络之iptables
iptables -t filter -R INPUT 1 -s 172.25.254.25 -p tcp –dport 22 -j

来源:劲节子

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2019年7月15日
下一篇 2019年7月15日

相关推荐