Amazon EC2 AMI根授权密钥。

4
我正在使用公共RedHat AMI在EC2上工作,并尝试创建一个默认允许root登录ssh的映像。我更改了/etc/ssh/sshd_config文件,使PermitRootLogin设置为yes,并更改了/root/.ssh/authorized_keys文件,以便文件以ssh-rsa开头,而不是:
no-port-forwarding,no-agent-forwarding,no-X11-forwarding,command="echo 'Please login as the user \"ec2-user\" rather than the user \"root\".';echo;sleep 10". 

在我完成这个步骤后,我可以使用root身份ssh到我的实例,但是当我从此实例创建一个自定义AMI时,/root/.ssh/authorized_keys文件会恢复到不允许的旧版本。

我想知道如何使我的自定义AMI默认启用root ssh,或者是否有一个文件在更改root的authorized_key文件回到原始状态,我可以进行编辑。

谢谢!


不确定为什么文件被还原,但是我建议您使用“PermitRootLogin without-password”而不是“PermitRootLogin yes”,如果您必须允许root访问。尽管它似乎是这样说的,“without-password”意味着“仅允许使用密钥登录,而不允许使用密码”。如果根密码设置并且他们设法暴力破解它,这应该可以防止脚本小子获取访问权限。 - ianjs
1个回答

3

我曾经看到过Ubuntu/Debian AMIs出现类似的情况。

最有可能的罪魁祸首是cloud-init

在我们的情况下,调整/etc/cloud/cloud.cfg中的disable_root: true => disable_root: false就可以解决问题。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接