[linux安全] iptables的基本语法

1基本语法及参数解释
   iptables  -t filter  -A  INPUT      -p  tcp -s ip/net -d ip/net -j ACCEPT  
                nat         OUTPUT         udp                        DROP
                mangle      FORWARD        icmp                       REJECT
                            PREROUTING
                            POSTROUTING
                         
                        -I
                        -D
                        -F
                        -L


-s 源IP地址     -s 192.168.1.1 -s 192.168.1.0/24
-d 目的IP地址   -d 192.168.3.1 -d 192.168.3.0/24

-p   传输协议
--sport  源端口  -p tcp --sport 22:80
--dport  目的端口 -p tcp  --dport 21

-i  网络接口名称  匹配从哪个网络接口进来的数据包
-o  网络接口名称  匹配从哪个网络接口出去的数据包

--tcp-flages  tcp标记的名称

tcp标记的名称
syn  新建立的连接的数据包会有syn
ack  应答包会有ACK标记
fin  结束标记位  断开连接时会有的标记
rst  重置标记位
psh  推标记位 (程序插队是)
urg  紧急标记位



mac 地址匹配
-m mac 源MAC地址  目的MAC地址
-m mac --mac-source 00:ab:22:99:ff:aa 目的MAC地址

多端口匹配
-p tcp -m multiport --sports 21,22,25,80,1025:2000 源端口列表
                    --dports                       目的端口列表

数据包的状态
NEW           建立的连接
ESTABLISHED   以建立的连接
RELATED       与以建立的连接相关的连接
INVALID       无效的连接

-m state --state  NEW,ESTABLISHED

NEW
  三次握手的第一次握手
  echo-request
  udp通信时,一方主动跟另一方通信的所有包都是NEW
  nmap -sA ip
时,所发的带有ACK标记的探测TCP端口的包,也是NEW状态。也就说明了。TCP的NEW状态除了有正常的合法的SYN,TCP,NEW以外,还有其它的也是NEW状态,但其它的并不合法。
 
 ESTABLISHED
  TCP正常的通信过程中除第一次握手外的所有通信包
  echo-reply
  udp通信时,一方被动跟另一方通信的所有包都是ESTABLISHED
  访问某一节点的TCP的端口,而对方并没有开此端口时,双方会返回一个带有RST标记位的TCP的回应。而这种回应是ESTABLISHED状态

 RELATED
  ftp的数据传输的TCP连接的第一次握手
  icmp的不可达消息
  当访问某一节点的UDP端口(12345),而对方并没有开此端口时,对方会返回一个ICMP的不达消息
(ICMP 192.168.1.41 udp port 12345 unreachable)

NVALID
  nmap -sF IP    总之INVALID表示的是非法的包,往往不能放行。

IP地址范匹配
-m iprange --src-iprange 192.168.1.10-192.168.1.20 -j DROP
           --dst-oprange


发布了98 篇原创文章 · 获赞 15 · 访问量 45万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章