springboot上传文件映射路径(Ftpserver文件服务器功能讲解-Filezilla客户端)

今日分享

每天分享技术实战干货,技术在于积累和收藏,希望可以帮助到您。

架构开源地址:https://gitee.com/msxy

评论转发

什么是Apache Ftpserver

Apache FtpServer是100%纯Java FTP服务器。它被设计为基于当前可用的开放协议的完整且可移植的FTP服务器引擎解决方案。FtpServer可以作为Windows服务或Unix / Linux守护程序独立运行,也可以嵌入Java应用程序中。我们还提供对Spring应用程序内集成的支持,并以OSGi捆绑软件的形式提供我们的发行版。默认的网络支持基于高性能异步IO库Apache MINA。使用MINA,FtpServer可以扩展到大量并发用户。

Apache ftpserver特性
  • 100%纯Java,免费的开源可恢复FTP服务器
  • 多平台支持和多线程设计。
  • 用户虚拟目录,写入权限,空闲超时和上传/下载带宽限制支持。
  • 匿名登录支持。
  • 上传和下载文件都是可恢复的。
  • 处理ASCII和二进制数据传输。
  • 支持IP限制以禁止IP。
  • 数据库和文件可用于存储用户数据。
  • 所有FTP消息都是可定制的。
  • 隐式/显式ssl / TLS支持。
  • MDTM支持-您的用户可以更改文件的日期时间戳。
  • “模式Z”支持更快地上传/下载数据。
  • 可以轻松添加自定义用户管理器,IP限制器,记录器。
  • 可以添加用户事件通知(Ftplet)。
Apache ftpserver部署使用

部署演示是在window机器上,linux服务器运行与window运行大同小异,参考即可。

Apache Ftpserver下载

下载地址:

根据需要下载对应版本的部署包:https://mina.apache.org/ftpserver-project/downloads.html

或者点击https://dlcdn.apache.org/mina/ftpserver/1.2.0/apache-ftpserver-1.2.0-bin.zip 直接下载。

下载后,解压到当前文件夹:

springboot上传文件映射路径(Ftpserver文件服务器功能讲解-Filezilla客户端)(1)

springboot上传文件映射路径(Ftpserver文件服务器功能讲解-Filezilla客户端)(2)

配置users.properties文件

例如配置一个qingfeng用户: #密码 配置新的用户 ftpserver.user.qingfeng.userpassword=123456 #主目录,这里可以自定义自己的主目录 ftpserver.user.qingfeng.homedirectory=./res/qingfeng-home #当前用户可用 ftpserver.user.qingfeng.enableflag=true #具有上传权限 ftpserver.user.qingfeng.writepermission=true #最大登陆用户数为20 ftpserver.user.qingfeng.maxloginnumber=20 #同IP登陆用户数为2 ftpserver.user.qingfeng.maxloginperip=2 #空闲时间为300秒 ftpserver.user.qingfeng.idletime=300 #上传速率限制为480000字节每秒 ftpserver.user.qingfeng.uploadrate=48000000 #下载速率限制为480000字节每秒 ftpserver.user.qingfeng.downloadrate=48000000

springboot上传文件映射路径(Ftpserver文件服务器功能讲解-Filezilla客户端)(3)

配置ftpd-typical.xml文件

<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 https://mina.apache.org/ftpserver-project/ftpserver-1.0.xsd " id="myServer"> <listeners> <nio-listener name="default" port="2121"> <!--<ssl> <keystore file="./res/ftpserver.jks" password="password" /> </ssl>--> <!--注意:如果要支持外网连接,需要使用被动模式passive,默认开启主动模式--> <data-connection idle-timeout="60"> <!--<active enabled="true" ip-check="true" />--> <passive ports="2000-2222" /> </data-connection> <!--添加ip黑名单--> <blacklist>127.0.0.2</blacklist> </nio-listener> </listeners> <file-user-manager file="./res/conf/users.properties" encrypt-passwords="clear"/> </server>

springboot上传文件映射路径(Ftpserver文件服务器功能讲解-Filezilla客户端)(4)

启动服务

打开cmd并cd到bin路径执行.\ftpd.bat res/conf/ftpd-typical.xml,看到如下状态说明启动成功

springboot上传文件映射路径(Ftpserver文件服务器功能讲解-Filezilla客户端)(5)

如果出现问题:2 字节的 UTF-8 序列的字节 2 无效,用记事本打开,然后另存为-Utf-8

springboot上传文件映射路径(Ftpserver文件服务器功能讲解-Filezilla客户端)(6)

访问测试

测试访问,打开浏览器输入:ftp://localhost:2121/就会看到你的文件目录了,如果没有配置匿名用户,则会要求你输入用户名密码,正是你在user.properties中配置的

springboot上传文件映射路径(Ftpserver文件服务器功能讲解-Filezilla客户端)(7)

打开filezilla客户端

springboot上传文件映射路径(Ftpserver文件服务器功能讲解-Filezilla客户端)(8)

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页