在服务器上生成公钥/私钥对是否安全,将公钥添加到authorized_keys列表中,然后将私钥复制到每个客户端,如此处所述(http://www.rebol.com/docs/ ssh-auto-login.html ) 假设您保持对每个客户端的永久控制权?(即同一用户,多台计算机)。
典型的过程是在客户端生成公钥/私钥对,然后将客户端的公钥添加到服务器上的 authorized_keys 列表中,如此处所述 ( http://www.linuxproblem.org/art_9.html )。使用这种方法,如果您有几台客户端计算机,则每台计算机都必须连接到 authorized_keys 列表并随着时间的推移进行维护。
Mic*_*ton 22
恭喜,您找到了一个包含错误建议的 Internet 教程。
当任何一台计算机受到威胁时,就会出现为多台计算机使用单个密钥对的问题。然后,您别无选择,只能在任何地方撤销密钥对,并对使用该密钥对的每台计算机重新设置密钥。您应该始终为每台机器和每个用户使用唯一的密钥对,以限制受损密钥可能造成的损害。
至于那个教程,在服务器上生成密钥对并将私钥复制到客户端是非常糟糕的建议。这完全是落后的。相反,应该在客户端生成密钥对并将公钥复制到服务器。甚至有一个帮助脚本ssh-copy-id
可以做到这一点,并在此过程中确保所有权限都正确,客户端获取服务器的主机密钥等。
在某些情况下,您可能确实希望集中管理用户的身份密钥,例如用于自动化脚本,但在这种情况下,您确实应该从第三台主机或理想情况下从配置管理系统(例如 puppet)执行此操作。