Apache FTPServer配置問題總結

Apache FTP Server環境搭建-個人總結

前記

前段時間換了一臺臺式機,因此需要從筆記本中拷貝一些以前的資料。但是由於自己並沒有比較大的硬盤,因此想到搭建FTP服務器。以前用過微軟一款Serv-U服務器,配置超級繁瑣,用的超級不爽。網上查找後發現Apache FTP Server開源,可配置選項多,因此就選擇了它。

軟件下載、解壓

Apache FTP Server網站下載1.0.6Release版本後解壓到本地文件夾。(個人文件夾:D:\tools\apache-ftpserver-1.0.6,後面以%FTP_Server%代替)。文件夾包括三個上子文件夾,重點關注bin、res文件夾即可。

下載地址:http://mina.apache.org/ftpserver/downloads.html

軟件配置

  • Java環境安裝

  • 安裝Service

    以命令行方式進入%FTP_PATH%\bin目錄,運行service.bat命令
    service install最好以管理員權限運行,否則易導致安裝失敗
    安裝好後,能在電腦服務中找到Apache FTPServer

  • 配置
    %FTP_Server%\res\conf 文件夾下有ftpd_typical.xml、users.properties兩個文件,簡要說明下。

    XML文件配置了以下幾項:密碼明文管理,端口爲21號端口。
    users.properties配置用戶:包括密碼、上傳速度等。這個網上很多說明,簡要地附上以下說明。

    #FTP用戶名:myusername,密碼:12345678(上文設置成明文保存)
    ftpserver.user.myusername.userpassword=12345678#FTP主目錄
    ftpserver.user.myusername.homedirectory=./ftp_space
    ftpserver.user.myusername.enableflag=true
    ftpserver.user.myusername.writepermission=true
    ftpserver.user.myusername.maxloginnumber=3
    ftpserver.user.myusername.maxloginperip=3
    ftpserver.user.myusername.idletime=0
    ftpserver.user.myusername.uploadrate=0
    ftpserver.user.myusername.downloadrate=0
  • 啓動
    命令行方式直接啓動,注意加上剛纔修改的配置文件。以我的配置爲例:
    ftpd.bat res/conf/ftpd-typical.xml
    (可以保存一個BAT文件,方便啓動)
    但是個人使用的環境:Win7 64位似乎存在問題,所以按照下博客方法順利解決,謝謝這位博主
    Apache FtpServer在64位系統下服務不能啓動解決方法:http://zuoqiang.iteye.com/blog/1557988

    實驗

    今天通過臺式機與筆記本做傳輸測試,發現速度很快,平均在10M/S以下(局域網環境)。
    配置過程中主要遇到以下幾個問題:

  • 服務無法啓動
  • 21號端口無法啓動
    端口查看命令:netstat -aon | findstr “61616”
    任務查看命令:tasklist /fi “pid eq PID”(查看pid進程)
    任務結束命令:tskill pid

      Using XML configuration file res/conf/ftpd-typical.xml...
      org.apache.ftpserver.FtpServerConfigurationException: Failed to bind to address 0.0.0.0/0.0
              at org.apache.ftpserver.listener.nio.NioListener.start(NioListener.java:181)
              at org.apache.ftpserver.impl.DefaultFtpServer.start(DefaultFtpServer.java:80)
              at org.apache.ftpserver.main.CommandLine.main(CommandLine.java:62)
      Caused by: java.net.BindException: Address already in use: bind
              at sun.nio.ch.Net.bind0(Native Method)
              at sun.nio.ch.Net.bind(Net.java:444)
              at sun.nio.ch.Net.bind(Net.java:436)
              at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:214)
              at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74)
              at org.apache.mina.transport.socket.nio.NioSocketAcceptor.open(NioSocketAcceptor.ja
              at org.apache.mina.transport.socket.nio.NioSocketAcceptor.open(NioSocketAcceptor.ja
              at org.apache.mina.core.polling.AbstractPollingIoAcceptor.registerHandles(AbstractP
              at org.apache.mina.core.polling.AbstractPollingIoAcceptor.access$300(AbstractPollin
              at org.apache.mina.core.polling.AbstractPollingIoAcceptor$Acceptor.run(AbstractPoll
              at org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)
              at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
              at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
              at java.lang.Thread.run(Thread.java:745)
    

    接下來的工作:

  • 對配置文件深入瞭解
  • 暫時匿名登陸仍未配置成功

-------------------------------

這博客排版太坑爹了,如果大家有什麼好的方法,非常希望能留言告訴我。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章