iptables state 状态防火墙

iptables -t filter -A INPUT -s 172.16.1.11 -p icmp -m icmp –icmp-type,拒绝多端口,1.iptables 可以根据状态对数据包进行过虑,2.对于数据包而言,iptables -t mangle -X,原文链接】

扩展相配查看帮助
iptables -t filter -m icmp -h
user1 通过 user2 ping  user2 拒绝 user1 ping
iptables -t filter -A INPUT -s 172.16.1.11 -p icmp -m icmp –icmp-type
echo-request -j DROP
不容多端口
iptables -t filter -A INPUT -s 172.16.1.11 -p tcp -m multiport –dport
80,22,21 -j DROP
驳回三个网段
iptables -t filter -A INPUT -m iprange –src-range
192.168.1.1-192.168.1.100 -j DROP
拒绝mac通过
iptables -t filter -A INPUT -m mac –mac-source  00:0C:29:7F:54:B5 -j
DROP
允许ssh拒绝scp
iptables -t filter -A INPUT -s 172.16.1.11 -p tcp –dport 22 -m tos
–tos 8 -j DROP
TOS match v1.3.5 options:
[!] –tos value                Match Type of Service field from one of
the
                              following numeric or descriptive values:
          Minimize-Delay 16 (0x10)      最小延迟
          马克西姆ize-Throughput 8 (0x08)  最大吞吐量
          马克西姆ize-Reliability 4 (0x04) 最大可靠性
          Minimize-Cost 2 (0x02)      最小开支
          Normal-Service 0 (0x00)      一般服务
state 状态防火墙
–state NEW        建构新的连日
–state ESTABLISHED 已确立连接
–state RELATED        相关的
–state INVALID        无效的

1.iptables 能够遵照事态对数码包实行过虑

Linux 防火墙iptables命令详解,iptables命令详解

【转:原来的文章链接】

iptables -F
iptables -X
iptables -F -t mangle
iptables -t mangle -X
iptables -F -t nat
iptables -t nat -X
先是,把三个表清空,把自行建造的法规清空。

iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD ACCEPT
设定INPUT、OUTPUT的暗中同意计谋为DROP,FO奥迪Q5WACR-VD为ACCEPT。

iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
先把“回环”张开,防止有不须求的劳动。

iptables -A INPUT -i eth+ -p icmp –icmp-type 8 -j ACCEPT
iptables -A OUTPUT -o eth+ -p icmp –icmp-type 0 -j ACCEPT
在颇具网卡上打开ping功用,便于维护和检查实验。

iptables -A INPUT -i eth0 -s 192.168.100.250 -d 192.168.100.1 -p tcp
–dport 22 -j ACCEPT
iptables -A OUTPUT -o eth0 -d 192.168.100.250 -s 192.168.100.1 -p tcp
–sport 22 -j ACCEPT
开采22端口,允许远程管理。(设定了成都百货上千的叠合条件:管理机器IP必须是250,何况必须从eth0网卡跻身)

iptables -A INPUT -i eth0 -s 192.168.100.0/24 -p tcp –dport 3128 -m
state –state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth0 -d 192.168.100.0/24 -p tcp –sport 3128 -m
state –state ESTABLISHED -j ACCEPT
iptables -A INPUT -i eth1 -s 192.168.168.0/24 -p tcp –dport 3128 -m
state –state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth1 -d 192.168.168.0/24 -p tcp –sport 3128 -m
state –state ESTABLISHED -j ACCEPT
iptables -A INPUT -i eth2 -p tcp –dport 32768:61000 -m state –state
ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth2 -p tcp –sport 32768:61000 -m state –state
NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth2 -p udp –dport 53 -j ACCEPT
iptables -A INPUT -i eth2 -p udp –sport 53 -j ACCEPT
地点这几句是比较胸闷的,作者做逐个分解。

