当我在本地执行 运行 命令时,未加载 ssh-agent
ssh-agent isn't loaded when i run command locally
我想从我的 Mac 部署一个应用程序到我的 ubutun 18.04 服务器。问题是当我去我的服务器并执行一个简单的命令时 ssh -T git@bitbucket.org 一切正常。它不问我的密码等...
但是当我 运行 命令
ssh deploy@ipofmyserver 'ssh -T git@bitbucket.org'
我遇到了这个错误:
git@bitbucket.org: Permission denied (publickey).
我的 ssh 密钥已生成并通知我的 bitbucket 帐户。
我注意到当我使用 ssh deploy@... 连接时,用户代理没有启动。当我 运行 命令
ssh deploy@... 'eval `ssh-agent -s` && ssh-add && ssh -T git@bitbucket.org'
它询问我的密码,我得到了可以连接的响应。
我尝试使用此解决方案来使用用户代理 运行ning : https://github.com/wwalker/ssh-find-agent 但它不起作用。
有什么解决办法吗?
I try to use this solution to use a user-agent already running : https://github.com/wwalker/ssh-find-agent but it doesn't work.
如果按照记录,您尝试在 ~/.bashrc
或 ~./.zshrc
中使用 . ssh-find-agent.sh
,那将不起作用。
您问题的核心(ssh inside ssh)是 [ssh 会话将显示为:
~/.bash_profile
在交互式会话中(不是 .bashrc
)
- 非交互式会话中没有任何内容 (
ssh user@server 'a command'
)
您至少应该找到 .bash
(rc
或 _profile
)来触发 . ssh-find-agent.sh
并查看它是否找到您的 ssh 代理(已经 运行, 密码已经输入)
如果您必须输入密码,您可能需要expect
as shown at the end of this answer。
采购.profile
(而非 .bash_profile
)的OP jean-max confirms 足以使. ssh-find-agent.sh
工作。
chepner mentions the ssh -J
"jump host" option,这里是动态的:
ssh -J deploy@ipfmyserver git@bitbucket.org
我想从我的 Mac 部署一个应用程序到我的 ubutun 18.04 服务器。问题是当我去我的服务器并执行一个简单的命令时 ssh -T git@bitbucket.org 一切正常。它不问我的密码等... 但是当我 运行 命令
ssh deploy@ipofmyserver 'ssh -T git@bitbucket.org'
我遇到了这个错误:
git@bitbucket.org: Permission denied (publickey).
我的 ssh 密钥已生成并通知我的 bitbucket 帐户。
我注意到当我使用 ssh deploy@... 连接时,用户代理没有启动。当我 运行 命令
ssh deploy@... 'eval `ssh-agent -s` && ssh-add && ssh -T git@bitbucket.org'
它询问我的密码,我得到了可以连接的响应。 我尝试使用此解决方案来使用用户代理 运行ning : https://github.com/wwalker/ssh-find-agent 但它不起作用。
有什么解决办法吗?
I try to use this solution to use a user-agent already running : https://github.com/wwalker/ssh-find-agent but it doesn't work.
如果按照记录,您尝试在 ~/.bashrc
或 ~./.zshrc
中使用 . ssh-find-agent.sh
,那将不起作用。
您问题的核心(ssh inside ssh)是 [ssh 会话将显示为:
~/.bash_profile
在交互式会话中(不是.bashrc
)- 非交互式会话中没有任何内容 (
ssh user@server 'a command'
)
您至少应该找到 .bash
(rc
或 _profile
)来触发 . ssh-find-agent.sh
并查看它是否找到您的 ssh 代理(已经 运行, 密码已经输入)
如果您必须输入密码,您可能需要expect
as shown at the end of this answer。
采购.profile
(而非 .bash_profile
)的OP jean-max confirms . ssh-find-agent.sh
工作。
chepner mentions ssh -J
"jump host" option,这里是动态的:
ssh -J deploy@ipfmyserver git@bitbucket.org