iptables 基础示例
侧边栏壁纸
  • 累计撰写 64 篇文章
  • 累计收到 1 条评论

iptables 基础示例

soulio
2024-09-20 / 0 评论 / 1 阅读 / 正在检测是否收录...

一、命令简介

iptables​ 是Linux操作系统中用于配置网络包过滤规则的工具,它是netfilter项目的一部分。iptables​ 可以用来设置、维护和检查Linux内核中的IP包过滤规则表。

iptables的知识点比较多,更详细的内容会在个人网站中推出。

顺便提一下个人网站:

这几天已经尝试使用typecho搭建动态网站,但是不太满足效果。

Clip_2024-09-20_02-34-26

最终决定使用 Docusaurus 构建我比较喜欢的文档型网站。

Clip_2024-09-20_02-31-25

网站的内容:学习计算机整理出来的笔记。

进度:学习前端和Docusaurus中。

二、命令参数

常用选项

  • -A, --append​:在链的末尾添加一条规则。
  • -D, --delete​:从链中删除一条规则。
  • -I, --insert​:在链中的指定位置插入一条规则。
  • -F, --flush​:清空链中的所有规则。
  • -L, --list​:列出链中的所有规则。
  • -N, --new-chain​:创建一个新的用户定义链。
  • -X, --delete-chain​:删除一个用户定义的空链。
  • -P, --policy​:设置链的默认策略。
  • -p, --protocol​:指定协议(tcp, udp, icmp等)。
  • -s, --source​:指定源地址或范围。
  • -d, --destination​:指定目标地址或范围。
  • --dport​:指定目标端口。
  • --sport​:指定源端口。
  • -j, --jump​:指定目标规则(例如,ACCEPT, DROP, REJECT等)。

三、命令示例

以下是基础用法

查看当前规则

iptables -L

添加规则

添加规则到指定的链(chain)中。以下是一些常用的链:

  • INPUT​:处理入站数据包。
  • FORWARD​:处理转发数据包。
  • OUTPUT​:处理出站数据包。
iptables -A INPUT -p tcp --dport 80 -j ACCEPT  # 允许所有到端口80的TCP连接

删除规则

删除指定链中的规则。需要知道规则的编号。

iptables -D INPUT 1  # 删除INPUT链中的第一条规则

清空规则

清空指定链中的所有规则。

iptables -F INPUT  # 清空INPUT链中的所有规则

示例

以下是一些 iptables​ 命令的示例:

iptables -A INPUT -s 192.168.1.100 -j DROP  # 添加规则,丢弃来自192.168.1.100的所有入站数据包
iptables -I OUTPUT -p tcp --dport 22 -j ACCEPT  # 在OUTPUT链的开头插入规则,允许所有出站SSH连接
iptables -P FORWARD DROP  # 设置FORWARD链的默认策略为DROP
iptables -L -n -v  # 以数字形式和详细模式列出所有规则
iptables -F  # 清空所有链中的所有规则

注意

  • iptables​ 规则不会立即生效,需要保存规则。通常,可以使用 iptables-save​ 命令保存规则,并在系统启动时通过 iptables-restore​ 命令加载它们。
  • 在修改 iptables​ 规则时,需要小心,因为错误的规则可能导致网络连接问题。
本文共 564 个字数,平均阅读时长 ≈ 2分钟
0

海报

正在生成.....

评论 (0)

取消