来自Ruby on Rails应用程序的FTPS(TLS / SSL)

我有一个FTP服务器,它只通过运行FTPS(显式FTP over TLS)接受连接。 我需要能够使用Ruby on Rails应用程序连接到此。

有人知道这样做的方法吗? 我尝试过Net::FTP库,但这似乎不支持FTPS连接。

使用Net::FTPTLS怎么Net::FTPTLS

我使用Implicit / Explicit FTPS做了类似的事情,我使用了double-bag-ftps gem,我修补了它以支持ssl会话的重用。 这是许多ftps服务器的要求。

我把代码放在github上: https : //github.com/alain75007/double-bag-ftps

编辑:我想出了如何让它在本地运行,但我有问题让它在Heroku上运行。 这有点偏离这个问题,所以我创建了一个新问题:

使用FTPTLS的Heroku – SSL连接出错

 require 'net/ftptls' ftp = Net::FTPTLS.new() ftp.passive = true #make sure you define port_number ftp.connect('host.com', port_number) ftp.login('Username', 'Password') ftp.gettextfile('filename.ext', 'where/to/save/file.ext') ftp.close 

如果您想使用隐式FTPS,请尝试这个要点 。

对于显式FTP,您可以使用ruby gem ftpfxp

我使用双袋ftps实现了ftps解决方案

双袋FTPS