首页 文章

使用数字证书或私钥对FTP服务器进行FTPSClient身份验证

提问于
浏览
1

我有一个Java应用程序的工作原型,它使用Apache Commons Net FTPSClient通过SSL连接到FileZilla服务器(端口990是值得的) .

没问题 . 问题是,应用程序当前以用户名和密码的形式维护FTP用户的凭据 .

是否可以通过提供客户端证书/公钥来执行 FTP user 的身份验证(如在FTP登录中,而不仅仅是SSL协商/验证)?

我知道我可以用SCP或SFTP做到这一点,因为SSH服务器处理的很好 . 如果这是正确的解决方案,那么就这样吧,但我不想放弃FTPS,直到我理解为止 .

所以问题有两个部分:

a)是否有支持SSL(FTPS)和客户端身份验证/通过证书登录的FTP服务器的实现?

b)如何获得org.apache.commons.net.ftp.FTPSClient来做到这一点?

1 回答

  • 1

    a)是的,许多服务器通过证书支持客户端身份验证 . Windows上的CompleteFTP是一个,Unix上的ProFTPD是另一个 . 需要注意的一点是,端口990通常与隐式模式FTPS相关联,不推荐使用 .

    b)不确定FTPSClient,但在edtFTPj/PRO中很容易 . 有关howto,请参阅this link .

相关问题