当前位置: 首页 > 面试题库 >

如何在Java中通过TLS / SSL(FTPS)服务器连接到FTP

凌波峻
2023-03-14
问题内容

我被困在通过TLS /
SSL(FTPS)服务器连接到FTP上。我正在通过SimpleFTP库使用能够连接不带SSL的FTP服务器,但无法连接FTPS的情况。

它在第2行(ftp.connect)上给了我这个错误,

连接到FTP服务器时,SimpleFTP收到未知响应:
220 ----------欢迎使用Pure-FTPd [privsep] [TLS] ----------

并正在使用下面的代码

SimpleFTP ftp = new SimpleFTP();

// Connect to an FTP server on port 21.
ftp.connect("xxx.xxx.xxx.xxx", 21, "username", "pwd");
//getting error at (ftp.connect) above line

// Set binary mode.
ftp.bin();

// Change to a new working directory on the FTP server.
ftp.cwd("web");
ftp.disconnect();

问题答案:

SimpleFTP班/库不支持TLS / SSL的。

使用FTPSClient类从Apache的共享网库代替。

见官方例子为FTPClient类,只是替换FTPClientFTPSClient

FTPSClient ftpClient = new FTPSClient();
ftpClient.connect(host);
ftpClient.login(user, password);

FTPSClient(推荐)类默认为一个明确的TLS / SSL。在极少数情况下,您需要使用隐式TLS / SSL,请使用new FTPSClient(true)



 类似资料:
  • 我无法通过TLS/SSL(FTPS)服务器连接到FTP。我正在使用SimpleFTP库,通过我可以连接没有SSL的FTP服务器,但不能连接FTPS。 它在第2行(ftp.connect)给出了这个错误, SimpleFTP连接到FTP服务器时收到未知响应: 220---------欢迎使用Pure-FTPd[privsep][TLS]--------- 并且正在使用下面的代码

  • 我试图理解Retheart文档的这部分内容,但无法理解:https://softinstigate.atlassian.net/wiki/spaces/rh/pages/9207828/installation+and+setup#installationandsetup-5.1connectreshearttomongodbovertls/ssl 使用keytool创建导入mongod使用的公共

  • 这就是第一台服务器的样子: 这是第二台服务器的样子: 第一台服务器运行良好,但当我试图运行第二台服务器时,我会得到follwing错误,这意味着到第一台服务器的连接失败。如果有人能帮助我,我会很高兴的!

  • 似乎正在发生的事情(这是我第一次处理FTP,尽管我以前处理过普通的FTP),是服务器在控制连接和数据连接上确保身份验证和加密的方式是,在建立控制连接和身份验证的“正常”TLS连接发生之后,每个数据连接都需要客户端与相同的TLS会话进行连接。这对我来说是有意义的,因为它应该如何工作,但Apache Commons Net FTPS实现似乎没有做到这一点。它似乎试图建立一个新的TLS会话,因此服务器拒

  • 我正在我的android应用程序中使用Apache Commons FTP库。 我正在使用带有JDK1.8的Android studio。 我很感激任何帮助,谢谢。

  • 问题内容: 我正在尝试使用mysql_connect从PHP通过SSL连接到远程MySQL服务器: 并得到最严重的错误: 我在my.cnf中添加了以下参数: 所以我可以使用终端从终端成功连接到远程mysql 因此,到mysql服务器的连接正常工作,据我了解,问题出在php / mysql合作中。可能我缺少一些参数。 不幸的是我不能使用mysqli lib,因为pdo_mysql有太多可用的适配器。