谷歌云 (GCP) 服务器 SSH 免密连接与提权指南
详细讲解 GCP 的常见问题与解决方案
检测到本篇文章有变更,已为你高亮差异内容。
AI 摘要GCP 默认禁用密码 SSH 登录且无初始 root 密码。可在 Termius 生成并保存 ED25519 密钥对,用户名填全小写系统用户名、Passphrase 留空,将公钥加入 Compute Engine 虚拟机的 SSH Keys 后,用外部 IP 和该密钥连接。登录后可用 sudo 单条提权,或执行 sudo -i 进入 root,exit 退出。
谷歌云 (GCP) 服务器 SSH 免密连接与提权指南
在谷歌云平台上,为了确保服务器的最高安全性,系统默认禁止使用密码直接登录 SSH,也不提供初始的 root 密码。本教程以现代跨平台 SSH 客户端 Termius 为例,通过配置 ED25519 密钥对实现安全、高效的免密登录。
第一阶段:在本地生成现代 SSH 密钥
相比于传统的 RSA,ED25519 是目前业界推荐的现代加密标准,安全性极高且生成的公钥字符串非常短,极大降低了复制粘贴时出错的概率。
- 打开 Termius,进入左侧导航栏的 Keychain (密钥串)。
- 点击右上角的 + (或 Add) 新建密钥。
- 按如下逻辑配置密钥参数:
- Key type (密钥类型): 选择
ED25519。 - Label (标签): 随意填写,例如
GCP-Server,方便日后辨认。 - Username (用户名): 此项为核心关键。必须填写你希望在服务器上使用的全小写英文用户名(例如
mhya123)。GCP 会读取此字段并自动在服务器内为你创建对应的系统用户。 - Passphrase (密码): 保持留空即可,以实现真正的免密丝滑登录。
- 点击保存。随后在列表中点击刚创建的密钥,找到 Public key,点击旁边的复制图标,将这段短代码(通常以
ssh-ed25519开头)存入剪贴板。
第二阶段:将公钥部署至谷歌云后台
我们需要将上一步复制的“公钥”交给谷歌云,让服务器认识你的本地设备。
- 登录 Google Cloud Console↗。
- 通过左上角菜单,依次导航至 Compute Engine -> 虚拟机实例。
- 在列表中点击你目标服务器的名称(进入实例详情页)。
- 点击页面顶部的 修改 (Edit) 按钮,进入编辑模式。
- 向下滚动页面,找到 SSH 密钥 (SSH Keys) 区域。
- 点击 添加一项 (Add item),将剪贴板中的公钥完整粘贴进文本框。此时左侧应自动识别出你之前设置的用户名。
- 滚动到页面最底部,点击蓝色的 保存 (Save) 按钮,等待几秒钟配置生效。
第三阶段:配置客户端并建立连接
- 回到 Termius,进入左侧的 Hosts (主机) 界面。
- 点击 + New Host (新建主机) 开始配置:
- Address (地址): 填入 GCP 服务器的外部 IP。
- SSH 模块:
- Username: 填写生成密钥时设置的用户名(如
mhya123)。 - Password: 留空。
- Keys: 点击并选中第一阶段创建的
GCP-Server密钥。
- 保存后,双击该主机发起连接。
- 安全提示:首次连接时,系统会询问是否信任该主机的指纹,点击 Add and continue (添加并继续) 即可成功进入服务器终端。
第四阶段:获取 Root (超级管理员) 权限
由于 GCP 默认没有 root 密码,你目前的登录身份是你自己设定的普通用户。如果你需要执行系统级操作,可以通过以下两种方式调用系统已为你默认配置好的 sudo(提权)能力:
方式一:临时借用权限 (适合单条命令)
在需要管理员权限的命令最前面加上 sudo 和空格。
sudo apt update
方式二:直接无密码切换至 Root 账户 (推荐,适合连续操作) 在终端中直接执行以下命令:
sudo -i
执行完毕后,你会发现命令行的提示符结尾从符号 $ 变成了井号 #,且最前方的用户名变为 root。这代表你已成功获取服务器的最高控制权。如需退回普通用户,输入 exit 即可。
Comments