gpt4 book ai didi

C# HttpListener 和 Windows 防火墙

转载 作者:太空狗 更新时间:2023-10-30 00:15:01 25 4
gpt4 key购买 nike

我正在处理的一个程序有一个内置的网络服务器,意味着只处理非常具体的请求(静态)。与 TcpListener 不同,当 HttpListener 启动时,系统不会提示用户允许该程序监听哪些网络。这导致了一个大问题,因为程序需要监听远程连接,而这些连接现在被 Windows 防火墙拒绝了。

如果我在 Windows 防火墙中创建一个新规则,并在“程序和服务”下选择我的程序,Windows 仍然会拒绝所有远程连接...但是如果我选择“满足指定条件的所有程序”,那么它工作得很好。我的问题是为什么?为什么防火墙在专门选择时拒绝我的应用程序?为什么用户没有像其他监听器一样收到防火墙安全屏幕提示?

最佳答案

这是因为 HttpListener 建立在 http.sys 之上,它将代表您的程序监听您指定的端口。

我还没有找到只允许单个程序通过 Windows 防火墙使用 HttpListener 的方法,但您可能希望通过以下方式将入站规则限制为仅适用于系统组件:

  • 在“程序和服务”标签的“此程序”字段中输入系统
  • 在“协议(protocol)和端口”选项卡中选择协议(protocol)类型 TCP 以及您将监听的端口

关于C# HttpListener 和 Windows 防火墙,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17863294/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com