cur*_*cab 4 ssh powershell sftp psftp
尝试使用以下命令从 PowerShell 连接到 SFTP 服务器时,我收到以下消息psftp:
错误:
psftp.exe :服务器的主机密钥未缓存在注册表中。您无法保证服务器就是您认为的计算机。
服务器的rsa2密钥指纹为:ssh-rsa 2048 41289438190410491
连接被放弃。
PowerShell 脚本:
$Username = "Username"
$Password = "Password"
psftp.exe sftpserver -l $Username -pw $Password -batch -bc -b C:\batch\download.bat
Run Code Online (Sandbox Code Playgroud)
(psftp.exe 存储在 c:\windows\system32 中)
我之前已经通过 PuTTY 和 WinSCP 从该服务器 SSH 到该服务器,没有出现任何问题。但是,通过 PowerShell 运行时它不会连接。
该消息不是错误。
每个SSH/SFTP客户端都需要验证服务器的主机密钥。
甚至 PuTTY 和 WinSCP 也要求您在第一次连接到服务器时确认主机密钥。
尽管 PuTTY 和 psftp 共享主机密钥缓存。您确定您在同一台计算机上使用相同的本地 Windows 帐户使用 PuTTY 吗?
无论如何,要么:
-batch。检查主机密钥并确认您是否信任它。psftp 将缓存主机密钥并从现在开始工作。-hostkey带有可信主机密钥指纹的开关添加到psftpPowerShell 脚本中的命令中。另请参阅对 psftp 主机密钥提示响应 y(es)(尽管 @vmitchell85 的最高得分答案是错误的,但请参阅@GerriePretorius 的答案)。
| 归档时间: |
|
| 查看次数: |
14981 次 |
| 最近记录: |