温馨提示×

如何在ubuntu配置iptables

小樊
52
2026-10-18 14:37:11
栏目: 智能运维

在 Ubuntu 上配置 iptables 通常包括安装、基本规则设置、保存与开机自启几个步骤。下面给你一份实用指南(适用于 Ubuntu 20.04 / 22.04 等)。


一、检查与安装 iptables

Ubuntu 默认一般已安装 iptables:

sudo iptables -V

若未安装:

sudo apt update
sudo apt install iptables

注意:Ubuntu 默认可能使用 nftables 作为后端,但 iptables 命令仍可用。


二、查看当前规则

sudo iptables -L -n -v

清空已有规则(谨慎):

sudo iptables -F
sudo iptables -X

三、配置基础防火墙规则(示例)

1️⃣ 允许本地回环

sudo iptables -A INPUT -i lo -j ACCEPT

2️⃣ 允许已建立连接

sudo iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

3️⃣ 允许 SSH(非常重要)

sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT

4️⃣ 允许 HTTP / HTTPS

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

5️⃣ 设置默认策略(最后做)

sudo iptables -P INPUT DROP
sudo iptables -P FORWARD DROP
sudo iptables -P OUTPUT ACCEPT

四、保存 iptables 规则

方法一(推荐):使用 iptables-persistent

sudo apt install iptables-persistent
sudo netfilter-persistent save

规则会保存在:

/etc/iptables/rules.v4

开机自动加载 ✅


方法二:手动保存(不推荐长期使用)

sudo iptables-save > /etc/iptables.rules

恢复:

sudo iptables-restore < /etc/iptables.rules

五、开机自动加载(若无 persistent)

编辑:

sudo nano /etc/rc.local

添加:

iptables-restore < /etc/iptables.rules

并确保可执行:

chmod +x /etc/rc.local

六、常用管理命令

# 删除某条规则(按编号)
sudo iptables -L --line-numbers
sudo iptables -D INPUT 2

# 开放端口示例
sudo iptables -A INPUT -p tcp --dport 3306 -j ACCEPT

# 限制 IP 访问
sudo iptables -A INPUT -s 192.168.1.100 -j DROP

七、建议(生产环境)

  • ✅ 先放行 SSH,再改默认 DROP
  • ✅ 使用 iptables-persistent
  • ✅ 或考虑 ufw(更简单)
sudo ufw enable
sudo ufw allow 22

如果你有具体场景(如:服务器、Docker、NAT、端口转发),我可以给你更精准的配置示例。

0 踩