Ami*_*mit 6 google-compute-engine google-cloud-platform
我在GCP计算引擎中的VM上运行了IOTA IRI实例.该实例使用端口14265进行通信,并通过执行类似curl http://localhost:14265响应的操作在本地进行检查.
我想打开这个端口到vm之外,所以我设置了一个静态IP和一个防火墙规则,允许tcp:14265; udp:14265端口没有响应.
但没有运气.没有端口打开,除了22为ssh(在端口扫描仪中查看)
我知道它感觉像是如何在Google Compute Engine中打开特定端口(例如9090),但我确实尝试了这些答案,但他们并没有为我解决.
编辑:
运行这两个命令我被要求在答案中运行:
D:\Downloads> gcloud compute networks list
NAME MODE IPV4_RANGE GATEWAY_IPV4
default auto
D:\Downloads>gcloud compute instances describe instance-1 --zone europe-west1-b
canIpForward: false
cpuPlatform: Intel Sandy Bridge
creationTimestamp: '2017-08-22T09:33:12.240-07:00'
description: ''
disks:
- autoDelete: true
boot: true
deviceName: instance-1
index: 0
interface: SCSI
kind: compute#attachedDisk
licenses:
- https://www.googleapis.com/compute/v1/projects/ubuntu-os-cloud/global/licenses/ubuntu-1604-xenial
mode: READ_WRITE
source: https://www.googleapis.com/compute/v1/projects/iota-177616/zones/europe-west1-b/disks/instance-1
type: PERSISTENT
id: '8895209582493819432'
kind: compute#instance
labelFingerprint: 42WmSpB8rSM=
machineType: https://www.googleapis.com/compute/v1/projects/iota-177616/zones/europe-west1-b/machineTypes/f1-micro
metadata:
fingerprint: -pkE3KaIzLU=
kind: compute#metadata
name: instance-1
networkInterfaces:
- accessConfigs:
- kind: compute#accessConfig
name: External NAT
natIP: 35.187.9.204
type: ONE_TO_ONE_NAT
kind: compute#networkInterface
name: nic0
network: https://www.googleapis.com/compute/v1/projects/iota-177616/global/networks/default
networkIP: 10.132.0.2
subnetwork: https://www.googleapis.com/compute/v1/projects/iota-177616/regions/europe-west1/subnetworks/default
scheduling:
automaticRestart: true
onHostMaintenance: MIGRATE
preemptible: false
selfLink: https://www.googleapis.com/compute/v1/projects/iota-177616/zones/europe-west1-b/instances/instance-1
serviceAccounts:
- email: 59105716861-compute@developer.gserviceaccount.com
scopes:
- https://www.googleapis.com/auth/devstorage.read_only
- https://www.googleapis.com/auth/logging.write
- https://www.googleapis.com/auth/monitoring.write
- https://www.googleapis.com/auth/servicecontrol
- https://www.googleapis.com/auth/service.management.readonly
- https://www.googleapis.com/auth/trace.append
startRestricted: false
status: RUNNING
tags:
fingerprint: 6smc4R4d39I=
items:
- http-server
- https-server
zone: https://www.googleapis.com/compute/v1/projects/iota-177616/zones/europe-west1-b
Run Code Online (Sandbox Code Playgroud)
如果没有一些诊断,很难给出准确的答案。
可能是为网络创建规则,而您的实例位于不同的网络中。
因此,首先,检查项目中可用的网络:
gcloud compute networks list
Run Code Online (Sandbox Code Playgroud)
其次,检查您的实例所在的网络:
gcloud compute instances describe [Instance Name] --zone [Zone]
Run Code Online (Sandbox Code Playgroud)
检查应用于您的实例使用的网络的防火墙规则:
gcloud compute firewall-rules list
Run Code Online (Sandbox Code Playgroud)
还要检查目标标签是否合适。
正如您所看到的,没有应用于虚拟机的标签,尽管如果您将其定位到所有虚拟机,则规则应该适用,这是一个很好的做法。
编辑您的虚拟机并添加标签(例如 frontserver)
gcloud compute instances add-tags [INSTANCE NAME] --zone [ZONE] --tags frontserver
现在创建防火墙规则并将其应用到创建的标记
gcloud beta compute firewall-rules create [NAME_OF_THE_RULE] --direction=INGRESS --priority=1000 --network=default --allow=all --source-ranges=0.0.0.0/0 --target-tags=frontserver
检查它是否有效,您可以运行更新以将其限制为所需的端口和协议以及您的源 IP
gcloud beta compute firewall-rules update [NAME_OF_THE_RULE] --direction=INGRESS --priority=1000 --network=default --allow=tcp:--source-ranges=[your_source_IP] --target-tags=frontserver
Run Code Online (Sandbox Code Playgroud)
希望这会有所帮助,可以在此处找到更多信息和示例
| 归档时间: |
|
| 查看次数: |
3529 次 |
| 最近记录: |