甲骨文云的三种防火墙机制

甲骨文云的三种防火墙机制

甲骨文的机器有三层防火墙,哪一层没放行都连不上,刚接触的时候被坑过好几次。

1. 安全列表(Security List)

Oracle 云控制台里的规则,相当于云平台层面的防火墙

路径:控制台 → 网络 → 虚拟云网络 → 子网 → 安全列表

默认只开放了 22 端口,想开别的得手动加入站规则(Ingress Rule)。比如要开放 80 端口:

  • 源 CIDR:0.0.0.0/0
  • 协议:TCP
  • 目标端口:80

加完之后保存,立竿见影。这层不放开,后面两层折腾再多也没用。

2. 服务器内置防火墙

系统自带的防火墙,不同的系统命令不一样。

CentOS / Rocky Linux 用 firewalld:

1
2
3
4
5
6
# 查看当前规则
firewall-cmd --list-all

# 开放端口
firewall-cmd --add-port=80/tcp --permanent
firewall-cmd --reload

Ubuntu / Debian 用 ufw,默认一般是关闭的:

1
2
3
4
5
# 查看状态
ufw status

# 开启并放行端口
ufw allow 80/tcp

开了云平台的安全列表还不通,八成是这层忘了配。

3. 镜像包的 iptables

有些系统镜像自带 iptables 规则,比如用某些一键脚本或者别人打包好的镜像,里面可能预置了 iptables 规则。重启后 iptables 规则会重置,一劳永逸的方法是用 iptables-persistent 保存。

1
2
3
4
5
6
7
8
9
10
11
12
# 查看当前规则
iptables -L -n

# 放行端口
iptables -I INPUT -p tcp --dport 80 -j ACCEPT

# 清空所有规则
sudo iptables -F

# 保存规则(Debian/Ubuntu)
apt install iptables-persistent -y
netfilter-persistent save

小结

三层防火墙的作用范围从外到内:

安全列表firewalld/ufwiptables

连不上服务的时候,从外向内地检查,基本能定位到问题。