Iis

通過 PowerShell 配置 IIS:禁用預設文件

  • April 8, 2022

我可以使用以下 PowerShell 程式碼查詢 IIS 中的預設文件列表:

Get-WebConfigurationProperty -Filter "//defaultDocument/files/add" -PSPath 'MACHINE/WEBROOT/APPHOST' -Name "value" | select value

…但我想完全禁用預設文件功能以解決漏洞。我沒有發現太多關於通過 PowerShell 禁用該功能的資訊,但 MS 文件說可以執行以下命令來刪除一個值:

remove-webconfigurationproperty /system.webServer/defaultDocument -name files -atElement @{value="foo.html"}

這真的是禁用該功能的唯一方法嗎?我沒有發現任何表明它可以像在 IIS 管理控制台中那樣簡單地被禁用的東西。

要從 IIS 中刪除功能,您應該使用 Dism cmdlet,在您的情況下:

Disable-WindowsOptionalFeature -Online -FeatureName IIS-DefaultDocument

如果要在整個伺服器的 IIS 內禁用它,可以使用:

Set-WebConfigurationProperty -pspath 'MACHINE/WEBROOT/APPHOST'  -filter "system.webServer/defaultDocument" -name "enabled" -value "False"

如果您只想禁用 1 個站點,請使用以下程式碼:

Set-WebConfigurationProperty -filter "system.webserver/defaultdocument" -pspath "IIS:\sites\Default Web Site" -name "enabled" -Value "False"

替換Default Web Site為您要禁用的站點的名稱

感謝彼得的原始答案

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