温馨提示×

ubuntu iptables怎么开放

小樊
56
2026-10-09 20:50:39
栏目: 智能运维

在 Ubuntu 上用 iptables 开放端口(或放行某类流量),常见做法如下。


一、查看当前规则

sudo iptables -L -n -v

或查看 NAT(如做了端口映射):

sudo iptables -t nat -L -n -v

二、开放某个端口(最常用)

1️⃣ 开放 TCP 端口(例如 80)

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

2️⃣ 开放 UDP 端口(例如 53)

sudo iptables -A INPUT -p udp --dport 53 -j ACCEPT

3️⃣ 开放某 IP 访问某端口

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

三、允许已建立的连接(非常重要)

否则你可能把自己“挡在外面”:

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

四、设置默认策略(谨慎)

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

⚠️ 注意:
如果你是远程 SSH 连接,请先放行 22 端口,再设置 DROP,否则会断线。


五、保存 iptables 规则(Ubuntu)

Ubuntu 20.04 / 22.04(无 netfilter-persistent 时)

sudo apt install iptables-persistent
sudo netfilter-persistent save

或手动保存:

sudo iptables-save > /etc/iptables/rules.v4

开机恢复:

sudo iptables-restore < /etc/iptables/rules.v4

六、删除规则(示例)

sudo iptables -D INPUT -p tcp --dport 80 -j ACCEPT

七、Ubuntu 推荐方式(更简单)

Ubuntu 默认可能用 ufw:

sudo ufw allow 80/tcp
sudo ufw enable

如果你能告诉我:

  • Ubuntu 版本
  • 要开放什么端口 / 服务(如 SSH、Web、MySQL)
  • 是否远程服务器

我可以给你可直接复制执行的精确命令。

0 踩