0

假设我已将 ssh 公钥添加到~/.ssh/authorized_keys. 我正在使用ssh -i <private_key> root@machine.ip.com. 有没有办法在 ssh 之后以编程方式找到我的 ssh 密钥的相应(接受)公钥~/.ssh/authorized_keys?我假设我在authorized_keys 中有多个密钥。

4

3 回答 3

1

我想您可以(ab)使用authorized_keys中的命令选项,例如:

command="echo key1; /bin/bash" ssh-rsa ...

您还可以设置环境变量,例如:

command="KEY=key1 /bin/bash" ssh-rsa ...

然后当你 ssh 进入时,你会得到:

-> % ssh user@host
key1
[user@host ~]$

真的不知道这是否是您想要的编程数量。

于 2015-10-03T16:13:10.087 回答
0

~/.ssh/authorized_keys包含公钥,所以你需要做的就是匹配你的私钥的公钥。

您可以使用以下方法生成私钥的公钥:

openssl rsa -in <private_key> -pubout
于 2015-10-03T16:19:43.710 回答
0

您的私钥只有 1 个匹配的公钥(否则 PKI 已损坏)。

因此你可以简单地运行

 ssh-keygen -y -f ~/.ssh/your_priv_key > your_pub_key
于 2015-10-03T16:20:36.290 回答