商城首页欢迎来到中国正版软件门户

您的位置: 首页 > 文章列表 > 编程开发 > 如何在iptables中添加自定义链

如何在iptables中添加自定义链

  发布于2026-07-13 阅读(0)

扫一扫,手机访问

在iptables里添加自定义链,其实就跟给工具箱多加一层抽屉一样——把特定的规则单独打包,管理起来清爽不少。下面直接看步骤。

如何在iptables中添加自定义链

方法一:用命令行一步步来

  1. 先看看当前链的布局:

    iptables -L --line-numbers

    这一步不是必须的,但能让你心里有数,知道现有规则排得怎么样。

  2. 新建一个自定义链:用iptables -N命令。比如搞个叫MY_CUSTOM_CHAIN的链:

    iptables -N MY_CUSTOM_CHAIN
  3. 往这个新链里塞规则:需求是什么就加什么。比如想拒绝所有进来的TCP连接:

    iptables -A MY_CUSTOM_CHAIN -p tcp -j DROP
  4. 把自定义链挂到主链上:想让进来的TCP流量先经过MY_CUSTOM_CHAIN?那就把它引用到INPUT链里:

    iptables -A INPUT -p tcp -j MY_CUSTOM_CHAIN

方法二:写个脚本,一劳永逸

如果你不想每次手工敲一堆命令,写个脚本跑一遍就行。下面这个脚本干了和上面一样的事:

#!/bin/bash
# 创建自定义链
iptables -N MY_CUSTOM_CHAIN
# 在自定义链中添加规则
iptables -A MY_CUSTOM_CHAIN -p tcp -j DROP
# 将自定义链应用到INPUT链
iptables -A INPUT -p tcp -j MY_CUSTOM_CHAIN

保存成add_custom_chain.sh,加个执行权限:

chmod +x add_custom_chain.sh

然后执行:

./add_custom_chain.sh

几点需要注意的

  • 备份当前规则:动手之前,务必把现有的iptables规则存一份。万一新规则搞出问题,还能快速滚回去:

    iptables-sa ve > /etc/iptables/rules.v4
  • 权限问题:修改iptables规则需要root权限,要么切到root用户,要么记得每条命令前加sudo

  • 先测试再上线:生产环境直接怼新规则?风险不小。建议先在测试环境跑一遍,确认规则没把正常服务给拦掉,再部署到线上。

按上面这些步骤走,自定义链就能顺利用起来了。规则逻辑清晰,后续维护也省心。

本文转载于:https://www.yisu.com/ask/25689071.html 如有侵犯,请联系zhengruancom@outlook.com删除。
免责声明:正软商城发布此文仅为传递信息,不代表正软商城认同其观点或证实其描述。

热门关注