0xC*_*22L 7 ssh openssh dropbear
标题基本上说明了一切。但请注意:主机密钥,而不是登录密钥。
如果它们开箱即用不兼容,有没有办法在它们之间进行转换 - 在这种情况下,步骤是什么?
基本原理:如果引导失败,能够在 initrd 的范围内启动一个 dropbear 实例会很好,但可以通过合并来自通常安装在主机上的 OpenSSH 的主机密钥(通过 initramfs-tools 挂钩)来实现.
在误解我指的是主机密钥而不是登录密钥之后,我决定自己深入研究一下。重点是确定格式是否兼容,而不是它们是否不同(我知道它们是不同的)。
尝试在已经有 OpenSSH 的系统上安装 dropbear 当然失败了,但这不是练习的重点。在安装期间(和失败之前),输出说:
Converting existing OpenSSH RSA host key to Dropbear format.
Run Code Online (Sandbox Code Playgroud)
因此,子文件夹中的快速apt-get source dropbear和grep-ingdebian产生了:
dropbear.postinst: echo "Converting existing OpenSSH RSA host key to Dropbear format."
Run Code Online (Sandbox Code Playgroud)
有希望。dropbear.postinst脚本中的相关行如下:
echo "Converting existing OpenSSH RSA host key to Dropbear format."
/usr/lib/dropbear/dropbearconvert openssh dropbear \
/etc/ssh/ssh_host_rsa_key /etc/dropbear/dropbear_rsa_host_key
Run Code Online (Sandbox Code Playgroud)
显然dropbear附带了一个名为 的工具dropbearconvert,该工具在.c源中有一个源文件并附带一个man页面:dropbearconvert(1)。因为我无法想出联机版本的手册页,这里是要点:
SYNOPSIS
dropbearconvert input_type output_type input_file output_file
[...]
OPTIONS
input type
Either dropbear or openssh
output type
Either dropbear or openssh
input file
An existing Dropbear or OpenSSH private key file
output file
The path to write the converted private key file
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12398 次 |
| 最近记录: |