gpt4 book ai didi

ruby - 有人在 Ruby 1.9.3 下使用 FTPS/FTP::TLS 吗?

转载 作者:太空宇宙 更新时间:2023-11-03 15:03:58 25 4
gpt4 key购买 nike

我已经尝试了几个 gem、示例等,但无法正常工作,更有希望的 gem 是:double-bag-ftpsFTPFXP ,我可以连接,但我不能在主动或被动模式下传输文件..

使用 ftpfxp 的示例代码:

@conn2 = Net::FTPFXPTLS.new
@conn2.passive = true
@conn2.debug_mode = true
@conn2.connect('192.168.0.2', 990)
@conn2.login('myuser2', 'mypass2')
@conn2.chdir('/')
@conn2.get("data.txt")
@conn2.close

双包示例代码:

ftps = DoubleBagFTPS.new
ftps.ssl_context = DoubleBagFTPS.create_ssl_context(:verify_mode => OpenSSL::SSL::VERIFY_NONE)
ftps.connect('192.168.0.2')
ftps.login('myuser2', 'mypass2')
ftps.chdir('/')
ftps.get("data.txt")
ftps.close

双袋错误示例:

~/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/double-bag-ftps-0.1.0/lib/double_bag_ftps.rb:148:in `connect': Broken pipe - SSL_connect (Errno::EPIPE)

使用 ftpfxp 的示例错误:

~/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/net/ftp.rb:206:in `initialize': No route to host - connect(2) (Errno::EHOSTUNREACH)

有没有不涉及外部命令的推荐?

谢谢。

最佳答案

我已经解决了这个问题,服务器在尝试使用显式 tls 以被动模式连接时返回私有(private) IP 地址,因此我在 Double-Bag-FTPS 添加了一行以检查返回的 IP 是否为私有(private)回退到原始公共(public) IP 地址...

GitHub Pull request

所以如果有人有同样的问题,也许这就是答案希望这可以帮助其他人:)

关于ruby - 有人在 Ruby 1.9.3 下使用 FTPS/FTP::TLS 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15259199/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com