使用Apache FtpServer搭建FTP服务器 [FlashFXP]
前言
FTP服务器很多朋友都选用Serv-U,一般都是找的破解版或免费使用30天的版本,这里推荐一款免费开源而且
声明
欢迎转载,但请保留文章原始出处:)
博客园:http://www.cnblogs.com
农民伯伯: http://over140.cnblogs.com
正文
一、介绍
Apache FtpServer是一个基于Apache MINA(一个高性能的Java异步并发网络通讯框架)开发的FTP 服务器。 既可以嵌到Java应用中使用,也可以做为Windows服务或Unix/Linux Daemon单独运行。此外还提供与Spring相集成的模块。(摘自www.open-open.com)
二、 准备
下载地址:http://mina.apache.org/ftpserver/downloads.html
本文使用1.0.6版本,点这里直接下载。
三、 配置
参照 四、参考文章 里面来配置, - - # 这里偷懒就不重复了,这里主要将两个问题:
3.1 配置Pasv模式
如果服务器 启用了TCP/IP 筛选,那按文章来是连不上的,这里需要补充一点FTP的知识,FTP有两种连接方式:主动连接模式和被动连接模式(Pasv),这里主要说Pasv模式:客户端会随机获取一个大于1024的端口来与FTP服务器端的端口21连接,完成连接后客户端通过这个连接来对FTP服务器下达指令。明白原理,就可以开始动手了:
3.1.1 在TCP/IP筛选中打开端口21和1886(可自行设置其他端口)
3.1.2 修改配置文件,如下:
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="
http://mina.apache.org/ftpserver/spring/v1 http://mina.apache.org/ftpserver/ftpserver-1.0.xsd
"
id="myServer"
max-logins="5"
anon-enabled="false"
max-anon-logins="0"
max-login-failures="3"
login-failure-delay="30000">
<listeners>
<nio-listener name="default" port="21">
<ssl>
<keystore file="./res/ftpserver.jks" password="password" />
</ssl>
<data-connection idle-timeout="60">
<active local-port="1886" />
<passive ports="1886" />
</data-connection>
</nio-listener>
</listeners>
<file-user-manager file="./res/conf/myusers.properties" encrypt-passwords="clear"/>
</server>
保存重新启动即可。首先FTP服务器是需要两个端口,一个上传端口,一个下载端口,所以只启用一个端口是不行的,这里固定了下载端口为1886。
3.2 设置目录
设置FTP为盘符根目录办法:
注意不带斜杠。
四、参考文章
apache-ftpserver快速入门(windows平台)
结束
比起破解的Serv-U,还是更喜欢开源,使用方便,配置简单,欢迎大家也来试试吧。对了,还有一个中文文件夹显示乱码的问题,搜了一下都要改源码,就懒得动了,等升级解决吧,或者有知道简单办法的欢迎分享。