网络安全--iptables(待更新,累了)

总结:

iptables 的关键概念和功能:

规则(Rules):

  1. iptables 使用规则来定义特定的操作,例如允许或拒绝特定类型的网络流量。每条规则都由条件和操作组成。条件可以是源 IP 地址、目标 IP 地址、端口号等,操作可以是允许、拒绝或修改数据包。

表(Tables):

  1. iptables 包含多个表,每个表用于处理特定类型的数据包。常用的表包括:

    • filter 表: 用于过滤数据包,实现基本的包过滤功能,如允许或拒绝特定端口的数据包。
    • nat 表: 用于网络地址转换(NAT),实现在不同网络之间进行数据包转发和地址转换。
    • mangle 表: 用于修改数据包的特定字段,如修改 TOS、TTL 等。
    • raw 表: 用于禁用连接跟踪机制,通常用于某些特殊场景下的数据包处理。
  2. 链(Chains): 每个表包含多个链,链是一系列规则的集合,用于处理数据包。常用的链包括:

    • INPUT 链: 处理进入系统的数据包。
    • OUTPUT 链: 处理离开系统的数据包。
    • FORWARD 链: 处理通过系统转发的数据包。
    • PREROUTING 链: 在路由之前处理数据包,适用于 NAT。
    • POSTROUTING 链: 在路由之后处理数据包,适用于 NAT。
  3. 匹配(Matching): 每个规则都包含一个或多个匹配条件,用于确定是否对数据包执行操作。匹配条件可以包括源 IP 地址、目标 IP 地址、协议、端口等。

  4. 动作(Actions): 规则匹配后,根据定义的操作来处理数据包。常见的动作包括 ACCEPT(允许通过)、DROP(丢弃数据包)和REJECT(拒绝数据包并发送拒绝消息)。

查看规则和状态:

查看当前的 iptables 规则和状态:

iptables -L
iptables -L -n  # 显示数字格式的 IP 地址而不是域名
iptables -L -v  # 显示详细信息

添加规则:

添加一条允许 SSH(端口 22)流量的规则:

iptables -A INPUT -p tcp --dport 22 -j ACCEPT

添加一条拒绝 ICMP 回应的规则:

iptables -A INPUT -p icmp --icmp-type echo-request -j DROP

删除规则:

删除某一条规则,可以使用 -D 参数加上规则编号(在列表中显示的编号):

iptables -D INPUT 2  # 删除 INPUT 链中的第二条规则

保存和加载规则:

保存当前的 iptables 规则到文件中:

iptables-save > /etc/iptables/rules.v4

加载之前保存的规则文件:

iptables-restore < /etc/iptables/rules.v4

清空规则:

清空所有规则,但保留默认策略:

iptables -F

清空所有规则和默认策略:

iptables -F
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT

设置默认策略:

设置默认策略为拒绝所有输入流量:

iptables -P INPUT DROP

你可能感兴趣的:(网络安全,web安全,网络,安全)