[Blue Screen] 架設微軟的 IIS FTP Server

在測試完了 Gigabyte s1081 小平板升級 Windows 8 之後,LH 接下來就想讓這台平常沒在用的小平板,發揮一點功能。

LH 第一件想要做的,就是幫這台小平板架設一個簡易的 FTP server。因為這台小平板在待機時,耗電量可以降到 7W 以下,所以把它開著並放一些服務程式上去用,真的是很省電呢。

在網路上可以找到免費版的 FTP server,比如說 FileZilla 之類的。但是 LH 是想先測試 Windows 7 內現有的 FTP service,所以並沒有找外部的程式來用。

這次測試的環境是 Windows 7 Pro 台灣中文版,用 Windows 7 內附的 IIS 底下 FTP server 的功能。電腦是在家用網路這個群組理。現在就開始來設定囉!

起動FTP服務


在 Windows 7 裝好時,預設是不會裝 IIS 的,必須要去啟用它才行。到開起 Windows 功能下,把所有 FTP server 的功能全部開啟,並且要把 IIS 管理主控台也開啟,等一下才能去設定。


到系統管理工具理,使用 IIS 管理員。


打開後,這就是 IIS 管理的根目錄。左邊的站台底下,已經有一個 default web site 在那,等一下我們就要在那建立一個 FTP server。


在站台上按滑鼠右鍵,選新增 FTP 站台。


在此 LH 取名為 LHFTP,路逕就在硬碟上找一個目錄。


這一步,LH 設定使用連接埠 21,這也是一般 FTP server 會用的值。此處 IP 位址不用設也行,因為 LH 只有用有線網路連網,無線是關掉的,所以只有一個 IP。SSL 的地方先不選,以簡化設定的過程。


驗證的地方選基本,也就是等一下在登入時,須要輸入使用者名稱跟密碼。授權的地方先不管,等一下還要設定。


這樣設好之後,FTP server 就已經開始運作了,但此時應該是還無法連進來的狀態。

設定使用者及權限


接著要來設定能夠登入的使用者,到 開始->電腦->按滑鼠右鍵選 電腦管理,在本機使用者和群組下,建立一個使用者,此處 LH 已經設好一個 ftpuser。


然而,我們想用群組的方式來管理能夠登入的使用者,所以要再設一個群組。按滑鼠右鍵,選擇新增群組。


群組名稱,LH 就設成 IIS_FTP,然後按新增來加成員。


使用進階選項來找成員。


按下立即尋找後,我們找到了已經建立好的 ftpuser 那個帳戶。

加進去之後,就一路按確定離開。

接著再回到 IIS 下。


對著 LHFTP 按滑鼠右鍵,選編輯權限。


我們必須給予剛才那個群組,能夠存取 FTP server 的目錄。


按新增來增加剛才建立的群組。


把剛才建立好的 IIS_FTP 這個群組名輸入後按檢查名稱,應該就能找到正確的群組位置。


接著再選擇我們要給這個群組的存取權限。想要多給或少給一些權力都行,自行決定。

做到這理,凡是在 IIS_FTP 該群組下的使用者,都能夠有相等的存取權。

建立授權規則


要讓使用者能登入FTP server,就要把 FTP 驗證跟授權規則設定好。


我們先到授權規則下新增一個允許規則,把剛才的 IIS_FTP 給予讀和寫的權力。


接著我們增加一個拒絕規則,我們不希望暱名使用者隨便就能登入。


在授權完畢後,我們來確認一下 FTP 驗證方法。


在此我們確定暱名驗證是停用的狀態,只有基本驗正是啟用,也就是在登入時須要使用者名稱及密碼。

做到此處,FTP 已經起來並且可以用囉!找一個 FTP client 程式來試試看,LH 此處用 Windows 內部的檔案總管來做個簡單的示範。


在原本這台FTP server的電腦上的檔案總管裏輸入 ftp://localhost,就會出現詢問使用者及密碼的畫面。


都輸入正確的話,就能進去了。

那個 bm3.jpg 的檔案是 LH 已經事先放在剛才設好的 FTP 目錄 C:\inetpub\ftproot 下,所以知道是有正確的登入。

設定防火牆


接著,來設定防火牆吧,要把 port 21 打開,才能從外部電腦連進來。


確定防火牆有開啟,因為我們不希望為了用個 FTP server,而把防火牆關掉讓駭客們有機可乘。然後進入進階設定。


在輸入規則下,應該有一個 FTP 傳入流量的選項,那是 Windows 7 內定好的 FTP port 21 設定。滑鼠按兩下進入。


在一般底下勾選已啟用。


在進階底下,有這幾個選項要注意的。LH 這台電腦已經上了家用網路這個群組,所以就只選私人而以。如果不確定的話,可以先三個都選,等測試成功後再回來一一的關掉不必要的。

如此如此,這般這般,給 FTP server 的防火牆應該就開了,剛才那一行 FTP 傳入流量的選項,應該會從灰色變綠色才對。


除了打開 port 21,還要打開 FTP server 電腦上的 passive ports。在防火牆內,有看到一個微軟內定的 FTP Server Passive (FTP passive traffic-in) 設定。但因為它的範圍太大了,所以 LH 不想用這個。於是,我們用新增規則來新加一個 LH 要的。

