无法连接到Google计算引擎VM

时间:2020-07-06 03:27:50

标签: google-compute-engine

我的Google Compute Engine虚拟机有问题。

创建虚拟机后,SSH连接和FileZilla连接一开始就很好。

但是,随着时间的流逝,连接到SSH循环的屏幕和FileZilla会引发此错误,并且连接失败:

Status: Server refused our key
Error: FATAL ERROR: No supported authentication methods available (server sent: publickey)

(我使用SFTP连接到服务器,并使用puttygen生成密钥文件。)

这些是我尝试过的。

  • 删除并重新创建实例

  • 创建另一个项目并在那里创建新实例

  • 用新文件替换密钥文件

我没有输入错误的服务器地址或添加错误的密钥文件;一切都应该正常工作。

并且在防火墙设置中,所有端口转发均已正常配置。

为什么会这样?

(VM与debian-10-buster-v20200618一起使用/用于游戏服务器

我曾经通过聊天支持联系过Google,但现在不再支持。 因为我正在免费试用。

尽管我在虚拟机上使用了enable-oslogin值,并且SSH成功​​连接,但FileZilla仍然无法正常工作。)

我做了什么并测试了:

首先,我创建了一个用于游戏服务器目的的实例。当我创建一个实例并连接到SSH时,我使用sudo su并在/ home下创建了一个目录。只是使它看起来更容易。

我安装屏幕,java,语言环境和其他内容。

但是几分钟后Filezilla和ssh连接突然停止工作,而没有通知我。

没有这些东西,我什么也没做。

我重新安装了filezilla,还从puttygen创建了一个新密钥,并将密钥文件设置为filezilla和vm;不起作用。

我什至创建了一个新项目并创建了实例;发生同样的事情。

我清理了元数据和SSH密钥。它不起作用。

我什至与Google联络并通过电子邮件进行对话。 但是由于我没有太多时间,所以只能单独花费积分。所以我在这里写了一篇文章。

================================================ ==============================

The Firewall Settings. Yes I have done with it And I'm tried adding 22 port and going to add 21 port (Google asked me to try 21 port.)

我就像说我正在使用SFTP协议连接我的VM来传输游戏服务器文件一样。

如果您询问有关SSH连接的信息,那么我在VM实例列表中使用的是默认SSH按钮,没有什么特别的要告诉我的...

2 个答案:

答案 0 :(得分:1)

问题解决了。

配置日期和时间+语言环境是我的错。

更改为Linux Debian 9 Stretch,并使用dpkg-reconfigure对其进行配置。没问题。

(我使用cp -p / usr / share / zoneinfo / Asia / Seoul / etc / localtime更改时区。(我住在韩国)并通过编辑/ etc / default / locale更改了语言环境设置。)

我如何更改

原始:

#  File generated by update-locale
LANG="C.UTF-8"

我的版本:

#  File generated by update-locale
LANG="ko_KR.UTF-8"
LANGUAGE="ko_kr:ko"

完成这些设置后,我遇到了我之前解释的问题。 (请查看上面的文章。)

但是我降级到Debian 9(strech)(出于某些原因使用jdk) 并使用dpkg-reconfigure tzdatadpkg-reconfigure locales来更改这些设置。

之后,我对时区和语言环境没有任何疑问。

(谢谢W_B试图帮助我。)

答案 1 :(得分:0)

我转载了您的案例-创建了一个启用了oslogin的新VM(debian 10)。 然后,我从浏览器登录,在我的主目录(.ssh)中创建了mkdir .ssh目录。然后在内部创建一个authorized_keys文件,并将我的公钥从我的个人计算机(这是Mac,没有安装gcloudtouch authorized_keys)粘贴到该文件中( id_rsa.pub)和nano authorized_keys。然后保存(ctrl + o)并退出(ctrl + x)。

我的ssh密钥(在我的个人计算机上)是通过使用“ ssh-keygen”命令创建的,不带任何参数。

要检查密钥是否在位并可以正常工作,请尝试从另一个实例(ssh myuser@myvm.ip.something)进行ssh操作,然后yoo会出现shell提示。

之后,我能够在FileZilla(SFTP协议,并选择login type' to 密钥文件”中创建一个新连接,然后选择我的私钥(存储在.ssh/id_rsa中)。

我的连接处于活动状态超过2个小时,可以断开连接并重新连接并双向传输文件。

请按照我的指示进行操作,这应该可行。根据您的描述,FileZilla配置就是这种情况。

此外-如果由于某些原因您仍然无法连接create a firewall rule来允许端口22上的流量。