Ssh

如何在 Azure Windows VM 中啟用 SSH?

  • May 17, 2020

我需要將 Windows 機器用於僅適用於 Windows 的程序。我在 Azure 上設置了一個 Windows 10 虛擬機。在 Azure 門戶的虛擬機下Connection,我看到了 RDP 的詳細資訊,它可以與應用商店中的 Microsoft 遠端桌面應用程序配合使用。

我也想用 SSH 連接。點擊 RDP 旁邊的那個項目,我看到:

Ensure you have read-only access to the private key.
chmod 400 <name>.pem

沒有任何指示下載或上傳該密鑰的位置。

我按照這些說明在 Azure 門戶上打開了埠 22 ,我還按照這些說明的 PowerShell 部分安裝了 OpenSSH Server ,包括啟動服務:

> Set-Service -Name sshd -StartupType 'Automatic'
> Get-NetFirewallRule -Name *ssh*

Name                  : OpenSSH-Server-In-TCP
DisplayName           : OpenSSH SSH Server (sshd)
Description           : Inbound rule for OpenSSH SSH Server (sshd)
DisplayGroup          : OpenSSH Server
Group                 : OpenSSH Server
Enabled               : True

在我的本地機器上,SSH 超時到虛擬機的公共 IP:

$ ssh user@<public-ip>
ssh: connect to host <public-ip> port 22: Operation timed out

我能夠通過 SSH 連接到其他虛擬機,所以我認為我的防火牆不是問題。

如何通過 SSH 連接到 Windows 10 虛擬機?

這似乎只是時間問題,因為設置現在在兩個小時後通過密碼身份驗證工作。

在另一次嘗試中,重新啟動機器也有效。

提示此錯誤是因為您在沒有私鑰的情況下連接到伺服器,這是必需的。查看此站點:https ://docs.microsoft.com/en-us/azure/devops/repos/git/use-ssh-keys-to-authenticate?view=azure-devops&tabs=current-page並嘗試上傳您的生成一對密鑰後的公鑰。

您還可以通過 PowerShell 上的以下命令獲得已建立的 TCP 連接,以確保 ssh 伺服器的一切正常:

Get-NetTCPConnection -State 已建立

引用自:https://serverfault.com/questions/1016653