我正在尝试使用密码模式通过 sftp 传输文件,但低于
文件的消息内容put-script
open sftp://user:password@host
get /tmp/testftp.txt
exit
输出:
$ lftp -f put-script
/tmp/testftp.txt' at 0 [Delaying before reconnect: 29]
请帮忙
答案1
那个脚本可能使其工作(但手册页并未暗示它将以这种方式接受用户和密码)。
对我有用的是像这样提取用户/密码:
lftp -u user,password -e "command"
但我正在使用那使用私钥,通过在命令开头设置选项来使用给定的我的密钥文件(可以在脚本中使用哪个):
set ftp:ssl-allow yes
set ssl:key-file mykeyfile
set ftp:ssl-force true;
因为私钥通常更可取。对于这种情况,lftp
忽略命令上给定的密码(但必须给出它,以安抚其命令解析器)。
答案2
我已在 sshd 配置中将 requiredpasswordauthentication 的值更改为“是”,然后重新启动服务。现在我可以通过密码进行 sftp 了。