无法使用compute ssh访问实例:“错误:[.... putty.exe]退出,返回码为[1]

时间:2019-11-22 21:42:33

标签: google-compute-engine gcloud google-cloud-sdk

这是我的问题: 我想连接到一个gcp实例。当我以管理员身份使用以下命令运行Google Cloud SDK Shell时: gcloud compute ssh my_instance --zone = europe-west1-b--L = 8081:locahost:8081 ..我收到此错误:错误(gcloud.compute.ssh)[.... / putty.exe]退出,返回码为[1]

作为实例,我的实例正在使用元数据enable-oslogin作为TRUE运行。

您知道问题出在哪里吗?

1 个答案:

答案 0 :(得分:0)

在命令中使用--时,您在破折号后传递了SSH标志,而不是gcloud命令标志。为了说明,gcloud compute ssh是ssh(1)命令的瘦包装,它负责身份验证以及将实例名称转换为IP地址。

在这种情况下,根据此SDK reference--等效于--ssh-flag。看来腻子正在输出未传递到命令行(SDK Shell)的错误。实际的错误应该在腻子退出之前在对话框窗口中可见。

我已经在Windows上尝试了该命令,确切的错误是unknown option "L=8081:localhost:8081"。 SSH标志不被接受,因为那里有一个=符号(典型)。

根据linuxcommand.org manual,该标志应采用以下格式:

-L [bind_address:]port:host:hostport

因此,您应该像这样运行命令:

gcloud compute ssh my_instance --zone=europe-west1-b -- -L 8081:locahost:8081

请注意,您可能必须创建一个firewall rule才能允许Ingress进入端口8081上的实例。