windows 在SFTP批处理文件中包含密码

wdebmtf2  于 2023-03-31  发布在  Windows
关注(0)|答案(1)|浏览(244)

我需要使用内置的Windows sftp功能和.bat文件连接到我们的SFTP服务器,该文件会自动输入登录数据,用户和密码。我已经尝试了所有方法,只是无法找出正确的方法。无论我尝试什么,它总是要求我手动输入密码。我想避免这种情况。一旦运行,它应该自己完成整个SFTP过程。
我尝试的一件事是这样的:

sftp sftp://USERXYZ:PASSWORDXYZ@myftp.COMPANY.com

但这仍然要求我手动输入密码,更糟糕的是,它认为用户是USERXYZ:PASSWORDXYZ而不仅仅是USERXYZ
下面是我的带有虚拟值的脚本:

sftp sftp://USER@myftp.COMPANY.com
lcd C:\Users\PATHXYZ
cd PATHXYZ
put TESTFILE.txt
bye

希望你能帮到我,先谢了。

whlutmcx

whlutmcx1#

OpenSSH sftp出于安全原因没有提供密码的选项。它甚至不接受sftp:// URL。
有很多用于Linux版本的变通方法和黑客:
How to run the sftp command with a password from Bash script?
我不确定是否有一个常用的解决方法/破解Windows版本.
虽然你不应该使用一个变通方案/破解。最好使用公钥认证而不是密码认证。
参见How to properly configure Win32-OpenSSH authentication
或者使用另一个SFTP客户端,它提供了一个提供密码的选项。例如 (my)WinSCP client接受您尝试使用的sftp:// URL。有一个转换OpenSSH sftp script to WinSCP的指南。

相关问题