之前發過一篇在Windows Server上啟用SSH服務器的文章。最近正好有這個需求,需要使用密鑰免密登錄服務器,試了一下,發現之前的方法不行了。需要再修正一些文件權限。
需要使用Repair-AuthorizedKeyPermission 這個命令修復一下服務器上的authorized_keys這個文件的權限。Repair-AuthorizedKeyPermission在OpenSSHUtils組件中。可以用命令Install-Module -Name OpenSSHUtils -RequiredVersion 1.0.0.1安裝,或者從Powershell Gallery里下載到。
https://www.powershellgallery.com/packages/OpenSSHUtils/1.0.0.1
從這里下載nupkg文件,解壓后放到C:\Windows\system32\WindowsPowerShell\v1.0\Modules\目錄下。直接把解壓后的opensshutils.1.0.0.1.nupkg文件夾整個復制過去就好。然后用Get-Module -ListAvailable檢查一下OpenSSHUtils是不是已經列出來可用了。
然后使用以下命令修復權限。www.cnblogs.com/qishine/p/14832251.html
Repair-AuthorizedKeyPermission C:\users\joe\.ssh\authorized_keys
icacls authorized_keys /remove "NT SERVICE\sshd"
之后就可以使用密鑰遠程登錄了。