验证Tectia和WinSCP SFTP客户端中的SSH主机密钥

验证Tectia和WinSCP SFTP客户端中的SSH主机密钥,ssh,sftp,winscp,ssh2-sftp,Ssh,Sftp,Winscp,Ssh2 Sftp,我有两个脚本可以将文件上载到SFTP服务器: sftp2 --identity-key-file=D:\test_ssh2 -B d:\test.txt testUser@xxx.xxx.xxx.xxx 请帮助解释: 这两个脚本之间有什么区别 为什么第一个脚本不需要任何主机密钥,而第二个脚本需要它 我可以在不使用任何主机密钥的情况下使用私钥调用SFTP吗 这两个脚本之间有什么区别 第一个是使用Tectiasftp2.execlient的批处理文件。 第二个是WinSCP脚本文件 为什么第一个

我有两个脚本可以将文件上载到SFTP服务器:

sftp2 --identity-key-file=D:\test_ssh2 -B d:\test.txt testUser@xxx.xxx.xxx.xxx
请帮助解释:

  • 这两个脚本之间有什么区别
  • 为什么第一个脚本不需要任何主机密钥,而第二个脚本需要它
  • 我可以在不使用任何主机密钥的情况下使用私钥调用SFTP吗
  • 这两个脚本之间有什么区别

    第一个是使用Tectia
    sftp2.exe
    client的批处理文件。
    第二个是WinSCP脚本文件


    为什么第一个脚本不需要任何主机密钥,而第二个脚本需要它

    大多数SFTP/SSH客户端将在第一次连接时提示您验证主机密钥指纹。如果验证主机密钥,它将被缓存,下次不会得到提示

    Tectia
    sftp2.exe
    和WinSCP没有区别

    如果您的Tectia
    sftp2.exe
    脚本按原样工作,则必须在手动之前验证此客户端中的主机密钥

    而WinSCP脚本包含主机密钥的显式指纹。因此,即使在运行脚本之前没有使用WinSCP手动验证主机密钥,脚本也可以工作。建议使用WinSCP,因为它(不依赖于主机密钥的隐藏缓存)。但是,如果愿意,可以使用WinSCP手动验证主机密钥,与使用Tectia的方法相同


    我可以在不使用任何主机密钥的情况下使用私钥调用SFTP吗

    私钥与主机密钥无关。所以这个问题毫无意义。请参阅上的WinSCP文章以了解

    open sftp://testUser@xxx.xxx.xxx.xxx -privatekey=D:\test.ppk -hostkey="ssh-rsa 1536 xxxxxxxxxxxxxxxxxxxxxxxxxxx"