首页 > 解决方案 > 从单个 Google Compute Engine 中删除默认防火墙规则

问题描述

定义了 4 个“默认”防火墙规则

我想default-allow-ssh为特定主机禁用特定主机。

default-allow-ssh出于某种原因,我看不到标签gcloud compute instances describe $VM

tags:
  fingerprint: ioTF8nBLmIk=
  items:
  - allow-tcp-443
  - allow-tcp-80

我检查了规则定义:

gcloud compute firewall-rules describe default-allow-ssh

allowed:
- IPProtocol: tcp
  ports:
  - '22'
description: Allow SSH from anywhere
direction: INGRESS
disabled: false
kind: compute#firewall
name: default-allow-ssh
network: https://www.googleapis.com/compute/v1/projects/.../global/networks/default
priority: 65534
selfLink: https://www.googleapis.com/compute/v1/projects/.../global/firewalls/default-allow-ssh
sourceRanges:
- 0.0.0.0/0

我认为没有targetTagssourceTags在定义中。这是否意味着该规则适用于整个项目并且不能按主机禁用?

标签: google-cloud-platformgoogle-compute-enginefirewall

解决方案


我在定义中没有看到 targetTags 或 sourceTags。这是否意味着该规则适用于整个项目并且不能按主机禁用?

是的,您可以在此处找到有关默认防火墙规则的更多信息

最佳做法是通过使用标签或源 ips 来降低此规则的允许性,但是您也可以制定另一条规则,使用标签拒绝到特定 vm 的 ssh 流量,可能只允许来自堡垒主机的 ssh。


推荐阅读