Java FTPS 问题

标签 java apache ftps

仍然没有答案。感谢您提供任何帮助!

我正在使用 Apache Commons-Net3.1 并尝试让 FTPS 正常工作。当我尝试连接时,我在控制台中收到以下错误:

---编辑:代码和错误已更新---

java.net.ConnectException: Connection refused: connect
at java.net.DualStackPlainSocketImpl.connect0(Native Method)
at java.net.DualStackPlainSocketImpl.socketConnect(Unknown Source)
at java.net.AbstractPlainSocketImpl.doConnect(Unknown Source)
at java.net.AbstractPlainSocketImpl.connectToAddress(Unknown Source)
at java.net.AbstractPlainSocketImpl.connect(Unknown Source)
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.SocksSocketImpl.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at org.apache.commons.net.SocketClient.connect(SocketClient.java:171)
at org.apache.commons.net.SocketClient.connect(SocketClient.java:192)
at org.apache.commons.net.SocketClient.connect(SocketClient.java:285)

我确定我只是没有正确设置它。这是我的代码。在正确方向上的任何一点将不胜感激。 (顺便说一句,我正在尝试通过端口 990 进行连接)。 “client.connect(ftpHost);”行的代码错误

import org.apache.commons.net.ftp.FTPSClient;
import java.io.IOException;
import java.io.FileOutputStream;

public class MyFTP {
 public void downloadFTP(){

        FTPSClient client = new FTPSClient(false);

        FileOutputStream fos = null;
        client.setTrustManager(TrustManagerUtils.getAcceptAllTrustManager());

        try {
            client.connect(ftpHost);
            client.enterLocalPassiveMode();
            client.login(ftpUser, ftpPassword);


            String filename = "liveGUIfile.txt";
            fos = new FileOutputStream(filename);


            client.retrieveFile("/root/Desktop/" + filename, fos);
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            try {
                if (fos != null) {
                    fos.close();
                }
                client.disconnect();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }

    }
}

最佳答案

FTPS 可以是显式的也可以是隐式的,你使用显式:

FTPSClient client = new FTPSClient(false);

但显式通常使用 21 端口,如 FTP,而隐式使用 990 端口。所以尝试连接到 21 端口或使用 new FTPSClient(true)

关于Java FTPS 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11245335/

相关文章:

php - 根据包含 APR1-MD5 密码哈希值的文件检查输入的密码

java - 使用 commons-net 连接到 FTPS 服务器时为 "534 Policy requires SSL"

java - 在 POM.xml 中使用环境变量不起作用

java - 在默认浏览器中打开具有预定起点和终点的 Google map ?

java - 如何检查两个包是否由同一 key 签名?

php - Apache suExec 在 Plesk 11 中不工作 [仍在使用 www-data 默认用户]

php - (ZeroMQ 安装失败) zmq.so : undefined symbol: zend_new_interned_string

java - 从 FTPS 服务器检索文件时出现问题

perl - 使用 Net::Lite::FTP 时出错

java - 多线程环境下HashMap的使用,定时更新