在Google Cloud Platform上为其他帐户创建SSH密钥

问题描述 投票:0回答:1

我已经安装了适用于Google Cloud的Cloud SDK。我使用auth登录,将我重定向到gmail-login。创建了SSH密钥,甚至使用Filezilla由SFTP登录。

问题是,当我使用gmail身份验证登录时,SDK shell(或putty?)会将我登录到非管理员帐户。它创建了另一个SSH用户帐户(在我的电脑之后命名为'Acer')并将其登录到其中。因此,FTP从/home/Acer文件夹开始。我想访问/home/admin/web文件夹,但我现在没有。

如何为管理员帐户创建SSH密钥,以便我可以访问上述文件夹?否则,是否可以授予'Acer'访问所有文件夹的权限?

ssh ftp google-cloud-platform google-compute-engine google-cloud-sdk
1个回答
1
投票

我有一些建议。

先来一点背景。如果在家庭工作站上运行此命令:

sudo find / -iname gcloud

您将在家庭工作站上为每个用户发现一个gcloud配置文件夹。你可能会看到这样的东西:

/root/.config/gcloud
/home/Acer/.config/gcloud

如果将目录更改为/home/Acer/.config/gcloud/configurations,您将看到名为“config_default”的文件。此文件将包含用于该用户的默认帐户('Acer')。

因为您已经将gcloud auth login作为该用户执行,并且在该过程中选择了您的gmail帐户,它将在该用户的配置文件中包含该gmail ID /帐户。如果您希望名为“admin”的用户登录您的项目,您可以尝试将名为“admin”的用户添加到您的家庭工作站,然后在尝试使用gcloud auth login之前,确保您将家庭工作站上的用户切换为用户'管理员。这将在您的主工作站上为用户admin生成gcloud配置,并传播SSH密钥等。

如果你想手动创建ssh密钥,那么有一些有用的信息here

(对于它的价值,如果你决定使用gcloud compute ssh登录你的实例家庭工作站,你可以在你想要登录的命令中指定用户。例如gcloud compute ssh admin@INSTANCE_NAME)。

我想访问/ home / admin / web文件夹,但我现在没有。

即使您以不同的用户身份登录到计算机(在本例中为“Acer”),如果先前存在该文件夹,/home/admin/web文件夹仍应存在。如果你登陆文件夹/home/Acer你有没有尝试将目录更改为上面的文件夹,然后列出文件夹以查看/home/admin/是否存在?

例如,从/home/Acer运行:

$ cd ..

然后

$ ls

你应该能看到/home/admin/

否则,是否可以授予'Acer'访问所有文件夹的权限?

是的,这也是可能的。如果您以项目所有者的身份访问实例(最简单的方法是以项目所有者身份登录控制台并使用控制台中的SSH功能访问实例)。现在您可以运行此命令:

$ sudo chown Acer.Acer -R /home/admin/web

这将使目录/home/admin/web的用户'Acer'所有者及其下面的所有文件/目录(由于-R开关)。

现在,当您下次以“Acer”用户身份访问实例时,您将能够通过运行以下命令来访问/home/admin/web,并且您还具有读/写功能:

$ cd /home/admin/web 
© www.soinside.com 2019 - 2024. All rights reserved.