我正在使用Amazon EC2上的Ubuntu AMI。
在正在运行的实例上,我将ubuntu用户的密码更改为(假设)'foobar'。
(我知道EC2中通常不需要用户密码,因为带有公钥/私钥的ssh,但是我正在设置一个使用unix用户名/密码进行身份验证的Web应用程序,所以我需要确保它有效。)
我尝试了几种设置密码的方法:
在所有情况下,如果我从正在运行的实例中创建一个新图像,然后 创建该图像的实例,ubuntu用户将没有密码'foobar'。
我可以设置密码并重启正在运行的实例,并输入正确的密码 仍然被设置,但在从实例制作新图像后,没有这样的运气。
之前这对我有用。不知道为什么它现在不起作用。这是一张EBS图片。
编辑:添加重现问题的确切步骤。
ami-1a05fa72
sudo passwd ubuntu
foobar
ubuntu
的密码是否为foobar
作为ubuntu
并输入passwd
。它首先会问你的
当前密码。输入foobar
,当这被拒绝时,您有
转载问题。 答案 0 :(得分:0)
听起来并不贬低,但在我意识到我的AMI创建之前之前我已经发生了这种情况。我更改了密码。
如果不是这样,您可能也想修改sshd_config文件。使用&sudo passwd ubuntu'更改密码后,将以下行添加到/ etc / ssh / sshd_config:
PasswordAuthentication yes
这应启用密码登录。用以下内容重新加载你的ssh:
sudo reload ssh
然后创建一个新的AMI。
答案 1 :(得分:0)
据Starcluster名单上的Hugh MacMullan所说,答案是:
"看看/etc/cloud/cloud.cfg,特别是' default_user'部分。注意' lock_passwd:True'。您可以将其更改为False ...或者更好的是创建一个不同的用户(例如,rlogin),默认情况下不会在init上锁定,因此您应该好好去。"
我将lock_passwd更改为False,并且我的密码更改在重新启动后仍然存在。不需要不安全的crontab hacks。