gpt4 book ai didi

linux - 以不同用户身份运行钥匙串(keychain)

转载 作者:太空宇宙 更新时间:2023-11-04 09:48:30 24 4
gpt4 key购买 nike

为了稍微提高安全性,我想以不同的用户身份运行 keychain 代理。这将防止劫持我的系统的用户获得实际的私钥,同时保持使用它来验证 sshscp 连接的能力。

我尝试了什么?

我创建了一个名为 agent 的用户,他应该存储私钥并运行 ssh-agent 进程。我创建了一个脚本文件来为套接字设置正确的权限:

#!/bin/sh
export EVAL=$(keychain --eval -q)
eval $EVAL
chmod 770 $(dirname $SSH_AUTH_SOCK) $(dirname $GPG_AGENT_INFO)
chmod 660 $SSH_AUTH_SOCK $(echo $GPG_AGENT_INFO | sed 's/:.*//')
echo $EVAL

然后在我的 .bashrc 中调用那个,评估它。

但是当我现在通过 ssh 连接到服务器时,我得到了

$ ssh server
Error reading response length from authentication socket.

有什么提示吗?

最佳答案

keychain 似乎使用已经在运行的 ssh-agentgpg-agent,并在需要时启动一个。

ssh-agent 检查正在运行的进程的用户 ID 是否与通过 unix 域套接字连接的用户的 ID 匹配(root 除外)。如果您在 Debug模式下运行代理,您将看到相应的错误消息。在这种情况下,套接字会立即关闭,因此您会收到上面提到的错误消息 - 您可能正在系统上使用 ssh-agent。这意味着使用 ssh-agent 无法执行您尝试执行的操作(除非您不对其进行修改)。

如果您使用带有 --enable-ssh-support 选项的 gpg-agent 作为 ssh-agent 的替代品,它应该可以工作,但您应该知道,此设置并不能真正提高安全性。使用您尝试设置的权限,它将允许每个有权访问套接字的用户在解锁后使用添加的 key 进行身份验证,因此它实际上不太安全。

关于linux - 以不同用户身份运行钥匙串(keychain),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13691492/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com