Apache FtpServer使用讲解

 一、介绍

Apache Ftp Server 是100%纯Java的FTP服务器软件,它采用MINA网络框架开发具有非常好的性能。Apache FtpServer 既可以嵌到Java应用中使用,也可以做为Windows服务或Unix/Linux Daemon单独运行。此外还提供与Spring 相集成的模块。

二、

环境搭建

(1)下载
http://mina.apache.org/ftpserver/downloads.html地址,进入 “Apache FtpServer 1.0.5 Release” 版本,根据操作系统的不同下载对应的安装包。
 
(2)安装
Linux/Unix系统,则执行tar  -xzvf ftpserver-1.0.5.tar.gz。

windows系统,则用解压工具解压。


三、配置文件

%FTP_HOME%——FTP安装根目录
修改配置文件 %FTP_HOME% \res\conf\ftpd-full.xml


四、连接数据库

在%FTP_HOME%/common /lib下添加jar包

commons-dbcp-1.2.2.jar
mysql-connector-java-5.1.5-bin.jar(mysql jdbc)
commons-pool-1.3.jar


五、启动Apache FtpServer

Linux: 
cd  %FTP_HOME%
bin/ftpd.sh res/conf/ftpd-full.xml
 
Windows:
cd  %FTP_HOME%
bin/ftpd.bat res/conf/ftpd-full.xml


六、查看日志

路径:%FTP_HOME%\res\log\ftpd.log

 七、修改表结构,源码

CREATE TABLE FTP_USER (     
  userid VARCHAR(64) NOT NULL PRIMARY KEY,   -- 用户id   
  userpassword VARCHAR(64),      -- 用户密码
  homedirectory VARCHAR(128) NOT NULL,      -- 路径
  enableflag BOOLEAN DEFAULT TRUE,    -- 用户可用标记
  writepermission BOOLEAN DEFAULT FALSE,    -- 是否可写标记  
  idletime INT DEFAULT 0,             -- 空闲时间
  uploadrate INT DEFAULT 0,         -- 上传文件速率   
  downloadrate INT DEFAULT 0,    -- 下载文件速率
  maxloginnumber INT DEFAULT 0,  -- 用户最大登录数
  maxloginperip INT DEFAULT 0,     -- 每个ip最大登录数
  sourceip  VARCHAR2(64)  -- 源IP地址
);

%FTP_HOME%/common/lib中的ftpserver-core-1.0.5.jar 下:

org\apache\ftpserver\usermanager\impl\DbUserManager.class
org\apache\ftpserver\usermanager\impl\ AbstractUserManager.class

一些可配置的东西放在apache-ftpserver-1.0.x\res\conf文件夹里面

users.properties文件存放的是用户名及密码权限等配置信息

用户名为anonymous

#密码为空
tpserver.user.anonymous.userpassword=
#主目录
ftpserver.user.anonymous.homedirectory=./res/home
#当前用户可用
ftpserver.user.anonymous.enableflag=true
#具有上传权限
ftpserver.user.anonymous.writepermission=true
#最大登陆用户数为20
ftpserver.user.anonymous.maxloginnumber=20
#同IP登陆用户数为2
ftpserver.user.anonymous.maxloginperip=2
#空闲时间为300秒
ftpserver.user.anonymous.idletime=300
#上传速率限制为48字节每秒
ftpserver.user.anonymous.uploadrate=4800
#下载速率限制为48字节每秒
ftpserver.user.anonymous.downloadrate=4800

能够通过修改users.properties文件来添加和管理用户及权限等信息。

 

Apache Ftp Server 重要的用途其实是作为一种灵活的嵌入式文件传输方案来使用, 单纯作为FTP来说他的性能也是非常好的,800并发上传文件没有任何问题(linux 4cpu 4g mem scsi)

猜你喜欢

转载自gongsy.iteye.com/blog/1466024