首页 文章

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

提问于
浏览
0

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

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

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

1 回答

  • 1

    我有一些建议 .

    先是一点背景知识 . 如果在家庭工作站上运行此命令:

    sudo find / -iname gcloud
    

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

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

    如果您将目录更改为 /home/Acer/.config/gcloud/configurations ,则'll see a file named ' config_default '. This file will contain the default account to use for that user (' Acer') .

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

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

    (对于它的 Value ,如果您决定使用 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
    

相关问题