在NoMachine NX 设置和FreeNX ubuntu 设置文章中说,为 NX 服务器使用默认 SSH 密钥不利于安全性。坏到什么程度?
世界上每个 NX 用户的默认 SSH 密钥是否相同,并且每个人都可以登录到使用默认密钥的 NX 服务器?
在NoMachine NX 设置和FreeNX ubuntu 设置文章中说,为 NX 服务器使用默认 SSH 密钥不利于安全性。坏到什么程度?
世界上每个 NX 用户的默认 SSH 密钥是否相同,并且每个人都可以登录到使用默认密钥的 NX 服务器?
只有 NX“服务器”和“客户端”进程使用名为“nx”的特殊用户帐户。这些帐户用于设置连接的初始阶段并使用您提到的密钥对,而这一切都是在真正的用户登录发生之前。该密钥不用于登录真正的 NX 会话用户。
一旦初始阶段完成,就会存在一个安全的加密通道。然后这个加密通道(在默认 NX SSH 密钥的帮助下建立)用于进行真正的用户登录。
因此,只知道默认的 SSH 密钥,没有人可以登录到 NX 服务器。他只能开始最初的“握手”阶段,然后被卡住。
就好像你登录一个HTTPS服务器,弹出用户名+密码对话框……【你会不会觉得特别不安全:HTTPS用户登录完成前弹出密码对话框?】
当然,为了获得额外的安全感,您可以创建自己的密钥并替换默认的 NX/NoMachine 密钥——最好为每个不同的 NX 服务器创建单独的密钥对。嗯....这个用户已知的密钥必须分发给您各自 NX 服务器的所有用户。您现在必须开始做更多的管理工作来管理不同 NX 服务器的所有密钥。额外的安全伴随着额外的工作......
据我所知,当您设置 NoMachine 时,它会以与 openssh-server 包相同的方式生成密钥,因此我认为这不是问题。
我已经很久没有使用 FreeNX,所以如果它实际上只是使用捆绑密钥而不是生成一个,那么它显然不是世界上最安全的东西,我会生成一个新的。
取决于你想要什么。如果您只需要传输安全性,则默认密钥就足够了。如果您想要用户身份验证,那么您不应该只使用自定义密钥,您应该只允许使用授权密钥登录。这两个问题是不同的。
FreeNX 服务器安装会在安装过程中创建一个名为 nx 的用户。如果您坚持使用默认 SSH 密钥,任何知道您机器的主机名或 IP 地址的人都可以使用默认 SSH 密钥以 nx 用户身份登录您的服务器。
如果您的机器可以从 Internet 访问,这是一个特别的风险,因此您应该使用Ubuntu 文章底部的说明创建自己的自定义 SSH 密钥。