Linux运维基础之iptables命令详解

Linux运维基础之iptables命令详解

管理员可以使用 iptables 命令配置 Linux 内核防火墙的 IP 数据包过滤规则。从本质上说,iptables 是一种控制网络流量的工具,它能决定哪些数据包可以留下、指向哪里以及哪些数据包不被允许。

使用 iptables,你可以根据 IP 地址、协议(如 TCP、UDP)、端口或这些的组合来定义过滤器和规则。

因此,在 Linux 中,iptables 通常用于建立、管理和执行有关传入和传出网络流量的规则,这有助于完成网络地址转换(NAT)、数据包过滤和数据包混淆等任务。这使它成为网络安全的重要工具,可以控制在网络的不同点允许或拒绝哪些连接。

下面是一些使用 iptables 命令的方法:

1. 列出规则

要列出防火墙中的所有规则,可以使用 -L 选项。

iptables -L

2. 阻止一个 IP 地址

要阻止来自特定 IP 地址的所有传入流量,可以使用 -A 选项将规则附加到链中。

iptables -A INPUT -s 192.168.0.10 -j DROP

上述命令会阻止来自 IP 地址 192.168.0.10 的所有输入流量。

3. 允许一个 IP 地址

要允许来自特定 IP 地址的所有传入流量,可以使用 -A 选项将规则附加到链中。

iptables -A INPUT -s 192.168.0.10 -j ACCEPT

上述命令允许来自 IP 地址 192.168.0.10 的所有输入流量。

4. 屏蔽一个端口

要阻止特定端口上的所有传入流量,可以使用 -A 选项将规则添加到链中。

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

上述命令会阻止 TCP 80 端口的所有传入流量。

5. 允许端口

要允许特定端口上的所有传入流量,可以使用 -A 选项将规则附加到链中。

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

上述命令允许所有进入 TCP 80 端口的流量。

6. 删除规则

要删除一条规则,可以使用 -D 选项,后面跟上链和规则编号。

iptables -D INPUT 1

上述命令会删除 INPUT 链中的第一条规则。

7. 清除所有规则

要删除所有规则,可以使用 -F 选项。

iptables -F

8. 阻止特定服务

如果要阻止特定服务,可以指定服务名称而不是端口号。

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

更多 Linux 命令

目录操作 rmdir · cd · pwd · exa · ls
文件操作 cat · cp · dd · less · touch · ln · rename · more · head
文件系统操作 chown · mkfs · locate
网络 ping · curl · wget · iptables · mtr
搜索和文本处理 find · grep · sed · whatis · ripgrep · fd · tldr
系统信息和管理 env · history · top · who · htop · glances · lsof
用户和会话管理 screen · su · sudo · open

评论留言