实际上我已经尝试了SSH 权限被拒绝(公钥)和无法通过 ssh 连接到 GCE:“权限被拒绝(公钥),但没有一个能解决问题。
我能够通过 ssh 进入 root 帐户,但不能进入我用来登录的帐户。
我确实尝试了以下方法来从 ROOT 帐户修复它。
sudo chown -R $USER ~/.config/gcloud
使用以下命令生成 ssh 密钥
ssh-keygen
- 复制 key.pub 文件内容
- 将内容附加到
~/.ssh/authorized_keys
文件 sudo nano ~/.ssh/authorized_keys
我已经使用 Ubuntu 16.04 LTS 设置了 Google 云虚拟机实例。我通常使用以下命令通过 ssh 连接我的机器:
gcloud compute --project "XXX-XXX" ssh --zone "us-east1-b" "XXXXXXXX"
但是现在尝试时,出现以下错误:
权限被拒绝,请重试。
我在虚拟机上有三个帐户。一个是 root,一个是 abdullah,另一个是 mrafique.bese_17seecs。我的整个虚拟环境都存在于“abdullah”中,我现在无法访问它。
请帮忙。
答案1
如果您以 root 帐户的身份输入了这些命令,那么您对登录用户来说什么都没做。您只修改了 root 用户主目录中的文件。您必须在这些命令中使用或(如果这是主目录),而不是~
(扩展到登录用户的主目录)。~abdullah
/home/abdullah
chown -R $USER ~abdullah/.config/gcloud
使用生成 ssh 密钥
ssh-keygen
复制 key.pub 文件内容
nano ~abdullah/.ssh/authorized_keys
当您已经是 root 时,您不需要 sudo。