<server xmlns="http://mina.apache.org/ftpserver/spring/v1"
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服务器很多朋友都选用Serv-U,一般都是找的破解版或免费使用30天的版本,这里推荐一款免费开源而且

简单好用的FTP软件:Apache FtpServer,以下是搭建过程。

声明

  欢迎转载,但请保留文章原始出处:)

    博客园: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  修改配置文件,如下:

      保存重新启动即可。首先FTP服务器是需要两个端口,一个上传端口,一个下载端口,所以只启用一个端口是不行的,这里固定了下载端口为1886。

    3.2  设置目录

      设置FTP为盘符根目录办法:

      ftpserver.user.myusername.homedirectory=F:

      注意不带斜杠。

  四、参考文章

    使用Apache FtpServer搭建FTP服务器

    apache-ftpserver快速入门(windows平台)

    Apache FtpServer配置详解[百度文库]

    浅析FTP的工作原理

结束

  比起破解的Serv-U,还是更喜欢开源,使用方便,配置简单,欢迎大家也来试试吧。对了,还有一个中文文件夹显示乱码的问题,搜了一下都要改源码,就懒得动了,等升级解决吧,或者有知道简单办法的欢迎分享。

使用Apache FtpServer搭建FTP服务器 [FlashFXP]的更多相关文章

  1. 使用apache ftpserver搭建ftp服务器

    作为一个javaer,遇到任何问题,先查一下java中的解决方案.地球上的许多事情,在java中都能找到完美的解决方案.之前搭建ftp服务器使用的是vsftpd,现在可以把它卸掉了,它以服务的形式运行 ...

  2. 利用apache ftpserver搭建ftp服务器

    操作环境: win2012r2 x64 datacenter Apache FtpServer 1.2.0 Java SE Development Kit 8u333 commons-dbcp2-2. ...

  3. 利用Serv-U搭建FTP服务器

    以前在学校的时候,学校的整个宿舍楼都是在一个局域网中,经常有人用个人电脑搭个网站或者FTP啊什么的,主要是进行一些影视资源的传播活动.不乏 有些资源充沛的有志青年利用业余时间翻译某岛国影视资源,利用局 ...

  4. pyftpdlib 搭建FTP服务器

    学会socket之后,就可以使用应用层的协议了,比如FTP,HTTP等,不过一般这些应用层都会有现成的模块,学不学socket都无所谓,这是python的方便之处.这里搭建FTP服务器使用的就是pyf ...

  5. Linux中搭建FTP服务器

    FTP工作原理 (1)FTP使用端口 [root@localhost ~]# cat /etc/services | grep ftp ftp-data 20/tcp #数据链路:端口20 ftp 2 ...

  6. Windows下IIS搭建Ftp服务器

    第一步:启用Windows IIS Web服务器 1.1 控制面板中找到"程序"并打开 1.2 程序界面找到"启用或关闭Windows功能"并打开 1.3 上面 ...

  7. Python一秒搭建ftp服务器,帮助你在局域网共享文件【华为云技术分享】

    版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/devcloud/article/detai ...

  8. Python一秒搭建ftp服务器,帮助你在局域网共享文件

    "老板 来碗面" "要啥面?" "内牛满面.." 最近项目上的事情弄得人心累,本来是帮着兄弟项目写套入口代码,搞着搞着就被拉着入坑了.搞开发 ...

  9. Python黑科技:6行代码轻松搭建FTP服务器

    Python 黑科技 六行代码轻松搭建个人FTP服务器 什么是FTP服务器? FTP (File Transfer Protocol) 是一个用于客户端与服务器之间文件的协议.利用FTP我们就能做到在 ...

随机推荐

  1. JavaScript作用域闭包(你不知道的JavaScript)

    JavaScript闭包.是JS开发project师必须深入了解的知识. 3月份自己曾撰写博客<JavaScript闭包>.博客中仅仅是简单阐述了闭包的工作过程和列举了几个演示样例,并没有 ...

  2. Logstash读写性能调整优化

    继续

  3. node:json与csv互转

    [单个文件的转化]   1.安装json2csv模块将json转成csv   jsonToCSV.js var fs = require('fs'); const Json2csvParser = r ...

  4. codeforces 1037E. Trips(倒叙)

    题目传送门: 解题思路: 正着搞好像有点恶心. 反着搞. 一边删一边搞,从崩坏的地方开始,入度--. 最后dfs崩坏,更新答案. 注意要把边删掉防止重复崩坏. 代码: #include<cstd ...

  5. 2. Dubbo和Zookeeper的关系

    转自:https://www.cnblogs.com/hirampeng/p/9540243.html Dubbo建议使用Zookeeper作为服务的注册中心. 1.   Zookeeper的作用: ...

  6. JS截取字符串 charAt(),slice(),substring(),substr()

    1. charAt(i)输出指定下标的字母,长度为1,适用于把字符串切割成单个字符串. 2. slice() 和 substring() 都支持1-2个参数,第一个参数是开始位置,第二个参数是结束位置 ...

  7. vue实现多语言国际化(vue-i18n),结合element ui、vue-router、echarts以及joint等。

    老板说我们的项目要和国际接轨,于是乎,加上了多语言(vue-i18n).项目用到的UI框架是element ui ,后续echarts.joint等全都得加上多语言. 一.言归正传,i18n在vue项 ...

  8. Redis的高级应用-安全性和主从复制

    Redis的服务器命令和键值命令(String,Hash,List,Set,Zset)相对简单,只需查看文档即可. 文档地址: http://www.runoob.com/redis/redis-tu ...

  9. 00087_File

    1.IO概述 (1)要把数据持久化存储,就需要把内存中的数据存储到内存以外的其他持久化设备(硬盘.光盘.U盘等)上: (2)当需要把内存中的数据存储到持久化设备上这个动作称为输出(写)Output操作 ...

  10. Java基础学习总结(52)——Liunx系统Centos上搭建Java开发环境

    一.安装jdk 1.查看Linux自带的JDK是否已安装 [plain] view plain copy print? java –version 如果出现openjdk,最好还是先卸载掉openjd ...