首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为dropbear access加密私钥

为dropbear access加密私钥
EN

Unix & Linux用户
提问于 2020-10-04 15:46:08
回答 1查看 935关注 0票数 4

我想使用dropbear作为替代的、最小的ssh服务器和-client。dropbear允许在ssh访问中使用私有公钥,尽管这些钥匙并不是完全相同的openssh,并且必须使用dropbearconvert-command (这很容易实现)。

我遇到的问题是dropbear不支持加密私钥。但是,把未加密的ssh密钥放在我的笔记本电脑上是我想避免的原则上的事情。

因此,我的问题是:有没有人对如何绕过这个问题有什么好的想法,并有一个方法(脚本?)这一点:

  • 解密我用于下拉熊的密钥(例如使用gnupg)并将它们加载到内存中,
  • 将它们传递给dbclient-binary (dropbear-客户机-应用程序),并且
  • 启动ssh连接。

此外,我还想知道ssh-config选项(特别是用于Host的选项)是否有一个替代选项(因此,是否有可能为-config创建一个特定于主机的配置文件,在这里我可以指定IP地址、端口和其他细节)。

EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2020-10-04 17:28:40

看来,dbclient完全愿意从命名管道或FIFO读取私钥。

因此,使用bash的进程替换,您可以编写:

代码语言:javascript
复制
dbclient -i <(cat .ssh/id_dropbear) user@server

因此,如果您有一个GPG加密的.ssh/id_dropbear.gpg,您可以将它写成:

代码语言:javascript
复制
dbclient -i <(gpg --decrypt .ssh/id_dropbear.gpg) user@server

在输入您的解密密码后,dbclient将使用您的GPG加密私钥登录。所以那部分很好用。

这里的主要问题是,如果在此之前已经存储了未加密的.ssh/id_dropbear,则可以通过取证方式恢复它。要从dropbearconvert动态加密密钥,可以应用相同的原则:

代码语言:javascript
复制
$ dropbearconvert openssh dropbear \
    .ssh/id_openssh >(gpg --symmetric --output .ssh/id_dropbear.gpg)
Key is a ssh-rsa key
Wrote key to '/dev/fd/63'

但是它在实践中似乎并不太有用,因为dropbearconvert对OpenSSH的加密私钥也只提供了非常有限的支持。在这个例子中,我必须特别创建一个OpenSSH密钥,dropbearconvert可以理解.

不幸的是,这个技巧似乎根本不适用于dropbearkey命令,该命令出于某种原因坚持将临时文件写入并重命名它,从而完全绕过管道。

因此,您似乎别无选择,只能先在tmpfs中生成私钥(比如在/dev/shm中或从活动cd中),然后从那里加密它。

票数 3
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/612870

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档