0

我有一个 OpenWRT 路由器,我必须从它自动创建到远程主机的 SSH 连接。但是远程主机不支持公钥认证,所以我想我可以创建自己的askpass脚本并使用SSH_ASKPASS环境变量指定它。不幸的是,OpenWRT 中包含的 dropbear ssh 客户端不尊重/读取此变量。

有没有办法askpass为 dropbear ssh 客户端指定程序/脚本?

[编辑:]我刚刚意识到,上次我做了整个事情,我刚刚安装了openssh-client,这次它不起作用,因为路由器只剩下332 kb :-(

4

1 回答 1

2

通常 Dropbear SSH 客户端 (dbclient) 允许您通过环境变量指定密码。 https://www.dd-wrt.com/wiki/index.php/SSH#Automatic_Login_.28for_shell_scripts.29

DROPBEAR_PASSWORD='password' ssh -y username@remote.host

但是这个默认选项于 2015 年 4 月 18 日在 openwrt/LEDE/dd-wrt/ 中被禁用

https://github.com/mirror/dd-wrt/commit/067ea1a1efe5621631dde6fdaf2f8ee95b02048e#diff-851da486b641491d761c0295dbe45035

https://github.com/lede-project/source/commit/af4d04ed36bd313fe817f38c2baf143059fb93d9#diff-9a10152ace5c9c746def208fa7f28dca

我从补丁中删除了 DROPBEAR_PASSWORD 更改,并为我的路由器重建了 LEDE 的 dropbear 包。如果您的路由器上剩余空间很小, opkg 可能无法安装重建的软件包。然后你必须重建整个固件。

于 2017-11-24T08:50:11.760 回答