iptables -A INPUT -i eth0 -s 192.168.100.0/24 -p tcp –dport 3128 -m
state –state NEW,ESTABLISHED -j ACCEPT
同意192.168.100.0/24网段的机械发送数据包从eth0网卡步向。如若数据包是tcp协议,并且指标端口是3128(因为REDIRECT已经把80改为3128了。nat表的PREROUTING是在filter表的INPUT前边的。)的,再并且,数据包的情事必须是NEW也许ESTABLISHED的(NEW代表tcp三段式握手的“第一握”,换句话说就是,允许客户端机器向服务器发出链接申请。ESTABLISHED代表经过握手已经创制起链接),通过。

iptables -A OUTPUT -o eth2 -p tcp –sport 32768:61000 -m state –state
NEW,ESTABLISHED -j ACCEPT
咱俩先来看这一句。以后你的数据包已经步入到linux服务器防火墙上来了。squid需求代表你去探望,所以那时,服务器就成了客户端的剧中人物,所以它要利用32768到6一千的村办端口举办会见。(大家会意外应该是1024到65535吗。其实CentOS版的linux所定义的民用端口是32768到6一千的,你能够透过cat
/proc/sys/net/ipv4/ip_local_port_range,查看一下。)再度宣示:这里是squid以客户端的地位去访谈别的的服务器,所以那边的源端口是32768:6一千,并不是3128!

iptables -A INPUT -i eth2 -p tcp –dport 32768:61000 -m state –state
ESTABLISHED -j ACCEPT
当然了,数据有去就有回。

iptables -A OUTPUT -o eth0 -d 192.168.100.0/24 -p tcp –sport 3128 -m
state –state ESTABLISHED -j ACCEPT
数码包还得经过服务器,转到内网网卡上。请稳重,这里,是squid帮您去做客了您想要访谈的网站。所以在内网中,你的机器是客户端剧中人物,而squid是服务器角色。那与刚刚对外访谈的进度是分歧的。所以在那边,源端口是3128,而不是32768:6一千。

iptables -A OUTPUT -o eth2 -p udp –dport 53 -j ACCEPT
iptables -A INPUT -i eth2 -p udp –sport 53 -j ACCEPT
本来,DNS是不足缺点和失误的。

iptables -A INPUT -i eth+ -p tcp –dport 80 -j LOG –log-prefix
“iptables_80_alert” –log-level info
iptables -A INPUT -i eth+ -p tcp –dport 21 -j LOG –log-prefix
“iptables_21_alert” –log-level info
iptables -A INPUT -i eth+ -p tcp –dport 22 -j LOG –log-prefix
“iptables_22_alert” –log-level info
iptables -A INPUT -i eth+ -p tcp –dport 25 -j LOG –log-prefix
“iptables_25_alert” –log-level info
iptables -A INPUT -i eth+ -p icmp –icmp-type 8 -j LOG –log-prefix
“iptables_icmp8_alert” –log-level info
自然了,来点日志记录会对网管员有所帮忙。

iptables 基本命令使用比如

      一、链的基本操作
1、清除全体的条条框框。
1)清除预设表filter中具有准绳链中的平整。
# iptables -F
2)清除预设表filter中使用者自定链中的准绳。
#iptables -X
#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、列出表/链中的全体条条框框。默许只列出filter表。
#iptables -L
4、向链中增添法则。上边包车型客车口舌用于开放网络接口:
#iptables -A INPUT -i lo -j ACCEPT
#iptables -A OUTPUT -o lo -j ACCEPT
#iptables -A INPUT -i eth0 -j ACEPT
#iptables -A OUTPUT -o eth1 -j ACCEPT
#iptables -A FORWARD -i eth1 -j ACCEPT
#iptables -A FORWARD -0 eth1 -j ACCEPT
专注:由于地点进度不会透过FOXC90WA路虎极光D链,由此回环接口lo只在INPUT和OUTPUT八个链上效果与利益。
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 DROP
二、设置基本的平整相称
1、内定协议相配。
1)相配钦命协议。
#iptables -A INPUT -p tcp
2)相配钦命协议之外的装有协议。
#iptables -A INPUT -p !tcp
2、钦命地点相称。
1)钦命相称的主机。
#iptables -A INPUT -s 192.168.0.18
2)钦点相配的互连网。
#iptables -A INPUT -s 192.168.2.0/24
3)相配钦命主机之外的地址。
#iptables -A FORWARD -s !192.168.0.19
4)相配钦赐互连网之外的网络。
#iptables -A FORWARD -s ! 192.168.3.0/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 www
#iptables -A INPUT -p udp –dport 53
2)匹配钦赐端口之外的端口。
#iptables -A INPUT -p tcp –dport !22
3)相称端口范围。
#iptables -A INPUT -p tcp –sport 22:80
4)匹配ICMP端口和ICMP类型。
#iptables -A INOUT -p icmp –icimp-type 8
5)指定ip碎片。

