重新启动后无法通过SSH连接到Google Cloud Compute Engine

时间:2017-01-08 17:02:45

标签: ssh centos google-compute-engine google-cloud-console

我刚刚重启了我的谷歌云计算引擎实例,现在我无法通过SSH登录它。在重新启动之前,它工作正常。我试着完全停止然后重新开始。它上面有一个网络服务器,如果我尝试访问任何API方法,我会超时。

如果我尝试从控制台网站登录: enter image description here

如果我尝试从终端登录:

RewriteEngine On

RewriteCond %{HTTP_HOST} !^www\. [NC,OR]
RewriteCond %{HTTPS} off
RewriteCond %{HTTP_HOST} ^(?:www\.)?(.+)$ [NC]
RewriteRule ^ https://www.%1%{REQUEST_URI} [R=301,L,NE]

RewriteCond %{HTTP_HOST} ^(www\.)?mysite\.cz$ [NC]
RewriteRule ^((?!www/).*)$ www/$1 [L,NC]

有什么问题?

2 个答案:

答案 0 :(得分:1)

正如错误消息所示,首先要做的是检查防火墙规则。必须有一个规则允许从任何ip(0.0.0.0/0)到端口22的连接。我假设你的实例的ssh之前正在工作,所以它可以是两件事。

  1. 规则正在应用于某个网络,并且VM的网络配置在关闭时已更改。

  2. 规则未应用于VM,可能是在子网中,关闭了通信。

  3. 简化解决方案:

    A-为您的VM添加网络标记。 (例如ssh-conn) https://cloud.google.com/compute/docs/vpc/add-remove-network-tags

    B-创建规则以允许来自任何IP的连接并将其应用于先前创建的网络标记。 https://cloud.google.com/compute/docs/vpc/using-firewalls

答案 1 :(得分:0)

我遇到了同样的问题,并尝试了很多方法,但没有一个起作用。

但是下面的方法对我有用:

  1. 通过串行控制台连接到实例。
  2. vi /etc/ssh/sshd_config,删除Port 22之前的哈希标签,如下所示:
Port 22
#AddressFamily any
#ListenAddress 0.0.0.0
#ListenAddress ::

希望它也对您有用。