34. 常用shell之 iptables - 网络防火墙配置 的用法和衍生用法

iptables 是 Linux 系统中用于设置网络防火墙规则的命令行工具。它允许定义规则,用于控制进出的系统的网络流量。

基本用法

  1. 查看现有的 iptables 规则:

    iptables -L

    这个命令列出当前所有的 iptables 规则。

  2. 允许或阻止特定 IP 地址:

    • 允许来自特定 IP 的流量:

      iptables -A INPUT -s 192.168.1.10 -j ACCEPT

    • 阻止来自特定 IP 的流量:

      iptables -A INPUT -s 192.168.1.10 -j DROP

  3. 允许或阻止特定端口:

    • 允许流量通过特定端口(例如,允许 80 端口的 HTTP 流量):

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

    • 阻止流量通过特定端口:

      iptables -A INPUT -p tcp --dport 80 -j DROP

  4. 设置默认策略:

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

      iptables -P INPUT DROP

    • 设置默认策略为允许所有进入流量:

      iptables -P INPUT ACCEPT

  5. 清除所有规则:

    iptables -F

    这个命令会删除所有现有的 iptables 规则。

高级用法

  1. 端口转发:

    • 将流量从一个端口转发到另一个端口:

      iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080

  2. 限制数据包速率:

    • 限制到达特定端口的数据包速率:

      iptables -A INPUT -p tcp --dport 80 -m limit --limit 1/s -j ACCEPT

  3. 使用 IP 地址范围:

    • 允许或阻止来自整个子网的流量:

      iptables -A INPUT -s 192.168.1.0/24 -j ACCEPT

衍生用法

  1. 日志记录:

    • 记录被阻止的流量:

      iptables -A INPUT -j LOG --log-prefix "IPTables-Dropped: " --log-level 4

  2. 防止 DOS 攻击:

  • 使用 iptables 防止简单的 DOS 攻击:

    iptables -A INPUT -p tcp --dport 80 -m limit --limit 25/minute --limit-burst 100 -j ACCEPT

  1. 保存和恢复规则:
  • 保存当前的 iptables 规则:

    iptables-save > /path/to/iptables.rules

  • 恢复 iptables 规则:

    iptables-restore < /path/to/iptables.rules

  1. 组合规则以实现复杂策略:
  • 创建复杂的规则组合以满足特定的网络安全策略需求。

iptables 是一个非常强大的工具,可以用来保护的系统不受未授权访问和其他网络威胁的影响。它提供了极大的灵活性来控制进出系统的流量。然而,iptables 的复杂性也意味着在配置时需要小心谨慎,错误的配置可能导致网络服务不可用。使用前建议详细了解其语法和概念,或在生产环境中操作之前在测试环境中进行练习。

  • 8
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值