个网络接口都有一个MTU(最大传输单元),这一个参数定义了能够经过的数据包的最大尺寸。假若三个数据包大于那个参数值时,系统会将其分割成更加小的数据包
(称为ip碎片)来传输,而接受方则对这么些ip碎片再进行理并了结合以回复整个包。那样会招致二个难题:当系统将大额包划分成ip碎片传输时,第二个一鳞半爪含有
全部的邯郸音讯(IP+TCP、UDP和ICMP),不过后续的零碎唯有包头的有个别音讯(如源地址、指标地址)。由此,检查后边的ip碎片的头顶(象有
TCP、UDP和ICMP同样)是不容许的。借使有那般的一条法规:
#iptables -A FORWARD -p tcp -s 192.168.1.0/24 -d 192.168.2.100 –dport
80 -j ACCEPT
并且那时的FO本田UR-VWA凯雷德D的policy为DROP时,系统只会让第贰个ip碎片通过,而剩余的零散因为大庆音讯不完全而不可能透过。能够透过—fragment/-f
选项来钦定第贰个及然后的ip碎片化解上述难点。
#iptables -A FORWARD -f -s 192.168.1.0/24 -d 192.168.2.100 -j ACCEPT
小心现行反革命有许多张开ip碎片攻击的实例,如DoS攻击,由此同意ip碎片通过是有安全隐患的,对于这点足以动用iptables的相称扩大来进展限定。
三、设置扩展的平整相称(比方已忽略目标动作)
1、多端口匹配。
1)相称八个源端口。
#iptables -A INPUT -p tcp -m multiport –sport 22,53,80,110
2)相称八个指标端口。
#iptables -A INPUT -p tcp -m multiport –dpoort 22,53,80
3)匹配多端口(无论是源端口仍旧指标端口)
#iptables -A INPUT -p tcp -m multiport –port 22,53,80,110
2、钦点TCP相配增加
使用 –tcp-flags 选项能够依赖tcp包的评释位打开过滤。
#iptables -A INPUT -p tcp –tcp-flags SYN,FIN,ACK SYN
#iptables -A FROWARD -p tcp –tcp-flags ALL SYN,ACK
上实例中第贰个代表SYN、ACK、FIN的标识都检查,可是只有SYN相配。第二个代表ALL(SYN,ACK,FIN,卡宴ST,U奥迪Q5G,PSH)的标识都检查,不过只有设置了SYN和ACK的同盟。
#iptables -A FORWARD -p tcp –syn
选项—syn相当于”–tcp-flags SYN,RST,ACK SYN”的简写。
3、limit速率相配扩充。
1)内定单位时间内允许通过的多寡包个数,单位时间足以是/second、/minute、/hour、/day或使用第三个子母。
#iptables -A INPUT -m limit –limit 300/hour
2 )钦定触发事件的阀值。
#iptables -A INPUT -m limit –limit-burst 10
用来比对三遍同期涌入的封包是不是超过10个,超过此上限的包将间接吐弃。
3)同偶然候钦命速率限制和触发阀值。
#iptables -A INPUT -p icmp -m limit –-limit 3/m –limit-burst 3
代表每分钟允许的最大包数量为限制速率(本例为3)加上圈套前的触发阀值burst数。任何情状下,都可保险3个数据包通过,触发阀值burst也就是允许额外的包数量。
4)基于状态的万分扩展(连接追踪)
各种网络连接富含以下音信:源地址、目的地址、源端口、目标端口,称为套接字对(socket
pairs);协议项目、连接情况(TCP协议)
和过期时间等。防火墙把那些音信称为状态(stateful)。状态包过滤防火墙能在内存中爱惜三个追踪状态的表,比轻巧包过滤防火墙具备更加大的安全性,命令格式如下:
iptables -m state –-state [!]state [,state,state,state]
里头,state表是叁个逗号分割的列表,用来指定连接情状,4种:
>NEW: 该包想要开始二个新的接连(重新连接或三番五次重定向)
>RELATED:该包是属于有些已经创建的连日所创立的新连接。譬如:
FTP的数量传输连接和垄断(monopoly)连接之间就是RELATED关系。
>ESTABLISHED:该包属于有个别已经确立的连日。
>INVALID:该包不相配于任何连接,经常这几个包被DROP。
例如:
(1)在INPUT链加多一条法规,相称已经成立的连年或由一度创造的连年所创立的新连接。即匹配全部的TCP回应包。
#iptables -A INPUT -m state –state RELATED,ESTABLISHED
(2)在INPUT链链增多一条准绳,相称全体从非eth0接口来的连日央求包。
#iptables -A INPUT -m state -–state NEW -i !eth0
又如,对于ftp连接能够使用上边包车型大巴连接追踪:
(1)被动(Passive)ftp连接格局。
#iptables -A INPUT -p tcp –sport 1024: –dport 1024: -m state –-state
ESTABLISHED -j ACCEPT
#iptables -A OUTPUT -p tcp –sport 1024: –dport 1024: -m
state -–state ESTABLISHED,RELATED -j ACCEPT
(2)主动(Active)ftp连接格局
#iptables -A INNPUT -p tcp –sport 20 -m state –-state
ESTABLISHED,RELATED -j ACCEPT
#iptables -A OUTPUT -p tcp –OUTPUT -p tcp –dport 20 -m state –state
ESTABLISHED -j ACCEPT

