Security

如何啟用對 redirection.config 的訪問

  • August 20, 2016

我正在使用 windows server 2012 R2 作為 FTP 伺服器。我添加了一個 FTP 站點 MyFtpServer。它使用的應用程序池是 MyFtpServerAppPool。AppPool 使用 ApplicationPoolIdentity 作為身份。如果我從命令行使用 ftp 登錄,我會得到以下結果:

530-User cannot log in.
Win32 error:   Access is denied.
Error details: Filename: \\?\C:\Windows\system32\inetsrv\config\redirection.config
Error: Cannot read configuration file due to insufficient permissions

當我通過添加具有讀取訪問權限的網路服務身份來添加對 \windows\system32\inetsrv\config 文件夾的權限時…。然後 FTP 登錄繼續進行而不會出錯。

但是我讀到的關於像這樣使用網路服務的內容是安全方面的,這將退後兩步。我發現的“最佳實踐”解決方案是使用 IIS AppPool\MyFtpServerAppPool 身份添加權限。但是,如果我這樣做,那麼 FTP 登錄將再次失敗,並顯示相同的錯誤消息。

所以我的問題是,解決這個問題的最佳方法是什麼?顯然,我希望 FTP 功能正常工作,但我不想恢復到不再被認為是最佳實踐安全明智的措施。有任何想法嗎?

補充:我正在使用 IIS 管理器使用者

IIS FTP 伺服器預設在 下執行Network Service,我認為更改應用程序池標識沒有幫助,因為 FTP 服務甚至不使用應用程序池或w3wp.exe程序。

有些人建議使用特定帳戶來執行 FTP 服務,然後為該帳戶分配權限。

您在Component Servicesmmc 中執行此操作,請參閱Microsoft 部落格文章,我嘗試過,但我什至沒有看到FTP...下面的節點COM+ Applications

花了一段時間才發現我必須FTP Extensibility在伺服器管理器中安裝 Windows 功能。

之後,您應該會看到該Microsoft FTP Publishing Service Extensibility Host節點。打開屬性並將身份更改為自定義帳戶。

我剛剛編寫了一個啟用 FTP、創建站點和使用者並設置 FTP 服務身份的 PowerShell 腳本。在配置文件和 ftp 根目錄上為新帳戶設置 ACL。

新DemoFTPSite.ps1

引用自:https://serverfault.com/questions/797952