将Set-AzureRmVMOSDisk与linux和attach一起使用时,无法登录到新创建的ARM VM
我正试图为运行Ubuntu的正常工作的ARM虚拟机开发一个克隆工作流。 此VM是从市场中的Bitnami LAMP图像创建的 我正在尝试使用-CreateOption附加选项而不是fromImage,据我所知,它应该可以工作。。。我知道还有另外一个选项:deprovision->capture->CreateOption fromImage,但也有问题。我遵循的工作流程符合许多描述,我不理解这个登录问题,希望我错过了一个简单的步骤 我已经在不同的源ARM VM上尝试了两次此工作流,得到了非常相同的结果:新机器似乎完全运行,但我无法使用已知的用户名密码登录新机器(通过SSH) 诊断:将Set-AzureRmVMOSDisk与linux和attach一起使用时,无法登录到新创建的ARM VM,azure,bitnami,azure-powershell,azure-resource-manager,Azure,Bitnami,Azure Powershell,Azure Resource Manager,我正试图为运行Ubuntu的正常工作的ARM虚拟机开发一个克隆工作流。 此VM是从市场中的Bitnami LAMP图像创建的 我正在尝试使用-CreateOption附加选项而不是fromImage,据我所知,它应该可以工作。。。我知道还有另外一个选项:deprovision->capture->CreateOption fromImage,但也有问题。我遵循的工作流程符合许多描述,我不理解这个登录问题,希望我错过了一个简单的步骤 我已经在不同的源ARM VM上尝试了两次此工作流,得到了非常相同
- 甚至web服务器和mysql也能在新机器中正常工作,因为在新机器启动后,我可以查看它所服务的网站
- 在下面的脚本中,我省略了入站规则的配置,但是我成功地允许了HTTP(见上文)和SSH。SSH连接请求密码,并将其评估为错误
- 停止功能齐全的ARM VM(未运行waagent-取消提供)
- 已将OS vhd复制到新的.vhd blob(成功,复制脚本超出主题)
- 然后完全成功地运行了以下脚本:
我看了一下,bitnami中似乎有什么东西阻止它登录 我没有花太多时间去尝试弄清楚所有东西是如何连接的,但是那里肯定有代码来检查何时从映像部署了新的VM,因为这样做时它总是会重新生成sshd密钥 所有预期的文件都是相同的(我在普通ubuntu框和bitnami框之间执行了一个差异) 它产生的错误是
Mar 8 20:09:19 lamp sshd[2511]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=13.69.83.238 user=ubuntu
Mar 8 20:09:21 lamp sshd[2511]: Failed password for ubuntu from 13.69.83.238 port 32991 ssh2
然而/etc/shadow为我使用的密码提供了正确的salt/hash。具有更多Linux/bitnami经验的人可能能够指出其中的错误。但一开始,它应该是有效的
这与普通ubuntu映像上的预期完全一样,因此从头开始构建新机器可能更简单
否则你可能会在bitnami论坛上得到更好的答案。(很可能只是一个配置设置)我在尝试capture->create fromImage(CCFI)时意外地得到了一些诊断结果(不要与copy->attach(CA)混淆这个问题是关于什么的) 如果您不关心细节,请跳到最后,查看“目前已知的最简单的解决方法” 诊断:
- 如果新创建的marketplace bitnami LAMP ARM VM遇到CA,则原始管理员用户无法再登录
- 如果新创建的marketplace bitnami LAMP ARM VM出现CCFI,则原始管理员用户可以登录,并且新定义的凭据(admin2)也可以登录
- 如果通过CCFI创建的VM遇到CA,则原始管理员用户可以登录,但admin2(在以前的CCFI中创建)无法登录
- 一些bitnami自定义脚本
- waagent
- waagent被某些bitnami自定义操作或错误配置误导
<ns1:UserPassword>REDACTED</ns1:UserPassword>
如果您在任何机器上执行此操作,包括virgin创建的然后是定制的marketplace机器,那么您可以免费对其进行CA。当然,您不能使用dummyadmin登录新机器,但您可以使用admin登录。我刚刚尝试对bitnami映像运行此操作,但遇到了一个错误“从市场映像创建虚拟机需要请求中的计划信息”您是否遇到过此问题?没有。不过,我只是孤立地诊断了该情况,但我认为您使用的是-fromImage,而不是-attach。我下面的脚本运行得很好,虚拟机运行得很好,“只是”登录信誉不知怎么被破坏了。您提到的错误消息是trinig从捕获(未复制)的映像创建VM时收到的。请参阅此处描述的案例和一些附加诊断:Michael,非常感谢。请不要在这上面花费太多时间,我偶然得到了一些诊断结果,以及一些关于这方面的想法。我将很快发布“答案”。@g.pickardou我会很好奇地阅读它我喜欢戳这种东西,这是一种很好的做法,能让我更快地为那些付账单的人找到答案!(这似乎让他们很高兴——而且更有可能寄支票!)这是一个很好的调查!一种解决方法可能是使用自定义脚本重新启用用户。此外,我刚刚通读了脚本,在他们的脚本中看不到任何可能更改密码的内容(有一个硬编码的根禁用)任何人都在做这个禁用运动,它可以通过添加第二个dummyadmin来愚弄。。。bitnami读取waagent文件的可能性非常小,因此,如果只添加dummyamin(最后一个用户将在阴影文件中),并且不更改ovf-env.xml文件,则可以进行明确诊断。然后CA。如果dummyuser将被禁用,那么bitnami,如果原始管理员禁用,那么waagent。
<ns1:UserPassword>REDACTED</ns1:UserPassword>
sudo adduser dummyadmin
sudo adduser dummyadmin sudo
edit the /var/lib/waagent/ovf-env.xml file and replace admin to dummyadmin