我已经生成了一对私有/公共 ssh 密钥(在 Linux 上),它们现在在我的.ssh
文件夹中。
我已将我的 ssh id ( ssh-copy-id
) 复制到我想要连接的远程机器上,而无需一直键入我的密钥。
复制我的 ssh id 后,我无需输入密码就可以连接到机器,并且我在 中仔细检查.ssh/authorized_keys
了唯一授权的公钥是我刚刚复制的那个(这很好)。
但是,我看到了两个问题:
首先,由于某种原因,ssh-copy-id
我的私钥也复制到了那台机器上。我删除了它,因为它似乎是一个很大的安全整体,将你的私钥传播到其他机器上。这个对吗?
其次,我看到我的公钥现在是用.ssh/authorized_keys
. 此文件的权限已配置,因此只有我的用户可以读取它 ( -rw-------
)。不过,如果有人设法访问此内容,他/她可以在没有密码的情况下访问我的远程计算机,这是正确的吗?我已经看到,在我的本地计算机上,这个文件已经生成了允许任何其他用户(登录机器)读取它的权限。这不是安全漏洞吗?我应该更改权限以便只有我的用户可以读取文件的内容吗?
最后,在连接到远程机器时,哪个密钥实际上用于非常我的身份,私有密钥还是公共密钥?