iptables 防火墙配置教程 Print

  • 34

iptables 是 Linux 内核自带的防火墙工具,通过规则表控制网络数据包的过滤和转发。

基础概念

iptables 使用表和链的架构:

  • 表(Tables):filter(过滤)、nat(地址转换)、mangle(修改)
  • 链(Chains):INPUT(入站)、OUTPUT(出站)、FORWARD(转发)

查看当前规则

sudo iptables -L -n -v
sudo iptables -t nat -L -n

常用规则示例

# 允许 SSH
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT

# 允许 HTTP/HTTPS
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT

# 允许已建立的连接
sudo iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

# 允许本地回环
sudo iptables -A INPUT -i lo -j ACCEPT

# 默认拒绝所有入站
sudo iptables -P INPUT DROP

# 防洪水攻击(限制 SYN 包速率)
sudo iptables -A INPUT -p tcp --syn -m limit --limit 10/s -j ACCEPT

保存规则

# 安装持久化工具
sudo apt install iptables-persistent

# 手动保存
sudo netfilter-persistent save

删除和修改规则

# 删除规则
sudo iptables -D INPUT -p tcp --dport 80 -j ACCEPT

# 清空所有规则
sudo iptables -F

# 重置默认策略
sudo iptables -P INPUT ACCEPT

Was this answer helpful?

« Back