linux ssh保存密码,求助,linux中ssh-keygen生成的密码放在那里的

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

首先

我还有个问题没问

openssh 默认使用 ~/.ssh/id_rsa 或 ~/.ssh/id_dsa 等的私钥,而并非你设的 ~/.ssh/dsa_root (非默认路径)

理论上如果你没有其他设定,和其他 keys,直接 ssh 不会知道使用这个 key

当然我没测试是否不需要做其他配置就可使用这个 dsa_root

这楼和上面之所以先问这几个问题,是因为你用的不是默认路径,也不是常见使用场景,在不清楚的情况下无法判断具体发生什麼事情

>> 这个没懂. 我的理解是在 ~/.ssh/authorized_keys 中的是公钥, 而登陆的时候, 需要的是个人的私钥.

是,~/.ssh/authorized_keys 中记录的各个 公钥 是允许相应 私钥 持有者以这个用户的身份登录

>> 也就是说如果从A机器远程(或者不远程)登陆B机器, 需要A有一个root@B对应的私钥.

假設

本地用戶爲:userA

本地機器叫:local

要登錄的機器:remote

要登錄的機器上開放的用戶名:userB

那麼

userA 要用 ssh public key authentication 可以这样做

local $ ssh-gen -C userA@local -f ~/.ssh/id_rsa

然后将这个相应的公钥(~/.ssh/id_rsa.pub)复制到 remote 的帐号 userB 下,可以用任何上传的手段,包括 ssh 配 cat 或者方便的 ssh-copy-id

无论什麼方法,最后结果是 userA 在 local 上 ~/.ssh/id_rsa.pub 的内容添加到 remote 上 userB 的 ~/.ssh/authorized_keys 裏面

然后

userA 在本地就可以 ssh userB@remote,免密碼以 userB 的身份登录到 remote

而如果 userA 和 userB 是一样的,ssh userB@remote 可以简化为 ssh remote

所以,你说的 “需要A有一个root@B对应的私钥”,并非如此

在这裏,A == userA,root == userB,B == remote

明显的,root 只需要在其 ~/.ssh/authorized_keys 裏有一行 A 的公钥就可以让 A 登录

A 不需要有 root 的私钥

>> B机器上~/.ssh/authorized_keys 存在 对应A有的私钥的公钥, 这样才能登陆.

是的

>> 这样, 也就是说, 我之前的操作("ssh name1"和 "ssh name2" ), 需要2个私钥才可以, 问题是现在只有一个.

问题在於,根据你的描述,name1 和 name2 是同一个物理机(等於 localhost 或 127.0.0.1)

所以

假设你目前的用户名字为 w,HOME 为 /home/w/

那麼

ssh name1 和 ssh name2 和 ssh localhost 和 ssh 127.0.0.1 和 ssh w@name1 等

在这裏都是一个意思

做的事情都是去查看你当前本地用户默认的 key 是否允许登录

也就是

本地用户 w 的 /home/w/.ssh/id_dsa 配对的 公钥 是否在要登录的机器的用户(在这裏也是同一个用户同一个机器)的允许名单(即 /home/w/.ssh/authorized_keys)裏

现在回到我壹开头问你的问题了,为什麼重要呢,因为你用的路径不是 openssh 默认会使用的路径,所以从表面看无法判断到底你最后 ssh name1 时,使用的是哪一对 key。

如果使用的是你提供的路径那个,即 ~/.ssh/dsa_root

那麼你第二次 keygen 的时候,虽然覆盖了第一次的 私钥,但配对的 公钥 也添加到 authorized_keys 了,所以可以登录,使用的是第二次 keygen 的 key pairs

也就是我 8 楼最后一段的意思

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值