SSH忽略我的ForwardAgent配置?

SSH忽略我的ForwardAgent配置?,ssh,Ssh,我正在尝试为我正在开发的Web应用程序设置Capistrano,但在让代理转发工作时遇到了问题 这是我的~/.ssh/config: Host rs Hostname <ip of my server> ForwardAgent yes User root 如果我强制SSH允许带有-A标志的代理转发,那么我可以让它工作: $ ssh -Av deploy@<server> OpenSSH_6.2p2, OSSLShim 0.9.8r 8 Dec 2011 debu

我正在尝试为我正在开发的Web应用程序设置Capistrano,但在让代理转发工作时遇到了问题

这是我的
~/.ssh/config

Host rs
Hostname <ip of my server>
  ForwardAgent yes

User root
如果我强制SSH允许带有
-A
标志的代理转发,那么我可以让它工作:

$ ssh -Av deploy@<server>
OpenSSH_6.2p2, OSSLShim 0.9.8r 8 Dec 2011
debug1: Reading configuration data /Users/ulyssecarion/.ssh/config
debug1: Reading configuration data /etc/ssh_config
debug1: /etc/ssh_config line 20: Applying options for *
debug1: /etc/ssh_config line 102: Applying options for *

-- snip --

debug1: channel 0: new [client-session]
debug1: Requesting no-more-sessions@openssh.com
debug1: Entering interactive session.
debug1: Requesting authentication agent forwarding. # Note this additional line here
debug1: Sending environment.
debug1: Sending env LANG = en_US.UTF-8
Welcome to Ubuntu 12.04.3 LTS (GNU/Linux 3.8.0-29-generic x86_64)
$ssh-Av部署@
OpenSSH_6.2p2,OSSLShim 0.9.8r 2011年12月8日
debug1:正在读取配置数据/Users/ulyssecarion/.ssh/config
debug1:读取配置数据/etc/ssh\u config
debug1:/etc/ssh\u配置第20行:应用*
debug1:/etc/ssh\u配置行102:应用*
--剪断--
调试1:通道0:新建[客户端会话]
debug1:不再请求-sessions@openssh.com
debug1:进入交互式会话。
debug1:请求身份验证代理转发。#注意这里的这一行
debug1:发送环境。
debug1:发送env LANG=en_US.UTF-8
欢迎使用Ubuntu 12.04.3 LTS(GNU/Linux 3.8.0-29-generic x86_64)
(请注意,第二个示例中的日志还有一行,指示正在请求代理转发。)


这是正常的,还是我做错了什么?提前谢谢

关于设置ssh代理转发,ServerFault上有一些很好的信息。

我想指出的一点是,服务器上的ssh配置文件可能已经注释掉了ForwardAgent,但至少在我的配置文件中,它确实列出了ssh默认值。对于某些版本的openssh,似乎必须在服务器上设置AllowAgentForwarding选项。我发现这篇文章非常有用

检查ssh代理转发是否工作的方法是查看$ssh\u AUTH\u SOCK环境变量

回显“$SSH\u AUTH\u SOCK”

此块

Host rs
  HostName <ip of my server>
  ForwardAgent
  User root
在这种情况下,
ssh
知道应该用它来代替“rs”。在你的电话里

ssh -v deploy@<server>
ssh-v部署@
无论您使用什么作为
都与“rs”不匹配(因为只有文本字符串“rs”将匹配),因此块不适用


Host
选项的参数必须是与您在命令行上实际使用的主机名相匹配的模式。

您是否在命令行上使用“rs”作为主机名?否则,配置块不适用。几个小时后,这个答案帮助我解决了它。我的问题是,
Host example.com ForwardAgent yes
,然后是相应的别名缺失
ForwardAgent yes
ssh rs
ssh -v deploy@<server>