我正在尝试为我所开发的Web应用程序设置Capistrano,并且我在让代理转发正常工作方面遇到了麻烦。
以下是我的~/.ssh/config
文件:
Host rs
Hostname <ip of my server>
ForwardAgent yes
User root
我认为默认设置并没有覆盖任何内容,因为ForwardAgent
从来没有被提及过(除了注释行)。
以下是我正常进行SSH时发生的情况:
$ ssh -v 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: 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命令中使用了
-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)
(请注意,第二个示例中的日志有一行额外的指示代理转发正在被请求。)
这是正常的吗?还是我做错了什么?谢谢!