在Debian系统中,iptables是一个强大的命令行工具,用于配置Linux内核防火墙。它允许系统管理员定义规则,这些规则决定了数据包如何被处理,包括接受、拒绝或转发。iptables规则被组织成不同的链(chains),每个链对应于数据包处理的不同点。
iptables主要有五个默认链:
- INPUT:处理进入本机的数据包。
- FORWARD:处理通过本机转发的数据包。
- OUTPUT:处理从本机发出的数据包。
- PREROUTING:用于目标地址转换(DNAT)的规则,在路由决策之前处理数据包。
- POSTROUTING:用于源地址转换(SNAT)的规则,在路由决策之后处理数据包。
使用iptables进行过滤的基本步骤如下:
-
查看现有规则:
sudo iptables -L sudo iptables -L -n -
清空所有规则(谨慎操作):
sudo iptables -F -
设置默认策略: 你可以为每个链设置默认策略,例如DROP或ACCEPT。
sudo iptables -P INPUT DROP sudo iptables -P FORWARD DROP sudo iptables -P OUTPUT ACCEPT -
允许特定IP访问:
sudo iptables -A INPUT -s 192.168.1.100 -j ACCEPT -
拒绝特定IP访问:
sudo iptables -A INPUT -s 192.168.1.101 -j DROP -
允许特定端口通信:
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT # 允许SSH sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT # 允许HTTP sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT # 允许HTTPS -
拒绝所有其他进入的连接:
sudo iptables -A INPUT -j DROP -
保存规则: Debian系统通常使用
iptables-persistent来保存iptables规则,以便在重启后仍然有效。sudo netfilter-persistent save sudo netfilter-persistent reload -
删除规则: 如果需要删除特定规则,可以使用
-D选项。sudo iptables -D INPUT -s 192.168.1.100 -j ACCEPT
请注意,修改iptables规则可能会影响系统的连通性,因此在生产环境中进行更改之前,建议在测试环境中进行充分的测试。此外,确保你有足够的权限来执行这些命令,通常需要root权限。
以上就是关于“Debian iptables如何使用链进行过滤”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm