Iptables 命令使用举例 - 技术--netfilter - 冰雪塵埃
来源:百度文库 编辑:神马文学网 时间:2024/06/03 06:52:50
1、链的基本操作
(1) 清除所有规则
1) 清除预设表filter中所有规则链中的规则
# iptables –F
2) 清除预设表filter中使用者自定链中的规则
# iptables –X
3)将指定链中所有规则的包字节计数器清零
# iptables –Z
(2)设置链的默认策略
1)先允许,再禁止
用下面的命令初始化
# iptables –P INPUT ACCEPT
# iptables –P OUTPUT ACCEPT
# iptables –P FORWARD ACCEPT
2) 先禁止,再允许
用下面的命令初始化
# iptables –P INPUT DROP
# iptables –P OUTPUT DROP
# iptables –P FORWARD DROP
(3)列出表/链中的所有规则
# iptables –L –n
(4)向链中添加规则。下面的语句用于开放网络接口
# iptables –A INPUT –i lo –j ACCEPT
# iptables –A OUTPUT –o lo –j ACCEPT
# iptables –A INPUT –i eth0 –j ACCEPT
# iptables –A OUTPUT –o eth0 –j ACCEPT
# iptables –A FORWARD –i eth0 –j ACCEPT
# iptables –A FORWARD –o eth0 –j ACCEPT
(5)使用用户自定义链
# iptables –N custom
# iptables –A custom –s 0/0 –d 0/0 –p icmp –j DROP
# iptables –A INPUT –s 0/0 –d 0/0 –j custom
2、设置基本的规则匹配(忽略目标动作)
(1) 指定协议匹配
1) 匹配指定的协议
# iptables –A INPUT –p tcp
2) 匹配指定协议之外的所有协议
# iptables –A INPUT –p ! tcp
(2) 指定地址匹配
1) 指定匹配的主机
# iptables –A INPUT –s 192.168.0.1
2) 指定匹配的网络
# iptables –A INPUT –s 192.168.0.0/24
3) 匹配指定主机之外的地址
# iptables –A INPUT –s ! 192.168.0.1
4) 匹配指定网络之外的网络
# iptables –A INPUT –s ! 192.168.0.1/24
(3) 指定网络接口匹配
1) 指定单一的网络接口匹配
# iptables –A INPUT –i eth0
# iptables –A FORWARD –o eth0
2) 指定同类型的网络接口匹配
# iptables –A FORWARD –o ppp+
(4) 指定端口匹配
1) 指定单一的端口匹配
# iptables –A INPUT –p tcp –sport wwww
# iptables –A INPUT –p tcp –sport 80
# iptables –A INPUT –p udp –sport 53
# iptables –A INPUT –p udp –dport 53
2) 匹配指定端口之外的端口
# iptables –A INPUT –p tcp –dport !22
3) 匹配指定的端口范围
# ipbables –A INPUT –p tcp –sport 22:80
4) 匹配ICMP端口和ICMP 类型
# iptables –A INPUT –p icmp-type 8
(5) 指定IP碎片
# iptables –A FORWARD –p tcp –s 192.168.0.0/24 –d 192.168.2.100 –dport 80 –f ACCEPT
# iptables –A FORWARD –f –s 192.168.0.0/24 –d 192.168.2.100 –j ACCEPT
3、设置扩展的规则匹配(忽略目标动作)
(1)多端口匹配扩展
1)匹配多个源端口
# iptables –A INPUT –p tcp –m multiport –source-port 22,53,80,110
2)匹配多个目的端口
# iptables –A INPUT –p tcp –m multiport –destination-port 22,53,80,110
3)匹配多个端口
# iptables –A INPUT –p tcp –m multiport –prot 22,53,80,110
(2)指定TCP匹配扩展
通过使用--tcp-flags 选项可以根据TCP包的标志位进行过滤,第一个参数为要检查的标志位;第二个参数是标志位为1的标志
# iptables –A INPUT –p tcp --tcp-flags SYN,FIN,ACK SYN
# iptables –p tcp --syn
表示SYN、ACK、FIN的标志都要检查,但是只有设置了SYN的才匹配
# iptables –A INPUT –p tcp --tcp-flags ALL SYN,ACK
表示ALL(SYN,ACK,FIN,RST,USG,PSH)的标志都要检查,但是只有设置了SYN和ACK的才匹配
(3)limit速率匹配扩展
1)指定单位时间内允许通过的数据包个数
# iptables –A INPUT –m limit --limit 300/hour
表示限制每小时允许通过300个数据包
2)指定触发事件的阀值(默认值是5)
# iptables –A INPUT –m limit --limit-burst 10
表示一次涌入的封包超过10个将被直接丢弃
3)同时指定速率限制和触发阀值
# iptables –A INPUT –p icmp –m limit –limit 3/m –limit-burst 3
(1) 清除所有规则
1) 清除预设表filter中所有规则链中的规则
# iptables –F
2) 清除预设表filter中使用者自定链中的规则
# iptables –X
3)将指定链中所有规则的包字节计数器清零
# iptables –Z
(2)设置链的默认策略
1)先允许,再禁止
用下面的命令初始化
# iptables –P INPUT ACCEPT
# iptables –P OUTPUT ACCEPT
# iptables –P FORWARD ACCEPT
2) 先禁止,再允许
用下面的命令初始化
# iptables –P INPUT DROP
# iptables –P OUTPUT DROP
# iptables –P FORWARD DROP
(3)列出表/链中的所有规则
# iptables –L –n
(4)向链中添加规则。下面的语句用于开放网络接口
# iptables –A INPUT –i lo –j ACCEPT
# iptables –A OUTPUT –o lo –j ACCEPT
# iptables –A INPUT –i eth0 –j ACCEPT
# iptables –A OUTPUT –o eth0 –j ACCEPT
# iptables –A FORWARD –i eth0 –j ACCEPT
# iptables –A FORWARD –o eth0 –j ACCEPT
(5)使用用户自定义链
# iptables –N custom
# iptables –A custom –s 0/0 –d 0/0 –p icmp –j DROP
# iptables –A INPUT –s 0/0 –d 0/0 –j custom
2、设置基本的规则匹配(忽略目标动作)
(1) 指定协议匹配
1) 匹配指定的协议
# iptables –A INPUT –p tcp
2) 匹配指定协议之外的所有协议
# iptables –A INPUT –p ! tcp
(2) 指定地址匹配
1) 指定匹配的主机
# iptables –A INPUT –s 192.168.0.1
2) 指定匹配的网络
# iptables –A INPUT –s 192.168.0.0/24
3) 匹配指定主机之外的地址
# iptables –A INPUT –s ! 192.168.0.1
4) 匹配指定网络之外的网络
# iptables –A INPUT –s ! 192.168.0.1/24
(3) 指定网络接口匹配
1) 指定单一的网络接口匹配
# iptables –A INPUT –i eth0
# iptables –A FORWARD –o eth0
2) 指定同类型的网络接口匹配
# iptables –A FORWARD –o ppp+
(4) 指定端口匹配
1) 指定单一的端口匹配
# iptables –A INPUT –p tcp –sport wwww
# iptables –A INPUT –p tcp –sport 80
# iptables –A INPUT –p udp –sport 53
# iptables –A INPUT –p udp –dport 53
2) 匹配指定端口之外的端口
# iptables –A INPUT –p tcp –dport !22
3) 匹配指定的端口范围
# ipbables –A INPUT –p tcp –sport 22:80
4) 匹配ICMP端口和ICMP 类型
# iptables –A INPUT –p icmp-type 8
(5) 指定IP碎片
# iptables –A FORWARD –p tcp –s 192.168.0.0/24 –d 192.168.2.100 –dport 80 –f ACCEPT
# iptables –A FORWARD –f –s 192.168.0.0/24 –d 192.168.2.100 –j ACCEPT
3、设置扩展的规则匹配(忽略目标动作)
(1)多端口匹配扩展
1)匹配多个源端口
# iptables –A INPUT –p tcp –m multiport –source-port 22,53,80,110
2)匹配多个目的端口
# iptables –A INPUT –p tcp –m multiport –destination-port 22,53,80,110
3)匹配多个端口
# iptables –A INPUT –p tcp –m multiport –prot 22,53,80,110
(2)指定TCP匹配扩展
通过使用--tcp-flags 选项可以根据TCP包的标志位进行过滤,第一个参数为要检查的标志位;第二个参数是标志位为1的标志
# iptables –A INPUT –p tcp --tcp-flags SYN,FIN,ACK SYN
# iptables –p tcp --syn
表示SYN、ACK、FIN的标志都要检查,但是只有设置了SYN的才匹配
# iptables –A INPUT –p tcp --tcp-flags ALL SYN,ACK
表示ALL(SYN,ACK,FIN,RST,USG,PSH)的标志都要检查,但是只有设置了SYN和ACK的才匹配
(3)limit速率匹配扩展
1)指定单位时间内允许通过的数据包个数
# iptables –A INPUT –m limit --limit 300/hour
表示限制每小时允许通过300个数据包
2)指定触发事件的阀值(默认值是5)
# iptables –A INPUT –m limit --limit-burst 10
表示一次涌入的封包超过10个将被直接丢弃
3)同时指定速率限制和触发阀值
# iptables –A INPUT –p icmp –m limit –limit 3/m –limit-burst 3
Iptables 命令使用举例 - 技术--netfilter - 冰雪塵埃
ping命令使用举例
netfilter中iptables表的实现
netfilter/iptables模块功能中文介绍
netfilter中iptables表的实现
Linux Iptables命令详解
Linux-Netfilter&iptables实现机制的分析及应用
自定义iptables/netfilter的目标模块 - sahusoft的专栏 - CS...
iptables使用实例
iptables使用实例
linux内核netfilter之ip_conntrack模块的作用举例
linux内核netfilter之ip_conntrack模块的作用举例
学习使用 iptables - linux - 孙峰
struts logic标签使用举例--logic篇 -JAVA编程技术服务网
vb中msflexgrid使用举例
iptables
[zt]使用 iptables 建置 Linux 防火墙
linux之iptables - piaoling - JavaEye技术网站
对iptables配置命令的不解!- 网络问题 - Linux论坛
vb中msflexgrid的使用举例
vb中msflexgrid的使用举例
struts logic标签使用举例--logic篇
让网络工作事半功倍 经典FTP使用命令大全 — IT技术
cmd命令大全 - 〖软件使用交流〗 - MACD股市技术分析俱乐部 - bbs.macd...