如何更改 .ssh 文件夹的默认位置

如何更改 .ssh 文件夹的默认位置

我的 Uni 的所有 ssh 密钥都被盗了。系统管理员决定删除所有 .ssh 文件夹并将文件移动到一个我不记得名字的文件夹中。

我对系统管理员如何更改默认 SSH 密钥文件夹很感兴趣。

如何将默认的 ~/.ssh 文件夹更改为 ~/TopSecret/ 文件夹?这样我的电脑就能检测到密钥在新文件夹中吗?

答案1

查看 sshd_config(5) 并进行编辑/etc/ssh/sshd_config。请注意,相关配置文件的路径是为每个文件单独设置的(也就是说,这不是.ssh在配置文件中的某个位置将字符串更改为其他内容的问题)。

无论如何,您正在寻找的设置是AuthorizedKeysFile

答案2

为了减少私钥泄露的影响,建议对密钥本身进行密码加密。离线暴力攻击特定密钥仍然是可能的,但这确实会给那些偷走大量用户密钥的人带来麻烦。

如果无法加密,另一个选择是将 sshkey 的使用限制在特定 IP 地址。在添加到远程服务器的公钥中使用此语法。 from="ipaddress1,ipaddress2" ssh-rsa ... 这意味着如果有人窃取了这些密钥,那么如果从任何其他服务器(具有不同的 IP)使用它们,它们将毫无用处。

更重要的是,您不应该将有价值的私钥存储在您无法控制的任何东西上。要连接到服务器,将公钥存储在服务器上就足够了。

答案3

您可以使用“mv”命令重命名文件夹。因此,您可以通过“mv TopSecret .ssh”将 TopSecret 重命名回 .ssh。

管理员可以通过更改 /etc/ssh/sshd_config 文件的 AuthorizedKeysFile 参数来控制 sshd 查找密钥的位置。您无法更改此设置。

答案4

要更改目录的默认位置.ssh,您可以编辑以下设置:

  1. /etc/ssh/ssh_config:编辑 的值IdentityFile。示例条目如下所示:IdentityFile /es2/ssh/id_rsa。这/es2/ssh是保存公钥和私钥所需的目录。
  2. /etc/ssh/sshd_config:更新的值AuthorizedKeysFile,示例条目如下:AuthorizedKeysFile /es2/ssh/authorized_keys

另外,完成此配置更新后,请不要忘记重新启动 ssh 守护程序。

相关内容