没有登录的SSH密钥副本

时间:2015-04-03 16:24:23

标签: ssh-keys

我面临着在客户端创建ssh密钥并希望更新服务器的authorized_keys以包含新客户端公钥的典型问题。

通过搜索论坛,我看到了许多使用scp或ssh-copy-id的建议。

但是,这两个都需要登录到服务器。 出于安全考虑,我不希望在我的服务器上接受任何密码登录,因此我正在寻找一种方法将客户端的公钥传送到服务器而无需登录。

所以第一个问题:是否有可接受的方法?

我正在考虑使用SSH_ORIGINAL_COMMAND变量,以便客户端可以执行类似

的操作
ssh dummy@server `cat mykey.pub`

并且在服务器中我将能够使用日志来查看连接尝试(并且因为密钥未知而失败)并复制原始命令。 但是,我已经看到在/ var / log / secure中,会记录连接尝试和失败,但是随之发送的命令不是。

这引出了第二个问题:这些信息是否记录在任何其他日志中?

如果没有,我想在服务器上创建一个用户(让我们说" dummy"),他们会使用.ssh / authorized_keys为所有登录尝试指定强制命令。我已经看到这样做让我确实可以访问SSH_ORIGINAL_COMMAND变量,我可以将其写入某个文件。这里的问题是我只能为特定的公钥指定强制命令......但我需要为任何键执行此操作。

所以第三个问题:是否可以在authorized_keys中指定任何键的命令?

如果没有,我的最后一个解决方案是确实接受服务器上用户虚拟的密码连接,但确保用户不能执行任何,而不是使用参数调用我的脚本(公钥) )以确保安全。

这可能吗?

0 个答案:

没有答案