[714] | 1 | == Requirements == |
---|
| 2 | |
---|
| 3 | 1. BASE 2.8.0 or later. |
---|
| 4 | |
---|
| 5 | == Introduction == |
---|
| 6 | |
---|
| 7 | This package is an extension package to BASE that installs a small FTP |
---|
| 8 | server as part of the web server. The code in this package currently |
---|
[741] | 9 | uses beta software from the Apache foundation. Thus, we can't make |
---|
[714] | 10 | any guarantee about functionality or stability of this extension. We recommend |
---|
| 11 | testing on a development server before using this software in a production |
---|
| 12 | environment. For the same reason we can't make any promises about API |
---|
| 13 | compatibility between releases. The API may change at any time. |
---|
| 14 | |
---|
| 15 | * The homepage for this extension: |
---|
| 16 | http://baseplugins.thep.lu.se/wiki/net.sf.basedb.ftp |
---|
| 17 | * The Apache FTP server site: |
---|
[741] | 18 | http://mina.apache.org/ftpserver/index.html |
---|
[714] | 19 | |
---|
| 20 | == Installation == |
---|
| 21 | |
---|
| 22 | 1. Download the `base-ftpserver-*.tar.gz` file. |
---|
| 23 | 2. Unpack the downloaded file to a directory of your choice. |
---|
[741] | 24 | 3. Copy the `ftp-config.xml` file to `WEB-INF/classes` directory. |
---|
| 25 | 4. The default `ftp-config.xml` file creates a regular FTP service with the |
---|
| 26 | control connection on port 2121. There is also an example of an |
---|
| 27 | SSL-enabled configuration. For more information about configuration |
---|
| 28 | options see: http://mina.apache.org/ftpserver/documentation.html |
---|
[714] | 29 | 5. Copy the `base-ftpserver.jar` file and the `lib` directory, including sub- |
---|
| 30 | directories and files, to your BASE extensions directory, `WEB-INF/extensions`. |
---|
[717] | 31 | 6. Run the `Extensions -> Manual scan` command to install the extension. If you |
---|
[714] | 32 | have enabled automatic installation, just sit back and wait for it to find |
---|
| 33 | the FTP server extension. |
---|
| 34 | 7. The FTP Server should now be running, but it only allows the root user to |
---|
| 35 | login. To enable other users to login you have to start an FTP client, connect |
---|
| 36 | to your BASE FTP server and login as root. This will register the FTP server |
---|
| 37 | as a new client application that is shared to `Everyone`. To limit which users |
---|
| 38 | that can access the FTP server go to `Adminstrate -> Clients` and change the |
---|
| 39 | sharing options for the FTP Server. |
---|
| 40 | 8. Done. |
---|
| 41 | |
---|
[741] | 42 | == Known issues == |
---|
[714] | 43 | |
---|
[717] | 44 | * BASE allows that a directory has the same name as a file. This may confuse |
---|
| 45 | FTP clients since that is normally not allowed. The result for certain |
---|
| 46 | operations is undefined for files and directories that has the same name. |
---|
[714] | 47 | |
---|
[741] | 48 | == Tips and tricks == |
---|
| 49 | |
---|
| 50 | * If you want to try out an SSL enabled FTP server, but doesn't have |
---|
| 51 | a certificate, you may create one with the following command: |
---|
| 52 | |
---|
| 53 | `keytool -genkey -keystore test.jks -storetype JKS -storepass test -keypass test -alias test` |
---|
| 54 | |
---|
[714] | 55 | == Compiling == |
---|
| 56 | |
---|
| 57 | To compile this package you also need: |
---|
| 58 | |
---|
| 59 | 1. Ant 1.6 |
---|
| 60 | 2. Java 1.6 |
---|
| 61 | |
---|
| 62 | Follow these instructions: |
---|
| 63 | |
---|
| 64 | 1. Download the source code from the subversion repository. See |
---|
| 65 | http://baseplugins.thep.lu.se/wiki/net.sf.basedb.ftp for instructions. |
---|
| 66 | |
---|
| 67 | 2. Type `ant download-lib` to automatically download the BASE core JAR file that |
---|
| 68 | are neeed for compilation. You can also do this manually by copying the |
---|
| 69 | BASE2Core.jar and BASE2Webclient.jar from the BASE installation directory |
---|
| 70 | (`<basedir>/www/WEB-INF/lib/`) to the `./lib/compile` directory. |
---|
| 71 | |
---|
| 72 | 3. Type `ant` to compile the code and generate the `base-ftpserver.jar` file |
---|
| 73 | in the project directory. |
---|
| 74 | |
---|
| 75 | 4. Use `ant package` to create a downloadable tar.gz package. |
---|
| 76 | |
---|
| 77 | Tip: If you need different values for any of the properties defined in |
---|
| 78 | the 'build.xml' file, create a file named 'build.properties' and set |
---|
| 79 | the values there. |
---|