IIS7 FTP 設置 - 身份驗證過程中發生錯誤。530 結束登錄失敗
我遇到的問題與Windows Server 2008 R2 Standard 上的IIS 7.5 FTP IIS 管理器使用者登錄失敗 (530)非常相似。
我已經創建了一個 FTP 站點和 IIS 管理器使用者,但在登錄時遇到了問題。我真的可以使用 IIS 管理器使用者而不是創建一個新的系統使用者,因為我受到這些帳戶的相當限制。
這是通過命令提示符本地連接時的輸出:
C:\Windows\system32>ftp localhost Connected to MYSERVER. 220 Microsoft FTP Service User (MYSERVER:(none)): MyFtpLogin 331 Password required for MyFtpLogin. Password: *** 530-User cannot log in. Win32 error: Logon failure: unknown user name or bad password. Error details: An error occured during the authentication process. 530 End Login failed.
我已按照指南在 iis 7 中使用 iis 管理器身份驗證配置 ftp 並在IIS 7 中將 FTP 發布添加到網站
我做過並檢查過的事情:
- 已安裝 FTP 服務(連同 FTP 可擴展性)。
- 本地服務和網路服務已被授予訪問站點文件夾的權限
- 已授予配置文件的權限
- 授予對 FTP 根文件夾的讀/寫權限
- 管理服務已安裝並正在執行
- 啟用遠端連接勾選了“Windows 憑據或 IIS 管理器憑據”
- IIS 管理器使用者已添加到伺服器(IIS 連接分支中的根連接)
- 添加了新的 FTP 站點
- IIS 管理器身份驗證已添加到 FTP 身份驗證提供程序
- IIS 管理器使用者已添加到站點的 IIS 管理器權限列表中
- 在 FTP 授權規則中為使用者添加了讀/寫權限
這是與 FTP 站點關聯的 applicationHost 配置文件的一部分
<site name="MySite" id="8"> <application path="/" applicationPool="MyAppPool"> <virtualDirectory path="/" physicalPath="D:\Websites\MySite" /> </application> <bindings> <binding protocol="http" bindingInformation="*:80:www.mydomain.co.uk" /> <binding protocol="ftp" bindingInformation="*:21:www.mydomain.co.uk" /> </bindings> <ftpServer> <security> <ssl controlChannelPolicy="SslAllow" dataChannelPolicy="SslAllow" /> <authentication> <basicAuthentication enabled="true" /> <customAuthentication> <providers> <add name="IisManagerAuth" enabled="true" /> </providers> </customAuthentication> </authentication> </security> </ftpServer> </site> ... <location path="MySite"> <system.ftpServer> <security> <authorization> <add accessType="Allow" users="MyFtpLogin" permissions="Read, Write" /> </authorization> </security> </system.ftpServer> </location>
如果我使用相同的 IIS 管理器帳戶詳細資訊從本地 IIS 管理器連接到站點(不是 FTP),那麼它連接正常,我可以像在本地一樣瀏覽文件和更改設置(儘管我似乎沒有選項上傳文件)。嘗試通過瀏覽器或 FileZilla 等通過 FTP 連接……給了我:
Status: Resolving address of www.mydomain.co.uk Status: Connecting to 123.456.12.123:21... Status: Connection established, waiting for welcome message... Response: 220 Microsoft FTP Service Command: USER MyFtpLogin Response: 331 Password required for MyFtpLogin. Command: PASS ********* Response: 530 User cannot log in. Error: Critical error Error: Could not connect to server
我嘗試為 ftp 會話收集 etw 跟踪,在日誌中我得到一個 FailBasicLogon,後跟一個 FailCustomLogon,但沒有其他資訊:
FailBasicLogon SessionId={cad26a97-225d-45ba-ab1f-f6acd9046e55} | ErrorCode=0x8007052E StartCustomLogon SessionId={cad26a97-225d-45ba-ab1f-f6acd9046e55} | LogonProvider=IisManagerAuth StartCallProvider SessionId={cad26a97-225d-45ba-ab1f-f6acd9046e55} | provider=IisManagerAuth EndCallProvider SessionId={cad26a97-225d-45ba-ab1f-f6acd9046e55} EndCustomLogon SessionId={cad26a97-225d-45ba-ab1f-f6acd9046e55} FailCustomLogon SessionId={cad26a97-225d-45ba-ab1f-f6acd9046e55} | ErrorCode=0x8007052E FailFtpCommand SessionId={cad26a97-225d-45ba-ab1f-f6acd9046e55} | ReturnValue=0x8007052E | SubStatus=ERROR_DURING_AUTHENTICATION
在正常的 FTP 日誌中,我得到:
2012-10-23 16:13:11 123.456.12.123 - 123.456.12.123 21 ControlChannelOpened - - 0 0 e2d4e935-fb31-4f2c-af79-78d75d47c18e - 2012-10-23 16:13:11 123.456.12.123 - 123.456.12.123 21 USER MyFtpLogin 331 0 0 e2d4e935-fb31-4f2c-af79-78d75d47c18e - 2012-10-23 16:13:11 123.456.12.123 - 123.456.12.123 21 PASS *** 530 1326 41 e2d4e935-fb31-4f2c-af79-78d75d47c18e - 2012-10-23 16:13:11 123.456.12.123 - 123.456.12.123 21 ControlChannelClosed - - 0 0 e2d4e935-fb31-4f2c-af79-78d75d47c18e -
如果有人有任何想法,我將非常感激聽到他們的聲音。非常感謝。
因此,在失去了許多小時後,我以嶄新的眼光和靈魂中的新火回到了這裡。似乎我有點過於關注新 FTP 站點的設置,而很少關注其他影響。
事實證明,有一個全域“預設 FTP 站點”正在擷取埠 21 上的所有 FTP 請求,因為該使用者未添加到該站點的授權帳戶列表中,因此它返回了未經授權的響應。
將使用者添加到預設 FTP 站點使我能夠登錄,但隨後我進入了預設站點的根 FTP 目錄(類似於http://forums.iis.net/t/1156913.aspx>)。將登錄更改為`<hostheader>|<username
也不起作用並返回了
530 Valid hostname is expected`響應。在桌子上敲了幾次頭後,我回去檢查並重新檢查每一個設置。通常最終結果是站點綁定中設置的主機頭名稱中的拼寫錯誤。
<hostheader>|<username>
一旦錯字被修復,登錄使用隨後工作。總之
- 我需要使用該
<hostheader>|<username>
格式登錄,以便 IIS 選擇我打算登錄的站點- 我在站點綁定中的 hostheader 值中有錯字