防火墙iptables命令详解,iptables命令详解
【转:原来的文章链接】 iptables -F iptables -X iptables -F -t mangle iptables
-t mangle -X iptables -F -t nat iptables…

icmp 实验
通 NEW ESTABLISHED
不通  NEW ESTABLISHED RELATED INVALID
出去
iptables -t filter -A OUTPUT -p icmp -m icmp –icmp-type echo-request -m
state –state NEW -j LOG –log-prefix “OUT_ICMP_NEW”
iptables -t filter -A OUTPUT -p icmp -m icmp –icmp-type echo-request -m
state –state ESTABLISHED -j LOG –log-prefix “OUT_ICMP_ESTABLISHED”
iptables -t filter -A OUTPUT -p icmp -m icmp –icmp-type echo-request -m
state –state RELATED -j LOG –log-prefix “OUT_ICMP_RELATED”
iptables -t filter -A OUTPUT -p icmp -m icmp –icmp-type echo-request -m
state –state INVALID -j LOG –log-prefix “OUT_ICMP_INVALID”

    状态分为:ESTABLISH、INVALID、NEW、RELATED

进入
iptables -t filter -A INPUT -p icmp -m icmp –icmp-type echo-reply -m
state –state NEW -j LOG –log-prefix “IN_ICMP_NEW”
iptables -t filter -A OUTPUT -p icmp -m icmp –icmp-type echo-reply -m
state –state ESTABLISHED -j LOG –log-prefix “IN_ICMP_ESTABLISHED”
iptables -t filter -A OUTPUT -p icmp -m icmp –icmp-type echo-reply -m
state –state RELATED -j LOG –log-prefix “IN_ICMP_RELATED”
iptables -t filter -A INPUT -p icmp -m icmp –icmp-type echo-reply -m
state –state INVALID -j LOG –log-prefix “IN_ICMP_INVALID”

2.对于数据包来说,数据包有多少个流向
  www.2cto.com  

