我正在使用 Ubuntu 服务器 10.04。
ssh-add /foo/cert.pem
输出结果如下:
无法打开与您的身份验证代理的连接。
这些是我正在运行的进程:
ps -aux | grep ssh
Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html
root 1523 0.0 0.0 49260 632 ? Ss Dec25 0:00 /usr/sbin/sshd
root 10023 0.0 0.3 141304 6012 ? Ss 12:58 0:00 sshd: padmin [priv]
padmin 10117 0.0 0.1 141304 2400 ? S 12:58 0:00 sshd: padmin@pts/1
padmin 11867 0.0 0.0 7628 964 pts/1 S+ 13:06 0:00 grep --color=auto ssh
root 31041 0.0 0.3 141264 5884 ? Ss 11:24 0:00 sshd: padmin [priv]
padmin 31138 0.0 0.1 141264 2312 ? S 11:25 0:00 sshd: padmin@pts/0
root 31382 0.0 0.3 139240 5844 ? Ss 11:26 0:00 sshd: padmin [priv]
padmin 31475 0.0 0.1 139372 2488 ? S 11:27 0:00 sshd: padmin@notty
padmin 31476 0.0 0.0 12468 964 ? Ss 11:27 0:00 /usr/lib/openssh/sftp-server
这些是我的环境变量:
$ env | grep SSH
SSH_CLIENT=192.168.1.13 42626 22
SSH_TTY=/dev/pts/1
SSH_CONNECTION=192.168.1.13 42626 192.168.1.2 22
出了什么问题?为什么我无法添加任何身份?
答案1
您需要先运行 ssh-agent。您将收到如下输出:
SSH_AUTH_SOCK=/tmp/ssh-mZueDP7822/agent.7822; export SSH_AUTH_SOCK;
SSH_AGENT_PID=7823; export SSH_AGENT_PID;
echo Agent pid 7823;
现在只需将其粘贴到您的终端并添加您的密钥。
答案2
当然 atx 的答案是正确的,但是您可以使用 eval 运行 ssh-agent,而不是复制。
eval `ssh-agent -s`
答案3
您还可以使用以下语法:
ssh-agent sh -c 'ssh-add /foo/cert.pem && echo Do some stuff here.'