【发布时间】:2019-11-02 11:03:26
【问题描述】:
在 Windows 10 上运行 Ubuntu 18.04
目标 - 连接到指定的 SFTP 服务器,无需手动输入任何密码。
问题 - 我正在尝试连接到 sftp 服务器以访问文件。但是,一旦连接,我必须手动输入密码。由于我使用多个用户凭据登录到服务器,这使得从服务器下载文件非常耗时,因为我每次都必须登录。
我尝试了以下但没有成功。
curl sftp://sftp.host.com:/csv -u user:pwrd - 发现 curl 不支持 SFTP
sftp user@sftp.host.com:/csv - 我连接了这个但是我每次都必须手动输入密码。
ssh sftp.host.com:/csv - 无法获取主机名以重新识别和连接。还在这里尝试了 user@sftp.host.com:/csv 。我阅读了有关如何使用 shh 密钥进行身份验证以避免密码的信息,但是如果我必须提供多个用户登录(100+),那么首先创建和放置这些密钥是否会花费大量时间地点。
对于sftp 版本,我想也许这可以做到echo pwd | user@sftp.host.com:/csv,如果我使用sleep 命令我可以延迟输入,所以它会在之后输入密码。也试过sftp user@sftp.host.com:/csv | { print pwrd}。然而,根据命令行的工作方式,两者似乎都不可能。
有人可以确认如果curl 实际上是正确的方法,并且有一个技巧可以让 sftp 得到支持。也许sftp 是要走的路,我只是在输入错误的密码。还是ssh 我应该做什么,并且有一种简单的方法来生成和放置多个密钥(尽管我仍然需要进行初始登录,所以这似乎只是我的问题之后的一步)?或者还有什么我不知道的?
【问题讨论】:
标签: curl ssh command-line command-line-interface sftp