但是如果不想多做設定的話,直接把這個 Windows 內定的 FTP Server Passive (FTP passive traffic-in) 規則打開也行,那下面的步驟就可以省略。


選連接阜。


在此,我們要指定用 TCP,並且給予 55000-55999 的範圍。




由於 LH 這台電腦已經在家用網路群組理,所以 LH 在這只選私人網路這個選項。如果不確定,可以三個都選,等一下再回來關掉不必要的。


最後,給它一個名稱。

設定好 passive ports,還有小地方要重新設定,那就是 Windows 7 內定的動態連接阜範圍。

微軟 Windows 7 內定的動態連接阜範圍,是在 49152-65535 之間,總共 16384 個。雖然 LH 所設定防火牆打開的是 55000-55999,的確在這個範圍之內,但因為範圍比較小,所以會不夠 Windows 7 使用!所以要不是當初把防火牆內開的跟 Windows 7 內定的一樣大範圍,再不然就是要縮小 Windows 7 的動態連接阜範圍到跟防火牆內所設的一樣。

LH 選則使用小一點的連接阜範圍,所以要改 Windows 7 內的設定。要達到這個目地,我們要用到 netsh 這個指令。到 dos prompt 上按右鍵,使用系統管理員等級的 dos prompt。


首先,可以下指令看看,Windows 7 內定的動態連接阜範圍的確是從 49152 開始,總共有 16384 個 ports。


接著 LH 下指令 netsh int ipv4 set dynamicport tcp start=55000 num=1000 設定想要的 ports,之後再檢查一次,動態連接阜範圍已經改成 55000 開始的 1000 個 port 了。

動態連接阜的範圍要跟防火牆內 passive ports 是一樣,以免發生問題。


設定到此,IIS 底下的 FTP server 就可以運作了。到同一個網路下的另一台電腦上,使用一個 FTP client 程式來登入,或是像 LH 剛才示範過的用檔案總管下打入 ftp://<您的 FTP server IP 位址> (此處的範例是 ftp://192.168.19.105),使用者就是剛才設定好的 ftpuser,就能夠從外部存取這台電腦上 FTP 下的目錄了。

基本的設定到此告一段落,至於進階的 SSL 跟打開家中防火牆的設定,在下一篇中再做介紹。

相關文章:
[Blue Screen] 架設微軟的 IIS FTPS Server


分享


回到 Blogger 的童言童語

11 則留言:

Hughes 提到...

謝謝版主的分享!!
不過我試了您的方法架不起來耶囧...
(我是使用FileZilla Client來測試的)
我也是用Win7
全部都按照您的步驟走
唯一不同的是您沒提及建立"新使用者"的部分
不過這步驟應該也就只是單純的建立吧!?
希望版主能給些建議@@
感恩不盡!!!!

LH 提到...

上面那個 ftpuser 的帳戶,就是新使用者囉!
我有建立一個群組來管理這些使用者的帳戶。

到 開始->電腦->按滑鼠右鍵選 電腦管理,去本機使用者跟群組底下建立使用者跟群組。

Hughes 提到...

謝謝版主的熱心回覆!
我建立新的使用者(ex.ftpuser)
後來再試了幾次還是不行耶QQ
由於建立了新的使用者,
開機時就會多了這個ftpuser的登入頁面,
請問這樣算正常嗎?
如果當FTP Server的這台電腦需要建立多個FTP帳戶
會不會就變成開機時一堆使用者阿@@
還是我有地方弄錯了Orz
謝謝!!

LH 提到...

To 楊尚修,
感謝您的指正。已經更新內容,並稍微重新編排。您須要再打開一個防火牆的規則即可。

新增使用者,因為是本地端的使用者,的確是會出現在登入畫面,這沒辦法。想要隱藏,有點麻煩,擇期再出範例。

Unknown 提到...

請問版主,我的電腦在設定群組的時候
(本機使用者跟群組)<--我根本沒有這選項的話,應該打開什麼選項才能使用?

Soul Aromatherapy 靈。芳療 提到...
作者已經移除這則留言。
Soul Aromatherapy 靈。芳療 提到...

感謝分享
設定成功了

Radian 提到...

超實用的文章! 正在困惑為什麼外面連不進去時,你的文章就幫我解決這個問題了!
真的超級感謝你!

不過進階防火牆 的新增規則設定那邊太複雜了
因此我是只有直接啟用而已。

請問這樣會有什麼安全上的疑慮呢 ? 謝謝!

LH 提到...

to楊羽:
首先要登入成administrator,接著要確定您是用professional版以上的Windows,才能用使用者管理功能去管理本機使用者跟群組。

您可以試試同時按Windows+R鍵,然後去執行lusrmgr.msc。

LH 提到...

to鄭竣丰:
理想的狀況是,須要用到什麼port,才開相對應的port。

如果您是啟用了視窗內部已經設定好的,像是有個FTP 被動式傳入流量這種的,應該是沒什麼問題。

匿名 提到...

謝謝您的分享,因為完全不懂FTP,爬了許多文章還是一知半解,請問:1.FTP如果是設定家裡的電腦,是否要永遠保持連線?沒有保持連線的話,別人上傳的資料會收不到嗎? 2.可以將GOOGLE的雲端硬碟射程FTP嗎?謝謝!