ssh 不断要求 gcloud 输入密码

ssh 不断要求 gcloud 输入密码

我正在尝试使用 自动将一些本地文件从我的 Mac(Mojave)复制到 GCP 实例中gcloud compute scp

运行良好,但它不断要求输入创建的~/.ssh/google_compute_engine密钥的密码gcloud

有什么办法可以摆脱这个问题,以便可以自动化该过程?

答案1

尝试--quiet

这里

--quiet-q

运行 gcloud 命令时禁用所有交互式提示。如果需要输入,将使用默认值,否则将引发错误。覆盖此命令调用的默认 core/disable_prompts 属性值。必须在命令开头使用。这相当于将环境变量设置 CLOUDSDK_CORE_DISABLE_PROMPTS为 1。

答案2

不确定你是否可以自动化输入密码,但你当然可以删除密码,这样它只使用存储在本地机器中的公钥和私钥,而不会要求输入密码此外使用按键

为此,请参阅答案。要点是:

  1. 删除现有密钥~/.ssh
  2. 尝试使用 ssh 重新连接。由于找不到密钥,它会重新创建密钥并询问您是否需要密码。不要创建密码。

答案3

我通过重定向标准输入来使其工作/dev/null

gcloud compute scp delete.me myInstance:~/ < /dev/null

答案4

使用以下命令将 ssh 密钥添加到您的 ssh 代理:

ssh-add ~/.ssh/google_compute_engine

ssh-agent有关详细信息,请参阅手册页ssh-add

相关内容