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サーバーもインストールしました。
> 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仮想マシンに接続するにはどうすればよいですか?
セットアップは2時間後にパスワード認証で機能するようになったため、時間の問題だと思われました。
別の試みでは、マシンの再起動も機能しました。
このエラーは、秘密鍵なしでサーバーに接続するためのプロンプトでした。これは必須です。このサイトを見てください: https://docs.Microsoft.com/en-us/Azure/devops/repos/git/use-ssh-keys-to-authenticate?view=Azure-devops&tabs=current-page とペアのキーを生成した後、公開キーをアップロードしてみてください。
また、確立されたTCP=接続を取得して、sshサーバーのすべてが正常であることを確認するには、PowerShellで次のコマンドを実行します。
Get-NetTCPConnection-確立された状態