在服务器 Windows 上连接 ssh 密钥失败

在服务器 Windows 上连接 ssh 密钥失败

我想使用 SSH 密钥连接到 Windows 服务器,如果我通过 SSH 密码连接,则一切正常,但如果我通过 SSH 密钥连接,则失败

  • 我是该服务器的用户,我的公钥是%UserProfile%/.ssh/authorized_keys
  • sshd_config
    # Logging
    LogLevel DEBUG3
    
    # Authentication:
    PubkeyAuthentication yes
    AuthorizedKeysFile  ~/.ssh/authorized_keys
    
    # override default of no subsystems
    Subsystem   sftp    sftp-server.exe
    

在服务器日志中,我有:

Failed publickey for myuser from myLocalIP port 51845 ssh2: ED25519 SHA256:<mypubssh>

在客户端日志中,我有:

$ ssh -o PreferredAuthentications=publickey -i ~/.ssh/id_ed25519 -l myUser -p 222 hostserver -vvv

  myuser@hostserver: Permission denied (publickey,password,keyboard-interactive).

答案1

快速解决方法,可以用 521 密钥覆盖现有密钥文件,如下所示:

C:\Windows\System32\OpenSSH\ssh-keygen.exe -b 521 -o -t ecdsa -f C:\ProgramData\ssh\ssh_host_ecdsa_key

然后从 power shell 执行 Restart-Service sshd

相关内容