获取 Google Cloud Engine 虚拟机的 root 密码
Posted
技术标签:
【中文标题】获取 Google Cloud Engine 虚拟机的 root 密码【英文标题】:Get root password for Google Cloud Engine VM 【发布时间】:2016-05-03 04:34:22 【问题描述】:我刚刚在 Google Cloud Engine 的 CentOS VM 中安装完 cPanel,cPanel 说默认用户名是 root,默认密码是服务器的 root 密码。
2016-01-26 12:02:52 958 ( INFO): 3. Enter the word root in the Username text box
2016-01-26 12:02:52 958 ( INFO):
2016-01-26 12:02:52 958 ( INFO): 4. Enter your root password in the Password text box
2016-01-26 12:02:52 958 ( INFO):
2016-01-26 12:02:52 958 ( INFO): 5. Click the Login button
如何获取服务器的root密码?
【问题讨论】:
【参考方案1】:想通了。默认情况下,云引擎中的 VM 没有设置 root 密码,因此您首先需要使用更改密码
须藤密码
如果你做的一切都正确,它应该做这样的事情:
user@server[~]# sudo passwd
Changing password for user root.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.
【讨论】:
只是补充一点,sudo passwd
只能使用来自 GCP 的预定义 SSH 连接来执行(例如:通过浏览器窗口打开 SSH)。我尝试通过自己的终端运行该命令,但它阻止我更改 root 密码。
我在自己的本地终端中尝试了该命令,它成功了。【参考方案2】:
至少在 Google 托管的 Debian Jessie 映像中有效:
在本地环境(您在 GCE 中的 Linux 服务器)中使用您的 Google 计算机引擎 (GCE) 用户进行身份验证后,启用从您的常规用户切换到 root 用户(AKA“超级用户”)的方法非常简单向前,实际上它只涉及一个命令来启用它,而每次使用它时需要另一个命令:
$ sudo passwd
Enter the new UNIX password: <your new root password>
Retype the new UNIX password: <your new root password>
passwd: password updated successfully
执行上一条命令并使用您的 GCE 用户登录后,您只需输入以下命令即可随时切换到 root:
$ su
Password: <your newly created root password>
root@intance:/#
正如我们在经济学中所说的“caveat emptor”或买家请注意:使用 root 用户远非系统管理中的最佳实践。使用它可能会导致很多麻烦,从擦除驱动器和引导磁盘中的所有内容而不会打嗝,到许多其他难以回溯、故障排除和重建的令人讨厌的东西。 另一方面,我从来没有遇到过一个系统管理员认为他比他应该知道的更了解和 root 更多。
记住:我们人类的编程方式是,在某个时间点有足够的时间按 Enter 键,而不考虑我们已升级为 root,我可以向你保证,它会痛苦、遗憾和额外工作的重要来源。请谨慎使用根权限。
说了这么多无聊的话,玩得开心,活在边缘,人生苦短,你只能活一次,越破越学。
【讨论】:
在具有 Debian 9.7 的点击部署 LAMP 堆栈中工作:console.cloud.google.com/marketplace/details/… - + 1 表示警告【参考方案3】:我遇到了同样的问题。即使使用 sudo passwd 更新密码后,它也无法正常工作。我必须通过 IAM 和管理员为我的用户提供“多个”角色 Refer Screen Shot on IAM & Admin screen of google cloud
之后我重新启动了虚拟机。然后再次更改密码,然后就可以了。
user1@sap-hanaexpress-public-1-vm:~> sudo passwd
New password:
Retype new password:
passwd: password updated successfully
user1@sap-hanaexpress-public-1-vm:~> su
Password:
sap-hanaexpress-public-1-vm:/home/user1 # whoami
root
sap-hanaexpress-public-1-vm:/home/user1 #
【讨论】:
你把它们交给了哪个用户?您的谷歌帐户用户?这如何转化为 root 能够登录?【参考方案4】:我尝试了“ManiIOT”的解决方案,效果出乎意料。 我从 IAM 管理员为我的 google 用户帐户添加了另一个角色(计算管理员角色)。然后停止并重新启动VM。 然后'sudo passwd'让我为用户生成一个新密码。
以下是步骤。
-
转到 IAM 和管理
选择 IAM
找到您的用户名服务帐户(基本上是您的 google 帐户)并点击 Edit-member
添加另一个角色 --> 选择“Compute Engine”-“Compute Admin”
重新启动计算虚拟机
打开 SSH shell 并运行命令 'sudo passwd'
输入一个全新的密码。瞧!
【讨论】:
以上是关于获取 Google Cloud Engine 虚拟机的 root 密码的主要内容,如果未能解决你的问题,请参考以下文章
Google Cloud Compute Engine 是不是与 Google Cloud SQL 分开
获取文件的公共 URL - Google Cloud Storage - App Engine (Python)
Cloud Storage 上的 Google App Engine 文件
Google Cloud 中的 Google Compute Engine、App Engine 和 Container Engine 有啥区别?
如何在 Google Cloud App Engine 上使用 PubSub 创建订阅者,该订阅者通过 Publisher 从 Google Cloud App Engine Flex 收听消息?