Reply to this topicStart new topicStart Poll

> [教學]在Windows下架設SFTP Server, 比架一個FTP Server還要簡單!
高長恭
發表於: May 3 2009, 22:53  評價+10
Quote Post


∼('▽'*)
*********

發表數: 1,054
所屬群組: 太守
註冊日期: 9-18-2003

活躍:9
聲望:435


前言

當你的電腦是經路由器(router)連接上網,而網內又多過一部電腦架FTP Server的時候。 即使在路由器上設定好Local Server或者Port Fordwarding也不能在網外順利連入自己的FTP。因為FTP其實是分開兩條通道的,一條是建立連線用(預設埠號是port 21),另一條才用作檔案傳輸(預設是port 20)。Local Server、Port Fordwarding通常只是設定建立連線的通道,但檔案傳輸的好像非用port 20的不可,即使用其他埠號指向自己FTP的port 20亦未必有效。

在家外要下載家中的檔案可以架個HTTP Server,但是上傳檔案到家中沒有FTP Server卻怎麼辦呢?答案就是SFTP!SFTP是在SSH的通訊協定(protocol)底下進行檔案傳輸,沒有分甚麼主動、被動模式,只要設定好SSH的埠號就可以使用。另外,因為SSH會將要傳送的數據加密後才送出去,所以比純粹使用沒有加密的FTP安全。由於SSH及SFTP都是來自Unix/Linux系統的,在Windows環境下要架SSH、SFTP的需要一個虛擬的Unix環境(如Cygwin)再安裝OpenSSH,非常繁複。

這次介紹的軟件名為freeFTP,是一個FTP/FTPS/SFTP伺服器軟件。無需安裝Cygwin及OpenSSH等軟件即可使用,非常簡單方便。

下載、安裝、設定及使用
  1. 下載
    在官方網站的下載頁點擊freeFTPd.exe
  2. 安裝:
    1. 執行freeFTPd.exe
    2. 按Next
    3. 選I accept the agreement後按Next
    4. 選好安裝位置後按Next
    5. 之後可以不斷按Next,按Install,最後按Finish就完成安裝了
  3. 設定(請參看附帶圖片)
    1. 安裝完成後,freeFTPd應該自動成為Windows的Services了,並自行啟動了。在右下方的通知區域會看到一個freeFTPd的圖示
    2. 滑鼠右鍵點擊freeFTPd的圖示,選Configure開啟設定畫面
    3. 點選SFTP內的Hostkey
      1. 點選RSA Key框內的Generate new
      2. 將剛生成的key file存好。
      3. 按一次Test key確保key file沒有問題
    4. 點選SFTP
      1. Listen address: 用來Host SFTP Server 的IP位址
      2. Port: 這個SFTP Server的port
      3. Greeting message file: 連接後歡迎的訊息,即使沒有選取任何檔案程式也會顯示預設的歡迎訊息。
      4. SFTP root directory: 新增SFTP使用者時將會用這個作為home directory
      5. 當設定好後按Start啟動伺服器,Server status會轉為Running
    5. 點選Users
      1. 點擊Add...新增使用者
      2. Login: SFTP user的登入名稱
      3. Aurhoriztion: 認證方式,建議用Password stored as SHA1 hash
      4. 在Password 及 Password (again)輸入使用者的密碼
      5. Home directory: 預設是$SERVERROOT\<Login>。例如我的root directory是F:\,Home driectory即是F:\divingWolf,但我建議直接輸入使用者的Home directory。
      6. Max transfer rate: 0應該是不設限制啦
      7. User can access: 選SFTP server就可以了,反正FTP不會啟動
      8. 完成設定後請按Apply
    6. 點選Logging
      1. 如果要記下SFTP存取記錄的請點選Log events
      2. 反正只會開SFTP,點選Use one log file for both servers也可
      3. 如果點選了Use one log file for both servers的話,只需要輸入FTP log file的位置即可
    7. 其它
      1. FTP,一般的FTP設定,大致上跟SFTP一樣
      2. SSL,使用SSL將FTP的內容加密,但使用者需要懂得自行建立電子證書
      3. Host restrictions,用來允許或限制接受哪些IP的連線
      4. Virtual directories,看來是FTP專用的設定,SFTP不能用的
      5. Online user,查看有哪些使用者連接到伺服器,可以按Disconnect中斷使用者的連線
    8. 最後,請僅記按Apply & Save儲存設定
最後一提

SFTP雖然提供了一個安全可靠的傳送渠道,但是SFTP不能直接用瀏覽器開啟。需要使用支援SFTP的軟件才能進入SFTP Server,例如CuteFTP、WinSCP、或者Client Side的FileZilla。還有,freeFTPd的SFTP是不能用SSH登入及使用SCP傳送檔案的。

本篇文章已被 高長恭 於 May 3 2009, 22:57 編輯過

附帶圖片
附帶圖片


--------------------
user posted image
PMEmail PosterUsers WebsiteIntegrity Messenger IM
Top
•天地志狼•
發表於: May 4 2009, 23:19  評價+1
Quote Post


五品官
********

發表數: 991
所屬群組: 君主
註冊日期: 9-18-2003

活躍:8
聲望:52


已經設定好了,看看戈戈能不能連上吧…
麻煩了恭!^^
PMEmail PosterUsers Website
Top
1 位使用者正在閱讀本主題 (1 位訪客及 0 位匿名使用者)
0 位會員:

Topic Options Reply to this topicStart new topicStart Poll

 



[ Script Execution time: 0.0131 ]   [ 12 queries used ]   [ GZIP 啟用 ]