WinSCP命令行 - 添加已知主机
问题描述:
我有windows批处理脚本,它连接到服务器以获取事务文件。WinSCP命令行 - 添加已知主机
该程序使用Winscp命令行脚本来打开sftp连接并获取所需的文件。
最近提供商要求更新已知主机并在MD5,SHA 256,Bubble Babble选项中提供指纹。我想继续在被动模式下执行程序,而无需任何人工干预提示。
由于我在这方面的知识有限,我知道使用-hostkey添加一个附加参数可以解决问题。但我不是否需要添加任何额外的参数来指定它是MD5还是SHA等。任何帮助表示赞赏。
当前代码:
open sftp://%USERNAME%@%HOSTNAME%
规划更新到
open sftp://%USERNAME%@%HOSTNAME% -hostkey="<key>"
答
你不指定指纹算法。无论如何,WinSCP仅支持主机密钥的MD5指纹。
-hostkey
switch的支持两种格式:
keytype bits fi:ng:er:pr:in:t
或
keytype-fi-ng-er-pr-in-t
例如:
ssh-dss 2048 0b:77:8b:68:f4:45:b1:3c:87:ad:5c:be:3b:c5:72:78
或
ssh-dss-0b-77-8b-68-f4-45-b1-3c-87-ad-5c-be-3b-c5-72-78
谢谢马丁,我会执行这个并让你知道。 –
此外,如果我在WinSCP GUI模式下接受主机密钥/指纹,当我使用命令行连接到同一台服务器上的同一台服务器时,是否还需要传递主机密钥? –
如果您在GUI和脚本之间共享一个配置,如果您已经接受了GUI中的主机密钥,则不必使用'-hostkey'开关(并且**确实验证它匹配来自提供程序的指纹** ) - 但不推荐:https://winscp.net/eng/docs/scripting#configuration –