用于启用/禁用TCP端口的Windows 10脚本

时间:2016-06-23 14:59:10

标签: powershell testing cmd windows-10 firewall

我想为我的应用模拟Oracle断开连接。我需要快速启用/禁用到端口1521的传出流量。

我认为最好的方法是在Windows防火墙中添加/删除规则。

我可以使用CMD或PowerShell脚本吗?或者C#中的WMI?

(注意:我无法整体禁用网络,因为我的代码中使用了不同的连接,只需要禁用1521)。

2 个答案:

答案 0 :(得分:2)

感谢Anas Atef,我不得不卷起袖子。以下是像我一样的人所需要的:

New-NetFirewallRule -DisplayName "Disabling Port 1521" -Action Block -Direction Outbound -Profile Any -Protocol tcp -RemotePort 1521
Set-NetFirewallRule -DisplayName "Disabling Port 1521" -Action Allow
Set-NetFirewallRule -DisplayName "Disabling Port 1521" -Action Block
Remove-NetFirewallRule -Name "{751a86cb-2ef3-4eba-8c95-68aa7e4bde18}"

会创建规则。显示名称是您喜欢的任何名称。

设置然后可以帮助您有效地启用/禁用规则。

完成测试后,请使用删除。 Remove命令中的Name是运行New后获得的guid(观察输出)。

答案 1 :(得分:1)

尝试此操作,此命令将阻止来自端口1521的任何应用或工具的任何出站流量:

  

New-NetFirewallRule -DisplayName“禁用端口1521” - 动作块   -Direction Outbound -DynamicTarget Any -EdgeTraversalPolicy Block -Profile Any -Protocol tcp -RemotePort 1521