ColdFusion FTP显式TLS

时间:2013-05-16 09:50:16

标签: coldfusion ftp ftps

是否可以使用Explicit TLS进行ColdFusion FTP连接?

我在Google上搜索过但无济于事。

2 个答案:

答案 0 :(得分:3)

Apache Commons也有一个FTPSClient类,我认为它已经在Coldfusion的更高版本中可用了。

只是添加一个例子。它使用我发现可用的测试服务器。我使用的是CF 9.0.2,无需下载任何额外的罐子。

ftpsClient = CreateObject("java","org.apache.commons.net.ftp.FTPSClient").init(JavaCast("boolean",true));
ftpsClient.connect(JavaCast("string","ftp.secureftp-test.com"),990);
connected = ftpsClient.isConnected();

WriteOutput("Is Connected:" &  connected & '<br/>');

login = ftpsClient.login('test','test');
WriteOutput("Is Logged in:" &  login & '<br/>');


ftpsClient.logout();
ftpsClient.disconnect();
connected = ftpsClient.isConnected();

WriteOutput("Is Connected:" &  connected & '<br/>');

答案 1 :(得分:1)

除非CF10中的内容发生变化,CFFTP支持secure FTP,但不支持SFTPFTPS。您可能需要使用FTP4J中提到的this blog之类的Java库。

来自FTP4J documentation

  

FTPS / FTPES安全连接

     

ftp4j库支持两种FTPS   (基于隐式TLS / SSL的FTP)和FTPES(基于显式TLS / SSL的FTP)。

     

setSecurity()方法可用于打开功能:

     

client.setSecurity(FTPClient.SECURITY_FTPS); //启用FTPS   的 client.setSecurity(FTPClient.SECURITY_FTPES); //启用FTPES

正如Miguel-F所指出的,如果你在这两行上切换注释,它应该启用FTPES。

//FTPClient.setSecurity(FTPClient.SECURITY_FTPES); // enables FTPES
FTPClient.setSecurity(FTPClient.SECURITY_FTPS); // enables FTPS