我正在尝试建立从我的 FreeNAS 到我的 Web 服务器的传出 SSH 会话。我的托管服务需要 RSA 密钥才能进行 SSH 访问。
我已经使用生成了密钥ssh-keygen -t rsa
,并且已将公钥加载到我的托管服务 cPanel。
使用ssh-agent
,我得到:
setenv SSH_AUTH_SOCK /tmp/ssh-ctFGdCRTcscD/agent.18840;
setenv SSH_AGENT_PID 18841;
echo Agent pid 18841;
然后当我使用时ssh-add /{path to key}
我仍然收到错误Could not open a connection to your authentication agent.
如果我尝试 SSH 连接,我会得到Permission denied (publickey).
我错过了什么?
答案1
通过运行ssh-agent
,您可以启动它,但不能正确建立与它的连接。问题是子进程无法修改父进程的环境。预期的启动方式ssh-agent
是
eval `ssh-agent`
或者(启动一个具有该环境的新 shell):
ssh-agent /bin/bash
在这种情况下,您将正确设置环境,并且能够将您的密钥添加到您的ssh-agent
。