IIS 7.5 (Windows7) FTP配置筆記

Image

1. 基本設定(右側 Action -basic settings, 這一代IIS的UI設計相當腦殘, 連site的右鍵屬性菜單都沒有了, 很多設置項只能通過站點配置主頁面或右側Action列表進入)

Image(1)

Connect as

Image(2)

這裡是設置FTP服務用戶, 你可以指定一個本地用戶, 也選擇Application user使用系統內置用戶. IIS會以這個用戶身份訪問磁盤並受NTFS權限約束

這裡有個問題,  自己指定用戶還好, 但如果選擇"Application user", IIS會使用一個名為"IUSR"的特殊用戶(下文會看到), 而在系統用戶管理( 右擊My Computer-> Manager->Local Users and groups->Users)里是找不到這個用戶的, 因為IUSR實際上屬於"build-in security principals", 而不是 "users"或""groups", 所有文件夾的默認NTFS權限設置里也找不到這個IUSR, 經過測試, IUSR應該屬於"Authenticated Users"這個特殊用戶組, 而所有NTFS文件夾默認設置授予了 "Authenticated Users"除Full Control以外所有權限, 所以IIS FTP默認能夠訪問磁盤所有文件夾

Image(3)

如果從FTP根目錄文件夾的 NTFS權限里將Authenticated users移除(需要首先取消繼承父文件夾權限), ftp登錄時就會報錯

Response:                 530-User cannot log in, home directory inaccessible.

Response:                  Win32 error:   Access is denied.

Response:                  Error details: File system denied the access.

Response:                 530 End

回到上面"Connect as"這張圖, 如果選擇"Application user"(默認選擇), 點擊 Test Settings, 你會看到這樣的警告

Image(4)

就是說, IIS無法驗證其內置用戶(IUSR)是否對FTP根目錄磁盤物理路徑有訪問權限. (因為NTFS文件夾權限里默認設置好的是Authenticated Users, 而沒有設置 IUSR, 所以IIS就不知道了…), 無語吧? 腦殘的Microsoft….

2. FTP Authorization Rules

就是下面的這個東西

Image(5)

默認的規則: All Users – read

Image(6)

設置不同身份登錄用戶的權限: 讀取/寫入. 但是請注意, 這裡只是配置IIS是否允許當前FTP登錄用戶的讀/寫請求, 而讀/寫是否成功卻是由"基本設定"-> "Connect As"里設定的用戶NTFS權限決定的!! 就是說, Microsoft在這裡"創造性"的在NTFS權限之上又搞了另一套FTP Authorization權限, 兩套權限的區別是你可以設置多條FTP Authorization Rule規則, 但每個FTP Site你只能設置一個Connect As 用戶並以它的身份訪問磁盤.

我只想說Microsoft你夠狠, 就連那個無比複雜的NTFS權限還嫌不夠玩的? 非要把FTP Authorization用戶和實際訪問磁盤用戶分開? 這不是腦殘是什麼????

這樣帶來的另一個作用是, 默認情況下, 通過IIS FTP創建(上傳)的文件(夾)所有者(owner)都會變成 IUSR. (雖然administrators默認對其仍然有full control權限, 日常使用過程中一般不會注意到.)

這篇所謂的"配置筆記"沒啥意思. 因為我實在受不了Misrosoft那些腦殘的地方才寫出來的..

PS. 寫此文中因為資源管理器無響應重啟了一次explorer.exe, 結果冒出來一個Adobe Flash Player Update窗口..以前是每次重啟電腦才會冒出這個破玩意…好吧, 因為我大部分時候都是hibernate, 只有安裝windows update時候才會重啟, 所以基本上每次重啟都會冒出Adobe Flash Update那個煩人的玩意..現在我知道了, 這貨在explorer.exe進程啟動時才檢查更新的…腦殘的Adobe, 每次更新Flash得點兩下按鈕選中一個複選框…你就不能做成Chrome那樣後台靜默升級非要用那點破事煩我? 還有那腦殘的Firefox, 現在是可以後台自動下載更新了, 但是下載完更新後第一次重啟/啟動 Firefox還是得出現個更新進度條然後一個個檢查extension compatabilty如果不取消掉至少得等2分鐘才能完成…為什麼你們都不能像Chrome那樣完全後台靜默無干擾升級呢?