如何保护authorized_keys文件?

如何保护authorized_keys文件?

我已经为我的 Ubuntu 服务器设置了仅基于密钥的 SSH 登录(并拒绝 root 登录)

ls -l /home/ernest/.ssh显示如下:

-rw------- 1 ernest ernest 405 Dec 14 09:17 authorized_keys

这是否意味着在ernest(我的管理登录)下运行的任何进程都可以修改authorized_keys,从而我将无法访问我的服务器?

如果是,有什么做法可以保护吗authorized_keys

答案1

如果您不打算经常更改该文件,那么通常只需删除该文件的写访问权限即可。

这也是Arch Linux wiki 建议

chmod 400 ~/.ssh/authorized_keys

现在,当然,恶意脚本可以将写访问权限重新添加,因此您需要将文件及其父目录设置为不可变的:

sudo chattr +i ~/.ssh/authorized_keys
sudo chattr +i ~/.ssh

相关内容