tcp协议 http实验
出口
iptables -t filter -A UOTPUT -p tcp –dport 80 -m state –state NEW -j
LOG –log-prefix ” OUT_80_NEW”
iptables -t filter -A UOTPUT -p tcp –dport 80 -m state –state
ESTABLISHED -j LOG –log-prefix ” OUT_80_ES”
iptables -t filter -A UOTPUT -p tcp –dport 80 -m state –state RELATED
-j LOG –log-prefix ” OUT_80_RE”
iptables -t filter -A UOTPUT -p tcp –dport 80 -m state –state INVALID
-j LOG –log-prefix ” OUT_80_IN”
进口
iptables -t filter -A INPUT -p tcp –sport 80 -m state –state NEW -j
LOG –log-prefix ” IN_80_NEW”
iptables -t filter -A INPUT -p tcp –sport 80 -m state –state
ESTABLISHED -j LOG –log-prefix ” IN_80_ES”
iptables -t filter -A INPUT -p tcp –sport 80 -m state –state RELATED
-j LOG –log-prefix ” IN_80_RE”
iptables -t filter -A INPUT -p tcp –sport 80 -m state –state INVALID
-j LOG –log-prefix ” IN_80_IN”
一共10个包 第四个包是new 其余9个是ESTABLISHED
ftp协议 tcp实验 有 NEW ESTABLISHED RELATED 3种状态

  金沙澳门官网7817网址 1

支配链路 发生2个NEW

 PREROUTING–>FORWARD–>POSTROUTING

出口
iptables -t filter -A OUTPUT -p tcp –dport 21 -m state –state NEW -j
LOG –log-prefix “OUT_21_NEW”
iptables -t filter -A OUTPUT -p tcp –dport 21 -m state –state
ESTABLISHED -j LOG –log-prefix “OUT_21_ES”
iptables -t filter -A OUTPUT -p tcp –dport 21 -m state –state RELATED
-j LOG –log-prefix “OUT_21_RE”
iptables -t filter -A OUTPUT -p tcp –dport 21 -m state –state INVALID
-j LOG –log-prefix “OUT_21_IN”

  PREROUTING–>INPUT–>本机OUTPUT–>POSTROUTING

金沙澳门官网7817网址,进口
iptables -t filter -A INPUT -p tcp –sport 21 -m state –state NEW -j
LOG –log-prefix “IN_21_NEW”
iptables -t filter -A INPUT -p tcp –sport 21 -m state –state
ESTABLISHED -j LOG –log-prefix “IN_21_ES”
iptables -t filter -A INPUT -p tcp –sport 21 -m state –state RELATED
-j LOG –log-prefix “IN_21_RE”
iptables -t filter -A INPUT -p tcp –sport 21 -m state –state INVALID
-j LOG –log-prefix “IN_21_IN”

3. 下边前境遇比详细介绍IPTABLS是由哪些组成
  www.2cto.com  

数量链路

   IPTABLES由三张表组成分别是:FILTE库罗德Murano、NAT、MANGEL

进口
iptabels -t filter -A INPUT -p tcp –sport 20 -m state –state NEW -j
LOG –log-prefix “IN_20_NEW”
iptables -t filter -A INPUT -p tcp –sport 20 -m state –state
ESTABLISHED -j LOG –log-prefix ” IN_20_ES”
iptables -t filter -A INPUT -p tcp –sport 20 -m state –state RELATED
-j LOG –log-prefix ” IN_20_RE”
iptables -t filter -A INPUT -p tcp –sport 20 -m state –state INVALID
-j LOG –log-prefix “IN_20_IN”

 

出口
iptabels -t filter -A OUTPUT -p tcp –dport 20 -m state –state NEW -j
LOG –log-prefix “OUT_20_NEW”
iptables -t filter -A OUTPUT -p tcp –dport 20 -m state –state
ESTABLISHED -j LOG –log-prefix ” OUT_20_ES”
iptables -t filter -A OUTPUT -p tcp –dport 20 -m state –state RELATED
-j LOG –log-prefix ” OUT_20_RE”
iptables -t filter -A OUTPUT -p tcp –dport 20 -m state –state INVALID
-j LOG –log-prefix “OUT_20_IN”

 FILTE奥迪Q5   便是常用的过虑表