因工做須要,最近常常接觸到FTP,今天我來介紹一個開源的FTP服務器,那就是Apache FTPServer,Apache FTPServer是一個100%純Java的FTP服務器。 它的設計是基於現有的開放式協議的完整和便攜式FTP服務器引擎解決方案。FTPServer可獨立運行做爲Windows服務或Unix/ Linux後臺程序或是被嵌入在Java應用程序中。
接下來介紹一下如何在Windows環境下安裝Apache FTPServer:html
能夠到官網下載:http://mina.apache.org/ftpserver-project/downloads.html 目前最新版本是Apache FtpServer 1.0.6 Release,我這裏下載的就是1.0.6版本spring
將下載下來的壓縮包解壓到本地,個人是放在D盤根目錄下,其目錄結構以下圖: apache
在該配置文件中能夠增長用戶服務器
# Password is "admin"
ftpserver.user.admin.userpassword=admin
ftpserver.user.admin.homedirectory=./res/home
ftpserver.user.admin.enableflag=true
ftpserver.user.admin.writepermission=true
ftpserver.user.admin.maxloginnumber=0
ftpserver.user.admin.maxloginperip=0
ftpserver.user.admin.idletime=0
ftpserver.user.admin.uploadrate=0
ftpserver.user.admin.downloadrate=0加密
ftpserver.user.anonymous.userpassword=
ftpserver.user.anonymous.homedirectory=./res/home
ftpserver.user.anonymous.enableflag=true
ftpserver.user.anonymous.writepermission=false
ftpserver.user.anonymous.maxloginnumber=20
ftpserver.user.anonymous.maxloginperip=2
ftpserver.user.anonymous.idletime=300
ftpserver.user.anonymous.uploadrate=4800
ftpserver.user.anonymous.downloadrate=4800spa
#密碼 配置新的用戶
ftpserver.user.lxw.userpassword=123456
#主目錄
ftpserver.user.lxw.homedirectory=./res/home
#當前用戶可用
ftpserver.user.lxw.enableflag=true
#具備上傳權限
ftpserver.user.lxw.writepermission=true
#最大登錄用戶數爲20
ftpserver.user.lxw.maxloginnumber=20
#同IP登錄用戶數爲2
ftpserver.user.lxw.maxloginperip=2
#空閒時間爲300秒
ftpserver.user.lxw.idletime=300
#上傳速率限制爲480000字節每秒
ftpserver.user.lxw.uploadrate=48000000
#下載速率限制爲480000字節每秒
ftpserver.user.lxw.downloadrate=48000000命令行
PS:若是不但願匿名登陸的話,能夠將匿名用戶這個配置註釋掉設計
<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"> <listeners> <!-- 默認端口是2121,能夠修改成本身的端口 --> <nio-listener name="default" port="2121"> <ssl> <keystore file="./res/ftpserver.jks" password="password" /> </ssl> </nio-listener> </listeners> <file-user-manager file="./res/conf/users.properties" encrypt-passwords="clear"/> <!-- 添加encrypt-passwords="clear",將密碼加密方式修改給clear --> </server>
打開CMD命令窗口,切換到D:\apache-ftpserver-1.0.6\bin這個目錄下 輸入如下命令:code
service install
ftpd.bat res/conf/ftpd-typical.xml
注意:第二條命令的執行須要在環境變量中配置JAVA_HOME,不然會報錯,自行百度。server
運行結果以下圖:
PS:FTPServer started 說明FTP服務已經啓動成功
在遊覽器中,輸入ftp://ip:2121進行訪問,若是端口修改了,要換成對應的端口,ip就是FTP所在的服務器的ip,訪問以下圖所示:
若是將這個dos命令行關掉,則ftp服務中止。所以須要把第四步的啓動製做成bat文件,內容爲:
d: cd D:\apache-ftpserver-1.0.5\bin ftpd.bat res/conf/ftpd-typical.xml
隨便起一個名字xx,命名爲xx.bat,點擊便可啓動ftp服務器。