免費的FTP SERVER:Apache FtpServer

網址:http://mina.apache.org/ftpserver-project/

Apache FtpServer是一個純Java的FTP Server,只要有安裝Java就可以執行。
FtpServer是Apache License Version 2.0的授權,是Open Source的軟體。



啟動的方式也很簡單,只要執行ftpd.bat(win)或ftpd.sh(linux)。

下面是以Windows7來執行設定,其他的作業系統也都是一樣的。

首先修改res/conf/ftpd-typical.xml,找到下列的語法
<file-user-manager file="./res/conf/users.properties" />

加入encrypt-passwords="clear"如下:
<file-user-manager file="./res/conf/users.properties" encrypt-passwords="clear" />

上述做法是去除Password的加密動作,Apache FtpServer預設是以MD5加密,
所以密碼會是一串亂碼的排列,但是因為這只是測試,方便我們設定,
所以取消加密,正式使用時,建議還是要以MD5加密比較安全。

接著我們要修改FTP帳號的設定:
帳號設定位置在res/conf/users.properties

下面是帳號admin的設定
#admin Password
ftpserver.user.admin.userpassword=admin
#家目錄
ftpserver.user.admin.homedirectory=g:
#帳號是否啟用
ftpserver.user.admin.enableflag=true
#寫入權限
ftpserver.user.admin.writepermission=true
#同帳號最大登入數
ftpserver.user.admin.maxloginnumber=0
#同IP最大登入數
ftpserver.user.admin.maxloginperip=0
#Idle Time
ftpserver.user.admin.idletime=0
#上傳速度
ftpserver.user.admin.uploadrate=0
#下載速度
ftpserver.user.admin.downloadrate=0

如果要新增帳號,則複製上面語法後,修改admin為新帳號就可以了。

因為FtpServer是以Java開發,所以我們要確認是否已設定了變數JAVA_HOME,
開啟Windows 7的命令列模式(cmd.exe),鍵入set %JAVA_HOME%測試,
假設測試的結果如下,則可能是未安裝Java程式或未設定正確。
D:\> set %JAVA_HOME%
環境變數 %JAVA_HOME% 未定義

如果是未設定正確,則在啟動FtpServer前,可先設定JAVA_HOME如下:
D:\> set JAVA_HOME=%programfiles(x86)%\Java\jre6

啟動FtpServer的方式,則是進入安裝目錄的bin目錄,輸入下列指令:
D:\> ftpd.bat res/conf/ftpd-typical.xml

出現下面的畫面就表示FTP Server啟動已成功了。


如果想關閉FTP Server的話,只要把上面畫面的視窗關掉就好了。