使用密钥和密码自动执行SFTP登录

问题描述:

最近使用双因素身份验证启用了SFTP托管服务器。详情请点击此处link使用密钥和密码自动执行SFTP登录

现在,我们要求使用命令行自动执行此设置。我发现这样做,作为两种不同的选择:

sshpass -p password sftp -oBatchMode=no -oStrictHostKeyChecking=no [email protected] 

sftp -oIdentityFile=/path/to/private/key/file -oBatchMode=no -oStrictHostKeyChecking=no [email protected] 

但现在我需要这两个合并成单一的命令,并用它在我的脚本自动化此SFTP流。

因此,首先我需要在命令行中发送私钥文件,然后在相同的命令行中发送密码。我尝试了几个选项,但没有奏效。

能有多难,是把两条线路一起:

sshpass -p password sftp -oBatchMode=no -oStrictHostKeyChecking=no \ 
    -oIdentityFile=/path/to/private/key/file [email protected] 

ssh本身将采取的两种身份验证方法护理。

+0

我已经试过,这不起作用。 SFTP服务器只是说“验证部分成功”。并不提供sftp提示。任何其他解决方案? – Vino

+0

发布尝试的详细日志(使用'-vvv'切换到'sftp')。 – Jakuje