- 浏览: 108267 次
-
最新评论
Iptables常见实例及理解
(1) 屏蔽某台电脑
场景:路由器或者防火墙屏蔽某个 IP 。
理解:任何以本机为目的地址的数据包都经过 filter 表的 INPUT 链 (-t filter 省略了 )
iptables -A INPUT -s 200.200.200.1 -j DROP |
(2) 屏蔽某台电脑的 telnet 请求
场景:路由器或者防火墙屏蔽某个 IP 的 telnet 数据包,但允许其他数据包通过
理解: -p 指协议,一共有三种, TCP,UDP 和 ICMP , telnet 是基于 TCP 的 ;
--destination-port telnet 服务的端口是 23 (客户端端口是任意的) , 在屏蔽某个服务,需要使用目标端口,目标端口可以使用字符,而不是数字。
iptables -A INPUT -s 200.200.200.1 -p tcp --destination-port telnet -j DROP |
( 3 )区分屏蔽某台电脑的 telnet 请求
场景:允许局域网的 telnet 请求,但不允许 internet 网的请求
理解: -I the input interface –o the output interface
iptables -A INPUT -p tcp --destination-port telnet -i ppp0 -j DROP |
( 4 )不接受任何外部数据,但允许自己发起连接
场景:打算关闭所有端口,不接受任何数据,但自己发起的连接要能正常工作
理解: --syn 主动发起连接的一方会首先发送 —syn 包,因此对外部来的 —syn 包全部 DROP ,而不是说关闭所有端口
iptables -A INPUT -i ppp0 -p tcp --syn -j DROP |
( 5 )不接受任何外部连接(除了 80 端口的 http 连接),但允许自己发起连接
场景:打算关闭所有端口(除了 80 端口),不接受任何数据,但自己发起的连接要能正常工作
理解: --syn 主动发起连接的一方会首先发送 —syn 包,因此对外部来的 —syn 包全部 DROP ,而不是说关闭所有端口
iptables -A INPUT -i ppp0 -p tcp --syn --destination-port ! 80 -j DROP |
( 6 )改变数据包的目标地址
场景: HTTP 服务器在内网,外网来的 HTTP 请求,路由器需要将目标 IP 改为 HTT 服务器的内网地址
理解: –j DNAT 进行目标地址转换的动作
Iptables –t nat –A PREROUTING –d 59.12.33.124 –j DNAT –to-destination 192.168.0.191 |
(7) 改变数据包的源地址
场景:内网访问外网的 HTTP 服务器,路由器需要改变这些数据包的源地址
理解: -j SNAT 进行源地址转换的动作
Iptables –t nat –A POSTROUTING –s 192.168.12.0/24 –j SNAT –to-source 59.12.33.124 |
(8) 绑定 mac 和 IP
场景:路由器限定只有哪些 mac 的 pc 能够上网
理解:默认 -t FILTER
-P FORWARD DROP 改变 FORWARD 链的默认规则, FORWARD 链中的所有规则全部 DROP
-m mac –mac-source 匹配 mac
Iptables –P FORWARD DROP Iptables –A FORWARD –s 192.168.1.122 –m mac –mac-source 11:22:33:44:a1:b3 –j ACCEPT |
( 9 )限定网速
场景:路由器限定网速
理解: –m limit –limit 15/s 速度匹配
Iptables –A FORWARD –s 192.168.0.122 –m limit –limit 15/s –j ACCEPT |
(10)使用初始化
场景:任何使用iptables
理解:FORWARD功能默认是关闭的,需要显示开启;
-F清空链,如果指定表,则清空指定表中的链;如果什么都没有指定,则清空所有默认表的链;
-X删除非内建链(用户自定义链)
echo 1 > /proc/sys/net/ipv4/ip_forward iptables -F iptables -F INPUT iptables -t filter -F iptables -X iptables -X Allowed iptables -t filter -X |
(11)禁用多个服务
场景:路由器禁用多个服务,只开启forward功能
理解:路由器上的这些服务不能用,是目标端口;只开启转发功能。
<!-- [if gte mso 9]><xml> <w:WordDocument> <w:View>Normal</w:View> <w:Zoom>0</w:Zoom> <w:PunctuationKerning/> <w:DrawingGridVerticalSpacing>7.8 磅</w:DrawingGridVerticalSpacing> <w:DisplayHorizontalDrawingGridEvery>0</w:DisplayHorizontalDrawingGridEvery> <w:DisplayVerticalDrawingGridEvery>2</w:DisplayVerticalDrawingGridEvery> <w:ValidateAgainstSchemas/> <w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid> <w:IgnoreMixedContent>false</w:IgnoreMixedContent> <w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText> <w:Compatibility> <w:SpaceForUL/> <w:BalanceSingleByteDoubleByteWidth/> <w:DoNotLeaveBackslashAlone/> <w:ULTrailSpace/> <w:DoNotExpandShiftReturn/> <w:AdjustLineHeightInTable/> <w:BreakWrappedTables/> <w:SnapToGridInCell/> <w:WrapTextWithPunct/> <w:UseAsianBreakRules/> <w:DontGrowAutofit/> <w:UseFELayout/> </w:Compatibility> <w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel> </w:WordDocument> </xml><![endif]--><!-- [if gte mso 9]><xml> <w:LatentStyles DefLockedState="false" LatentStyleCount="156"> </w:LatentStyles> </xml><![endif]--><!-- [if gte mso 10]> <mce:style><!-- /* Style Definitions */ table.MsoNormalTable {mso-style-name:普通表格; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-parent:""; mso-padding-alt:0cm 5.4pt 0cm 5.4pt; mso-para-margin:0cm; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:10.0pt; font-family:"Times New Roman"; mso-fareast-font-family:"Times New Roman"; mso-ansi-language:#0400; mso-fareast-language:#0400; mso-bidi-language:#0400;} table.MsoTableGrid {mso-style-name:网格型; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; border:solid windowtext 1.0pt; mso-border-alt:solid windowtext .5pt; mso-padding-alt:0cm 5.4pt 0cm 5.4pt; mso-border-insideh:.5pt solid windowtext; mso-border-insidev:.5pt solid windowtext; mso-para-margin:0cm; mso-para-margin-bottom:.0001pt; text-align:justify; text-justify:inter-ideograph; mso-pagination:none; font-size:10.0pt; font-family:"Times New Roman"; mso-ansi-language:#0400; mso-fareast-language:#0400; mso-bidi-language:#0400;} --> <!-- [endif]-->
iptables -A INPUT -p tcp --dport 80 -j DROP //HTTP |
(12) 创建新链
场景:用户自定义链
理解:目标-j可以为自定义链,且可以jump到多个自定义链中
<!-- [if gte mso 9]><xml> <w:WordDocument> <w:View>Normal</w:View> <w:Zoom>0</w:Zoom> <w:PunctuationKerning/> <w:DrawingGridVerticalSpacing>7.8 磅</w:DrawingGridVerticalSpacing> <w:DisplayHorizontalDrawingGridEvery>0</w:DisplayHorizontalDrawingGridEvery> <w:DisplayVerticalDrawingGridEvery>2</w:DisplayVerticalDrawingGridEvery> <w:ValidateAgainstSchemas/> <w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid> <w:IgnoreMixedContent>false</w:IgnoreMixedContent> <w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText> <w:Compatibility> <w:SpaceForUL/> <w:BalanceSingleByteDoubleByteWidth/> <w:DoNotLeaveBackslashAlone/> <w:ULTrailSpace/> <w:DoNotExpandShiftReturn/> <w:AdjustLineHeightInTable/> <w:BreakWrappedTables/> <w:SnapToGridInCell/> <w:WrapTextWithPunct/> <w:UseAsianBreakRules/> <w:DontGrowAutofit/> <w:UseFELayout/> </w:Compatibility> <w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel> </w:WordDocument> </xml><![endif]--><!-- [if gte mso 9]><xml> <w:LatentStyles DefLockedState="false" LatentStyleCount="156"> </w:LatentStyles> </xml><![endif]--><!-- [if gte mso 10]> <mce:style><!-- /* Style Definitions */ table.MsoNormalTable {mso-style-name:普通表格; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-parent:""; mso-padding-alt:0cm 5.4pt 0cm 5.4pt; mso-para-margin:0cm; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:10.0pt; font-family:"Times New Roman"; mso-fareast-font-family:"Times New Roman"; mso-ansi-language:#0400; mso-fareast-language:#0400; mso-bidi-language:#0400;} table.MsoTableGrid {mso-style-name:网格型; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; border:solid windowtext 1.0pt; mso-border-alt:solid windowtext .5pt; mso-padding-alt:0cm 5.4pt 0cm 5.4pt; mso-border-insideh:.5pt solid windowtext; mso-border-insidev:.5pt solid windowtext; mso-para-margin:0cm; mso-para-margin-bottom:.0001pt; text-align:justify; text-justify:inter-ideograph; mso-pagination:none; font-size:10.0pt; font-family:"Times New Roman"; mso-ansi-language:#0400; mso-fareast-language:#0400; mso-bidi-language:#0400;} --> <!-- [endif]-->
iptables -t filter -N firewall_input_in iptables -t filter -A INPUT -j firewall_input_in |
(13)DSCP: Different Service Code Point
场景:路由器设置不同数据包的优先级
理解:SSH, TELNET需要及时响应,而SMTP则可以不用那么及时
<!-- [if gte mso 9]><xml> <w:WordDocument> <w:View>Normal</w:View> <w:Zoom>0</w:Zoom> <w:PunctuationKerning/> <w:DrawingGridVerticalSpacing>7.8 磅</w:DrawingGridVerticalSpacing> <w:DisplayHorizontalDrawingGridEvery>0</w:DisplayHorizontalDrawingGridEvery> <w:DisplayVerticalDrawingGridEvery>2</w:DisplayVerticalDrawingGridEvery> <w:ValidateAgainstSchemas/> <w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid> <w:IgnoreMixedContent>false</w:IgnoreMixedContent> <w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText> <w:Compatibility> <w:SpaceForUL/> <w:BalanceSingleByteDoubleByteWidth/> <w:DoNotLeaveBackslashAlone/> <w:ULTrailSpace/> <w:DoNotExpandShiftReturn/> <w:AdjustLineHeightInTable/> <w:BreakWrappedTables/> <w:SnapToGridInCell/> <w:WrapTextWithPunct/> <w:UseAsianBreakRules/> <w:DontGrowAutofit/> <w:UseFELayout/> </w:Compatibility> <w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel> </w:WordDocument> </xml><![endif]--><!-- [if gte mso 9]><xml> <w:LatentStyles DefLockedState="false" LatentStyleCount="156"> </w:LatentStyles> </xml><![endif]--><!-- [if gte mso 10]> <style> /* Style Definitions */ table.MsoNormalTable {mso-style-name:普通表格; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-parent:""; mso-padding-alt:0cm 5.4pt 0cm 5.4pt; mso-para-margin:0cm; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:10.0pt; font-family:"Times New Roman"; mso-fareast-font-family:"Times New Roman"; mso-ansi-language:#0400; mso-fareast-language:#0400; mso-bidi-language:#0400;} table.MsoTableGrid {mso-style-name:网格型; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; border:solid windowtext 1.0pt; mso-border-alt:solid windowtext .5pt; mso-padding-alt:0cm 5.4pt 0cm 5.4pt; mso-border-insideh:.5pt solid windowtext; mso-border-insidev:.5pt solid windowtext; mso-para-margin:0cm; mso-para-margin-bottom:.0001pt; text-align:justify; text-justify:inter-ideograph; mso-pagination:none; font-size:10.0pt; font-family:"Times New Roman"; mso-ansi-language:#0400; mso-fareast-language:#0400; mso-bidi-language:#0400;} </style> <![endif]-->
iptables -t mangle -A FORWARD -p tcp --dport 80 -j DSCP --set-dscp 1 |
数据包状态
数据包中的 mark
完整的 firewall 脚本例子
相关推荐
#### 一、iptables简介及用途 - **iptables** 是一个用于管理 Linux 内核中 IP 包过滤规则的工具。 - 主要功能包括设置网络规则,控制数据包的流向,以及进行基本的网络安全管理。 #### 二、iptables的工作原理 -...
- **概述**:简要介绍iptables的状态跟踪机制,对于理解iptables的工作原理非常重要。 - **conntrack记录**:深入探讨了conntrack机制,这是iptables跟踪连接状态的核心技术。 - **数据包状态**:解释了数据包在不同...
这个实例集旨在帮助用户深入理解Linux系统操作、管理及故障排查等方面的知识。通过实际操作这些例子,学习者能够提升在Linux环境中的技能。 在描述中提到的"Real210光盘中关于Linux测试例子",暗示了这是一个包含了...
以下是基于"操作系统及Linux的面试常见问题"这个主题,涵盖的一些重要知识点。 1. **操作系统基本概念**: - **进程与线程**:理解进程(程序的执行实例)和线程(进程内的执行流)的区别,包括上下文切换、同步与...
在IT行业中,尤其是在服务器管理与Web服务部署领域,配置多个Tomcat实例在同一台服务器上是一项常见的任务。这有助于实现资源隔离、服务分离以及负载均衡,从而提高系统的灵活性和可用性。本文将深入探讨如何在一台...
《Bind双重域名配置详解》 ...然而,这种配置需要对DNS服务器的管理和iptables规则有深入的理解,以确保配置的正确性和稳定性。在实际操作中,应仔细测试并监控DNS服务器的运行,确保内外网的解析都能正常进行。
标题中的"net-fileter.tar.gz_net_fileter"表明这是一个与网络过滤相关的压缩文件,后缀为".tar.gz",这是Linux/Unix系统中常见的压缩格式...此外,也可以通过实验来测试不同的iptables规则,理解其对网络流量的影响。
1. Linux简介:讲解Linux的历史、发行版选择、内核版本及主要特点。 2. Linux目录结构:遵循FHS标准,介绍根目录下各个子目录的用途和重要性。 3. 文件系统:讲解EXT系列文件系统,包括创建、挂载、卸载等操作。 4. ...
Linux的安全性是其一大特点,包括用户权限管理、访问控制列表(ACLs)、 SELinux(安全增强Linux)、防火墙(iptables或firewalld)。理解并实施这些安全策略可以保护系统免受攻击。 十、虚拟化与容器技术 Linux...
12. **安全与防火墙**:理解Linux的安全模型,如SELinux,以及iptables防火墙的配置。 这个“Linux操作系统课件”可能包含详细的讲解、实例演示、练习题和项目案例,旨在通过理论与实践结合的方式帮助学习者掌握...
4. **Linux防火墙**:Linux防火墙通常指的是iptables或firewalld服务,它们用于控制网络流量,实现安全策略。理解如何设置规则、开放端口以及保护系统免受恶意访问是Linux管理员的基本技能。 5. **Linux shell**:...
9. **安全与防火墙**:理解HP-UX的安全特性,如SELinux,配置iptables防火墙以保护系统免受攻击。 10. **故障排查与日志分析**:学习如何阅读和分析系统日志,诊断并解决常见问题。 在《HP9000系统管理员手册》中...
2. **Linux文件系统**: 了解EXT3, EXT4, XFS等常见的Linux文件系统类型,理解挂载点,学习如何查看和修改文件权限(chmod, chown, chgrp)。 3. **用户和权限管理**: 掌握用户组的概念,了解root用户和普通用户的...
- **安装实例**:通过具体实例展示了完整的安装过程,帮助读者更好地理解安装过程中的各项设置。 #### 2. Linux 系统的开机与关机 - **启动 Linux 系统**:介绍了启动 Linux 系统的方法,包括通过 BIOS 或 UEFI ...
11. 安全管理:理解Linux的安全模型,包括权限、防火墙、SELinux等,学习如何设置用户权限,配置iptables防火墙规则。 12. 故障排除:学习日志分析,掌握如何利用/var/log中的日志文件定位和解决问题,了解系统调试...
2. **进程管理**:在Linux中,进程是程序的实例,具有独立的内存空间。进程创建、调度、同步和通信是操作系统的重要组成部分。理解fork、exec和wait等系统调用有助于深入学习这一主题。 3. **内存管理**:Linux采用...
这本《Linux基础及应用教程》电子教案应该涵盖了以上各个主题,并可能包含实例演示、练习题和答案,帮助读者深入理解并掌握Linux操作系统的核心技能。无论是初学者还是希望提升Linux技能的IT从业者,都能从中受益。
1. **进程管理**:LINUX采用多任务模型,进程是执行中的程序实例。调度算法如轮转、优先级调度等决定了进程如何共享CPU时间。信号量、互斥锁等同步机制保证了并发执行的安全性。 2. **内存管理**:LINUX内存管理...
以下是对标题、描述及标签中涉及的知识点的详细解释: 1. **Linux基础知识**:Linux是一种自由和开放源码的操作系统,基于Unix。它允许用户根据需要定制自己的环境,适用于服务器、桌面系统以及各种嵌入式设备。 2...
- **防火墙规则**:了解iptables或ufw等防火墙设置,理解进出流量控制。 - **日志分析**:能够分析系统和应用日志,识别异常行为。 - **安全策略**:理解SSH密钥认证、密码策略、访问控制列表(ACL)等。 5. **...