【问题标题】:SSH authenticate with public key (not private key)SSH 使用公钥(不是私钥)进行身份验证
【发布时间】:2015-10-20 07:28:56
【问题描述】:

是否可以使用公钥连接到服务器?服务器持有authorized_keys中的私钥,客户端可以连接: ssh -i id_rsa.pub server

这与通常使用公钥/私钥的方式完全相反:客户端保存公钥,服务器保存私钥。

现在原因:对于部署给客户的机器,我想设置远程连接以在出现问题时抢救机器。

  1. 机器向救援服务器发起反向 SSH 连接:使用公钥连接(所有机器上相同:ssh -i id_rsa.pub -NR 64000:localhost:22 rescue@server
  2. 机器打开通道,但无法执行命令(提示/bin/false
  3. 在服务器上,通过开放通道对机器进行 SSH 连接,并使用私钥进行身份验证(通常方式:ssh -i id_rsa -p 64000 localhost)。

【问题讨论】:

  • 你的问题是off-topic这里。
  • 只需为您的所有计算机配置一个共享私钥,它们用于建立初始连接。无论如何,这正是您想要做的事情,除了这会奏效。

标签: linux authentication ssh public-key


【解决方案1】:

由于非对称加密的工作方式,您不能使用密钥以相反的私有/公共顺序进行身份验证。

您的替代解决方案可以是使用手册页和许多操作指南中所述的 openssh 证书。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-10-08
    • 1970-01-01
    • 2015-08-20
    • 2011-04-10
    • 2020-08-19
    • 2015-01-10
    • 1970-01-01
    • 2012-10-27
    相关资源
    最近更新 更多