[linux安全] iptables的基本语法

本文深入解析iptables命令,包括基本语法、参数解释以及不同场景下的应用实例,帮助理解如何配置防火墙规则。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值