【问题标题】:I am able to ssh to remote server only if i am sudo只有当我是 sudo 时,我才能 ssh 到远程服务器
【发布时间】:2020-05-24 14:13:47
【问题描述】:

我研究并发现将 .ssh 的 mod 更改为 700 所以

[ec2-user@ip-114 .ssh]$ sudo cp /root/.ssh/id_rsa /home/ec2-user/.ssh/id_rsa
[ec2-user@ip-114 .ssh]$ ls
authorized_keys  id_rsa  id_rsa.pub  known_hosts
[ec2-user@ip-114 .ssh]$ pwd
/home/ec2-user/.ssh
[ec2-user@ip-114 ~]$ cd ..

[ec2-user@ip-114 ~]$ chmod 700 .ssh/
[ec2-user@ip-114 ~]$ cd .ssh/
[ec2-user@ip-114 .ssh]$ ssh -i "id_rsa.pub" ubuntu@x.x.x.x
Load key "id_rsa.pub": Permission denied
Permission denied (publickey).
[ec2-user@ip-114 .ssh]$ ls
authorized_keys  id_rsa  id_rsa.pub  known_hosts

即使在更改 mod 之后,它也会说权限被拒绝。

如果我这样做了

sudo su
[ec2-user@ip-114 .ssh]$ sudo su
[root@ip-172-114 .ssh]# ssh  ubuntu@x.x.x.x
Enter passphrase for key '/root/.ssh/id_rsa': 

这是非 root 用户的目标行为。
怎么了?

【问题讨论】:

  • 正如@mokugo-devops 正确写的那样,这些是错误的键。你为什么要使用它们?你自己生成的吗?通常实例上没有私钥。他们是从哪里来的?
  • ssh-keygen 我想从一个实例 ssh 到另一个实例
  • 如果你从root cp到ec2-user,还需要更改所有者:chown ec2-user.ec2-user /home/ec2-user/.ssh/id_rsa
  • @Marcin 完美

标签: linux amazon-web-services ssh


【解决方案1】:

您正在尝试通过公钥进行连接,您应该通过id_rsa 进行连接。

另外请确保它具有 400 权限,并且您的用户作为所有者。

【讨论】:

  • 嘿。感谢你 。但是[ec2-user@ip-114 .ssh]$ sudo ssh -i "/root/.ssh/id_rsa" ubuntu@X.X.X.X 现在可以工作但没有 sudo 它说相同的权限被拒绝
  • 您好,这是因为您的当前用户赢得了;无权访问/root/.ssh。尝试将其移至/home/ec2-user/id_rsa。然后执行 chmod 400 并将所有者设置为 ec2-user。
  • 你的意思是/home/ec2-user/.ssh/id_rsa
  • 是的,.ssh 目录应该对本地用户(本例中为 ec2-user)再次拥有 700 权限
猜你喜欢
  • 2017-11-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-09-21
  • 2023-03-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多