views:

621

answers:

1

I have a working prototype of a Java application that is using Apache Commons Net FTPSClient to connect to a FileZilla server over SSL (port 990 for what it is worth).

No problem. The problem is, the application is currently maintaining the credentials of the FTP user in the form of a username and password.

Is it possible to perform authentication of the FTP user (as in FTP login, not just SSL negotiation/validation) by supplying a client certificate/public key?

I know I can do this with SCP or SFTP because the SSH server handles that just great. If that's the right solution then so be it, but I don't want to give up on FTPS until I understand.

So question has two parts:

a) are there any implementations of FTP servers that support SSL (FTPS) and client authentication/login via certificate?

b) How to get org.apache.commons.net.ftp.FTPSClient to do this?

A: 

a) Yes plenty of servers support client authentication via certificate. CompleteFTP on Windows is one, ProFTPD on Unix is another. One thing to note though is that port 990 is normally associated with implicit mode FTPS, which is deprecated.

b) Not sure about FTPSClient, but easy to do in edtFTPj/PRO. See this link for a howto.

Bruce Blackshaw