google-cloud-platform - GCP "Managing SSH keys in metadata"是如何在幕后工作的

标签 google-cloud-platform ssh google-compute-engine ssh-keys openssh

<分区>

我知道 gcp 提供了一个功能,在实例元中添加一个 ssh 公钥将允许用户通过 publickey 身份验证 ssh 进入机器。

但是,我很想知道 gcp 是如何做到这一点的?

GCP 是否在 ssh 请求到达机器之前拦截并将相关的 authorized_keys 添加到我的机器中? 要么 SSH 是否提供了一些 GCP 用来实现这种能力的功能?

最佳答案

Google Cloud 在虚拟机启动期间运行软件(访客代理),将 SSH key 从元数据服务复制到虚拟机。这包括创建主目录和设置 authorized_keys。

On Linux: If OS Login is not used, the guest agent will be responsible for provisioning and deprovisioning user accounts. The agent creates local user accounts and maintains the authorized SSH keys file for each. User account creation is based on adding and remove SSH Keys stored in metadata.

此软件称为 Guest Environment .

源代码发布于GitHub .

关于google-cloud-platform - GCP "Managing SSH keys in metadata"是如何在幕后工作的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67951625/

相关文章:

google-cloud-platform - Google Cloud Dataproc Serverless gcloud ttl 标志无法识别的参数

kubernetes - 如何在GKE中刷新集群访问 token

ssh - 脚本以SSH到计算机并执行SCP

mysql - Node.js ssh2隧道保活并执行mysql查询

unix - 使用远程登录/命令的 SSH

google-compute-engine - 如何将 Airflow 调度程序作为守护进程运行?

json - mongoimport 失败 : error connecting to db server: no reachable servers hosted on google compute

node.js - 如何使用 Docker 镜像将 Node.js HTTP/2 应用程序部署到 Google Compute Engine 上?

postgresql - Dataproc 尝试通过 JDBC 连接到 Postgres,缺少权限

google-app-engine - Google App Engine 可以在没有外部 IP 的情况下向同一项目中的 Compute Engine 实例发出 http 请求吗?