温馨提示×

ubuntu防火墙怎样放行

小樊
45
2026-10-16 08:47:32
栏目: 智能运维

在 Ubuntu 中,常用的防火墙工具是 UFW(Uncomplicated Firewall),也有部分场景会用 iptables / nftables。下面分别说明。


一、使用 UFW(推荐,最简单)

1. 查看防火墙状态

sudo ufw status

如果显示 inactive,说明防火墙未启用。

2. 启用防火墙

sudo ufw enable

⚠️ 远程服务器启用前,务必先放行 SSH(22端口),否则可能断连。

3. 放行端口(最常用)

# 放行 TCP 80 端口
sudo ufw allow 80/tcp

# 放行 UDP 53 端口
sudo ufw allow 53/udp

# 放行某端口(TCP+UDP)
sudo ufw allow 8080

4. 放行服务名

sudo ufw allow ssh
sudo ufw allow http
sudo ufw allow https

5. 放行指定 IP

# 允许某 IP 访问所有端口
sudo ufw allow from 192.168.1.100

# 允许某 IP 访问指定端口
sudo ufw allow from 192.168.1.100 to any port 3306

6. 删除规则

sudo ufw delete allow 80/tcp

二、使用 iptables(较底层)

放行 TCP 80 端口

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

保存规则(Ubuntu 不同版本)

# Ubuntu 16.04 及以前
sudo iptables-save > /etc/iptables.rules

# Ubuntu 18.04+(netfilter-persistent)
sudo apt install iptables-persistent
sudo netfilter-persistent save

三、使用 nftables(新版 Ubuntu 推荐)

sudo nft add rule inet filter input tcp dport 80 accept

四、常见场景示例

✅ 放行 SSH(非常重要)

sudo ufw allow 22

✅ Web 服务器

sudo ufw allow 80
sudo ufw allow 443

✅ Docker 注意

UFW 不会自动管理 Docker 端口,Docker 会直接写 iptables,必要时需额外配置。


如果你能告诉我:

  • Ubuntu 版本
  • 是否远程服务器
  • 要放行什么服务/端口

我可以给你精确命令。

0 踩