如何修复此错误,
no matching host key type found. Their offer: ssh-dss
在安装了 Ubuntu 18.04 的虚拟机上执行 lftp 时。
我尝试过添加
Host *
PubkeyAcceptedKeyTypes=+ssh-dss
到我的
~/.ssh/config
文件,但我仍然看到错误。我试图避免编辑我的 /etc/ssh/config
文件,因为我无法重新启动我的 ssh 服务器。是否有一个选项可以在运行时通过 lftp 传递?
通过将 PubkeyAcceptedKeyTypes 添加到我的 .ssh/config 来修复
HostKeyAlgorithms ssh-rsa
PubkeyAcceptedKeyTypes ssh-rsa
我发现了一个 hack,我利用了 lftp 命令中的一些 ssh 选项。
lftp -p 22 -u <username>,<password> sftp://<domain> -e 'set sftp:connect-program "ssh -a -x -oHostKeyAlgorithms=+ssh-dss"'
对我来说,将
PubkeyAcceptedAlgorithms
和 HostKeyAlgorithms
设置为 +ssh-rsa
有效
lftp \
-p 22 \
-u "${USR}","${PW}" "sftp://${URL}" \
-e "set sftp:connect-program 'ssh -a -x -o PubkeyAcceptedAlgorithms=+ssh-rsa -o HostKeyAlgorithms=+ssh-rsa'; mirror --continue --parallel=10 ${REMOTE_FOLDER} ${OUTPUT_FOLDER}; exit"