Windows
PowerShell 防火牆管理
我有一堆機器需要為 GPO 更新啟用遠端計劃任務管理 (RPC)、遠端計劃任務管理 (RPC-EPMAP) 和 Windows 管理規範 (WMI-in)。
我想執行一個 PowerShell 腳本,所以我不必手動執行此操作。但是,我是PowerShell的新手。
當我在機器上手動添加規則時,有沒有辦法獲得 powershell 命令?
編輯:
這是我發現的一種方法:
netsh advfirewall firewall set rule group="Remote Administration" new enable=yes netsh advfirewall firewall set rule group="File and Printer Sharing" new enable=yes netsh advfirewall firewall set rule group="Remote Service Management" new enable=yes netsh advfirewall firewall set rule group="Performance Logs and Alerts" new enable=yes Netsh advfirewall firewall set rule group="Remote Event Log Management" new enable=yes Netsh advfirewall firewall set rule group="Remote Scheduled Tasks Management" new enable=yes netsh advfirewall firewall set rule group="Remote Volume Management" new enable=yes netsh advfirewall firewall set rule group="Remote Desktop" new enable=yes netsh advfirewall firewall set rule group="Windows Firewall Remote Management" new enable =yes netsh advfirewall firewall set rule group="windows management instrumentation (wmi)" new enable =yes
但是,我必須在每台機器上執行它。
由於某種原因,這個不起作用:
Enable-NetFirewallRule -DisplayGroup “Windows Remote Management”
在 Windows Server 2012 R2 Core 上工作,這對我有用:
Set-NetFirewallRule -DisplayGroup "File And Printer Sharing" -Enabled True
這是檢查是否成功的方法
Get-NetFirewallRule -DisplayGroup "File And Printer Sharing"
並找到“啟用”中的值,它應該設置為 TRUE。
更多資訊和論點可以在這裡找到:
根據 Technet 上的這篇文章,僅在 Server 2012 或 Windows 8 上:http ://technet.microsoft.com/en-us/library/hh831755.aspx
Windows 7 和 Server 2008 需要 Netsh,即使使用 Powershell 4.0。