![“sort”和“uniq”对authorized_keys 文件有什么坏处?](https://linux22.com/image/128562/%E2%80%9Csort%E2%80%9D%E5%92%8C%E2%80%9Cuniq%E2%80%9D%E5%AF%B9authorized_keys%20%E6%96%87%E4%BB%B6%E6%9C%89%E4%BB%80%E4%B9%88%E5%9D%8F%E5%A4%84%EF%BC%9F.png)
我尝试了一些在我看来应该有效的方法。我有一堆想要导入的公共 ssh 密钥,所以我这样做了。
cat public_ssh_keys .ssh/authorized_keys | sort | uniq > AK
mv AK .ssh/authorized_keys
这是在 EC2 实例上,突然我无法再登录了。我没有尝试研究这个,只是想知道是否有人清楚地知道这里会失败什么?
答案1
如果您的默认值umask
类似于0002
,那么将使用所属组的写入权限创建AK
新的。不喜欢这样,因为这可能允许其他用户修改文件并使用您的帐户登录。默认情况下 umask 是什么,取决于系统。.ssh/authorized_keys
sshd
(是否有人实际上可以做到这一点取决于是否有任何其他用户是同一组的成员,以及您的主目录的权限是什么~/.ssh
,但它不会打扰检查那么远。)
对于authorized_keys
,其他人的读取访问不是服务器关心的事情:它只包含密钥的公共部分,并且它们并不真正那么敏感。
因此,ls -l .ssh/authorized_keys
要检查权限,然后chmod 600 .ssh/authorized_keys
(或类似的)检查是否有太多访问权限。
sort
并且uniq
不应该对文件做任何坏事,它只包含文本行,并且它们的顺序并不重要。