OpenSSHをWindows Server(2012 R2標準)にインストールしようとしていますが、この場所の指示に従っています: https://www.server-world.info/en/note?os=Windows_Server_2012&p= openssh
私は管理者としてPowershellを実行しましたが、コマンド.\ssh-keygen.exe -A
(手順のステップ7)。これを実行すると、次のエラーが返されます。
RSAは__PROGRAMDATA __ \\ ssh/ssh_Host_rsa_key.9uX3wf3apvに公開鍵を保存できませんでした:ディレクトリのそのようなファイルはありません」
同じエラーがDSA、ECDSA、およびED25519にも表示されます。
誰が私がここで間違っているのか教えてもらえれば幸いです。ウェブを検索しましたが、これに関する他の参照は見つかりませんでした。
私は同じエラーを受け取りましたが、SSHと呼ばれるプログラムデータの下にフォルダを手動で追加してからコマンドを再度実行すると、動作しているように見えました
__PROGRAMDATA__
は環境変数PROGRAMDATA
を参照します(おそらくC:\ProgramData
に設定されます)。
通常、cmd
コマンドプロンプトを開いて入力するのが最も簡単です。
mkdir %PROGRAMDATA%\ssh
またはpowershell
mkdir $env:ProgramData\ssh
その後、再実行します
.\ssh-keygen.exe -A
PowerShellがProgramData変数を台無しにするので、cmdプロンプトからこれを行う必要があります。
これを行う
C:\ Program Files\OpenSSH-Win64> powershell。\ install-sshd.ps1 -A
コマンドプロンプトから、あなたはおそらく行ってもいいでしょう。
必要に応じて、管理者として実行できます。これにより、ssh-keygen.exeにファイルを作成するために必要なすべての権限が付与されます。
runas.exe /noprofile /user:Administrator .\ssh-keygen.exe
これにより、C:\ Users\Administrator.sshにキーがインストールされます
現在のユーザーまたは別のユーザーがキーにアクセスできるようにするには、Powershellを右クリックして[Run as Different User
。
キーを生成するときに、昇格したPowershellになりたくない
OpenSSHは現在のユーザーから実行され、C:\ Users\UserName.sshを確認します。 LinuxでのSSHの動作に似ています。