如何从适用于 Linux 的 Windows 子系统通过 SSH 访问 Azure Ubuntu 16x

如何从适用于 Linux 的 Windows 子系统通过 SSH 访问 Azure Ubuntu 16x

我在 Azure 上创建了一个 Ubuntu 16.x VM,并选择了用户 ID/密码选项进行身份验证。我可以使用 Azure 门户上的浏览器内 CLI 登录到 VM。但是,当我尝试在 Windows 10 计算机上从 Windows Subsystem for Linux (Ubuntu) 进行 ssh 时,我得到

ssh_exchange_identification: Connection closed by remote host

尝试ssh使用-v选项并得到以下结果

ssh -v [email protected]
OpenSSH_7.6p1 Ubuntu-4ubuntu0.3, OpenSSL 1.0.2n  7 Dec 2017
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug1: Connecting to xx.xxx.xx.xxx [xx.xxx.xx.xxx] port 22.
debug1: Connection established.
debug1: identity file /home/userid/.ssh/id_rsa type 0
debug1: key_load_public: No such file or directory
debug1: identity file /home/userid/.ssh/id_rsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/userid/.ssh/id_dsa type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/userid/.ssh/id_dsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/userid/.ssh/id_ecdsa type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/userid/.ssh/id_ecdsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/userid/.ssh/id_ed25519 type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/userid/.ssh/id_ed25519-cert type -1
debug1: Local version string SSH-2.0-OpenSSH_7.6p1 Ubuntu-4ubuntu0.3
ssh_exchange_identification: Connection closed by remote host

是否无法ssh在不使用身份验证的情况下从 Windows 上的 Ubuntu访问ssh

更新:结果是ssh从公司环境内部过滤掉的。我能够成功地ssh在家。

答案1

在 Windows 的 Linux 子系统 (ubuntu) 命令行上,您可以像任何其他 Linux 一样执行 ssh。我一直用它。 (恕我直言,Windows 的 Linux 子系统使 Windows 10 变得更好)所以执行相同的命令,但在上面多放几个 v

ssh -vvv userid@ipaddr

看起来服务器可能只接受带密钥的 ssh。您在使用用户名和密码之前是否登录过该服务器(除了 Azure 控制台)?如果可能,还可以使用 -vv 粘贴 Azure 连接的输出。

一般来说,它会通过 ssh 密钥并查找匹配项(您的确实查找了匹配项),然后当进入下一步时您将收到类似这样的消息。

debug1: Next authentication method: keyboard-interactive
debug1: Authentications that can continue: publickey,password,keyboard-interactive
debug1: Next authentication method: password

我在你的输出中没有看到这一点。我认为这应该用一个 -v 显示,但希望查看详细的详细输出。

相关内容