管理者権限のないPCを使用していて、SSHサーバーをセットアップする必要があります。 mobaSSH と freeSSHd も試しましたが、どちらも管理者権限が必要です。その後、私は Win32-OpenSSH を見つけました。これは最終的には機能しているようです。正直に言うと、このようなサービスに管理者特権が必要な理由は実際にはわかりません。問題なく戻って問題なくポート21でリッスンしているFTPサーバー。質問に戻ります。
Win32-OpenSSH に含まれるssh-keygen.exe -A
を実行しました Win32-OpenSSH ディレクトリに次のファイルを作成しました:
ssh_Host_dsa_key
ssh_Host_dsa_key.pub
ssh_Host_ecdsa_key
ssh_Host_ecdsa_key.pub
ssh_Host_ed25519_key
ssh_Host_ed25519_key.pub
ssh_Host_rsa_key
ssh_Host_rsa_key.pub
それからsshd.exe
を始めました。私の最初の試みは、PuTTY.exe
を使用してUSERNAME@localhost
に接続することでした。 Windowsログインに使用しているのと同じ資格情報を使用しましたが、機能しませんでした。
Using username "USERNAME".
USERNAME@localhost's password:
Access denied
USERNAME@localhost's password:
2番目の試みは、puttygen.exe
を使用してssh_Host_rsa_key
を*.ppk
ファイルに変換し、このファイルをpageant.exe
でロードしてから、最初の試行と同じ手順を使用しました。この後、ご覧のようにsshd.exe
メッセージが変わりましたが、ログインはまだ機能しませんでした:
Using username "USERNAME".
Authenticating with public key "imported-openssh-key" from agent
Server refused public-key signature despite accepting key!
USERNAME@localhost's password:
Access denied
USERNAME@localhost's password:
サーバーが正しくインストールされており、問題は認証にあると思います。パスワードまたはキーを使用してログインできるように Win32-OpenSSH を正しく設定する方法は?
パスワード認証の場合は、USERNAME
のみを使用します。 USERNAME@localhost
は機能しません。
公開鍵認証を機能させるには:
.ssh
フォルダとauthorized_keys
Windowsアカウントプロファイルフォルダー(通常はC:\Users\username\.ssh
)。両方の詳細については、私のガイド OpenSSHを使用してWindowsにSFTP/SSHサーバーをインストールする を参照してください。