ssh - 谁应该制作 ssh key 对

标签 ssh key

关闭。这个问题是off-topic .它目前不接受答案。












想改进这个问题? Update the question所以它是on-topic对于堆栈溢出。

10年前关闭。




Improve this question




如果想让某人通过 ssh 访问服务器,我应该创建该对并向他们发送私钥,还是应该让他们创建该对并向我发送公钥?

最佳答案

The private key is able to generate signatures .使用您的私钥创建的签名不能由没有该 key 的任何人伪造,但任何拥有您的公钥的人都可以验证特定签名是真实的。这就是当前实现服务器身份验证协议(protocol)的方式。服务器发送一段随机数据,然后您的客户端对其进行签名并返回给服务器。服务器使用您的公钥来验证签名。
请注意,如果服务器端没有独立的方法知道您的公钥来自您,那么您可以使用由受信任的第三方签名的数字证书来验证公钥。大多数系统管理员在手动设置经过身份验证的登录时不会走这么远,但金融系统有时需要个人证书。搜索“PKI”。

如果服务器端生成 key 对,那么您需要一种方法将该 key 对安全地传输到经过身份验证的客户端,然后在服务器端销毁私钥。

我可以使用服务器端的私钥和客户端的公钥来设置客户端身份验证系统。身份验证协议(protocol)是服务器将随机片段发送给客户端进行加密,客户端将加密片段返回给服务器。客户端必须保护公钥不被泄露,而且这只对一台服务器有好处,而当私钥在客户端时,客户端可以使用相同的公钥对多台服务器进行身份验证。

关于ssh - 谁应该制作 ssh key 对,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10265363/

相关文章:

python - Python subprocess.Popen运行ssh的结果异常

c# - 到处获取所有按下的键

IOS: [NSDictionary initWithObjects:forKeys:]:

php - 如何将两个数组组合在一起?

python查找JSON中所有出现的键并修改值

php - 防止 Redis key 逐出策略

ssh - Maven Build 无法部署到 Javadoc 服务器 : missing SSH known_hosts

ssh - do_convert_from_pkcs8 :/dev/fd/63 is not a recognised public key format

ruby - dlload' 中的 block 中的救援:无法在运行上限上加载 user32 (Fiddle::DLError)

Python:如何检查由sendline执行的进程的状态