source: extensions/net.sf.basedb.ftp/trunk/README

Last change on this file was 2312, checked in by Nicklas Nordborg, 9 years ago

Fixes #589: FTP service should install client item when service is started first time

And also some incorrect links to the Apache FTP server page.

  • Property svn:mime-type set to text/x-trac-wiki
File size: 3.4 KB


  1. BASE 3.3 or later.


This package is an extension package to BASE that installs a small FTP server as part of the web server. It uses the Apache FTP Server library for the actual handling of the FTP protocol.


  1. Download the base-ftpserver-*.tar.gz file.
  2. Unpack the downloaded file to a directory of your choice.
  3. Copy the ftp-config.xml file to WEB-INF/classes directory.
  4. The default ftp-config.xml file creates a regular FTP service with the control connection on port 2121. There is also an example of an SSL-enabled configuration. For more information about configuration options see:
  5. Copy the 'base-ftpserver.jar' file to your BASE plug-ins directory.

Look in your 'base.config' file if you don't know where this is.

  1. Go to 'Administrate->Plug-ins & Extensions->Overview' page.
  2. Run the installation wizard and select to install 'base-ftpserver.jar'.
  3. The FTP Server should now be running. By default all users are allowed to login. To limit which users that can access the FTP server go to Administrate -> Clients and change the sharing options for the FTP Server.
  4. Done.

Known issues

  • BASE allows that a directory has the same name as a file. This may confuse FTP clients since that is normally not allowed. The result for certain operations is undefined for files and directories that has the same name.
  • BASE-files that are a link to an external URL will show up as read-only in the FTP-server. If the file size of an external file is not known it is shown as 0 in the FTP server.

Tips and tricks

  • To activate a project when logging in via FTP, use a login name like username<projectname>, where username is the usual login and projectname is the name of the project to set active. This is useful to access files that has been shared to a project, but note that the path must be accessible all they way from the root. If no project with the given name can be found, the user is logged in without an active project.
  • If you want to try out an SSL enabled FTP server, but doesn't have a certificate, you may create one with the following command:

keytool -genkey -keystore test.jks -storetype JKS -storepass test -keypass test -alias test


To compile this package you also need:

  1. Ant 1.8
  2. Java 1.7

Follow these instructions:

  1. Download the source code from the subversion repository. See for instructions.

  1. Type ant download-lib to automatically download the BASE core JAR file that are neeed for compilation. You can also do this manually by copying the base-core-3.x.jar and base-webclient-3.x.jar from the BASE installation directory (<basedir>/www/WEB-INF/lib/) to the ./lib/compile directory.
  1. Type ant to compile the code and generate the base-ftpserver.jar file in the project directory.
  1. Use ant package to create a downloadable tar.gz package.

Tip: If you need different values for any of the properties defined in the 'build.xml' file, create a file named '' and set the values there.

Note: See TracBrowser for help on using the repository browser.