如何通过SOCKS5代理与Ruby连接到FTP?

时间:2017-01-04 15:51:34

标签: ruby proxy ftp socks

我正在尝试使用ruby的库Net::FTP通过SOCKS5代理连接到FTP。文档说要设置env变量SOCKS_SERVER以便通过代理(http://ruby-doc.org/stdlib-2.0.0/libdoc/net/ftp/rdoc/Net/FTP.html#method-i-connect)进行连接,但似乎它不起作用。

我正在运行的代码是:

irb(main):054:0> ftp = Net::FTP.new
=> #<Net::FTP:0x007efd08c73768 @mon_owner=nil, @mon_count=0, @mon_mutex=#<Thread::Mutex:0x007efd08c73718>, @binary=true, @passive=true, @debug_mode=false, @resume=false, @sock=#<Net::FTP::NullSocket:0x007efd08c736f0>, @logged_in=false, @open_timeout=nil, @read_timeout=60>
irb(main):056:0> ENV['SOCKS_SERVER'] = 'host:port'
=> "host:port"
irb(main):055:0> ftp.connect('test.rebex.net')
=> nil
irb(main):057:0> ftp.login('demo', 'password')
=> true
irb(main):058:0> ftp.ls
=> ["10-27-15  03:46PM       <DIR>          pub", "04-08-14  03:09PM                  403 readme.txt"]

当我查看代理日志时,我看不到任何请求。

我做错了什么或有没有人如何实现这个目标?

0 个答案:

没有答案