Windows - 防火墙 - 如何开启单个端口以供Web应用访问(以82端口为例) - 开启端口后还是访问失败了?

Windows - 防火墙 - 如何开启单个端口以供Web应用访问(以82端口为例) - 开启端口后还是访问失败了?

前言

在网上搜"防火墙开启某个端口"供其他机器访问,都是只讲到了"如何允许某个端口被访问",而没有后续了。

我之前就遇到过这个问题,开启端口后仍然无法在局域网内的其他机器上访问我的主机,关掉防火墙后就可以访问了。

百思不得其解,突然灵光一闪,一试果然可以。

Why

单单开放本设备的82端口,其他设备是可以访问本设备的82端口了。但是想要从82端口转发到提供web服务的程序(后面以Python为例),还需要保证"允许Python穿过防火墙",或者说"不拒绝Python穿过防火墙"。

之前在运行Python程序的时候弹出过"是否允许Python穿过防火墙",没有点"允许"而是关掉了,导致防火墙多了一条"禁止Python穿过防火墙"的规则。

因此其他设备的访问到达本机的82端口后,没有被转发给Web服务的提供着Python,其他设备上无法看到页面。

How

分为两步:

  1. 允许82端口的入站
  2. 不禁止Python穿过防火墙

1. 允许82端口的入站

Win + R+ contrl+ 回车或其他方式)打开控制面板,访问控制面板\所有控制面板项\Windows Defender 防火墙,点击高级设置

点击入站规则,点击新建规则,选择端口下一页

选择你要开启的协议类型(网页服务的话一般是TCP),输入你要开放的端口(后端服务提供程序的端口),下一页

选择允许连接下一页

选择你允许访问的网络,若不清楚你当前连接的网络类型,则全选即可。下一页

随便起个名字,点击完成,大功告成。

这时候可以在局域网(wifi、校园网、热点等)或公网(如有)下使用其他设备连接本设备的ip地址加端口号,看能否访问成功。

2. 不禁止Python穿过防火墙

若第1.步后仍无法访问,则需要在入站规则中查看是否有禁止 服务提供程序 穿过防火墙的规则。

以我写的一个通过网页在其他设备上向电脑发送快捷键的脚本为例,这个脚本是用Python运行的,它开启的是82端口。我在第1.步已经开启了82端口的TCP入栈规则,还是无法在其他设备上访问。

于是我找了一下入栈规则,发现有一条禁止Python穿过防火墙的规则。

删掉这个规则(你也可以选择禁用该规则),手机就能访问电脑提供的网页了。

若规则列表中没有找到Python,你可以在程序这一列寻找是否有Python。若你的服务提供程序不是Python,则需要找到相应程序的对应规则。这些规则可能不是你主动添加的,而是"不小心"或其他程序添加的。总之,删掉就好。

End

原创不易,转载经作者同意后请附上原文链接哦~
https://letmefly.blog.csdn.net/article/details/135981716

相关推荐
cpsvps_net7 小时前
美国服务器环境下Windows容器工作负载智能弹性伸缩
windows
甄超锋8 小时前
Java ArrayList的介绍及用法
java·windows·spring boot·python·spring·spring cloud·tomcat
cpsvps10 小时前
美国服务器环境下Windows容器工作负载基于指标的自动扩缩
windows
网硕互联的小客服13 小时前
Apache 如何支持SHTML(SSI)的配置方法
运维·服务器·网络·windows·php
etcix13 小时前
implement copy file content to clipboard on Windows
windows·stm32·单片机
许泽宇的技术分享13 小时前
Windows MCP.Net:基于.NET的Windows桌面自动化MCP服务器深度解析
windows·自动化·.net
非凡ghost14 小时前
AMS PhotoMaster:全方位提升你的照片编辑体验
windows·学习·信息可视化·软件需求
mortimer16 小时前
一次与“顽固”外部程序的艰难交锋:subprocess 调用exe踩坑实录
windows·python·ai编程
gameatp18 小时前
从 Windows 到 Linux 服务器的全自动部署教程(免密登录 + 压缩 + 上传 + 启动)
linux·服务器·windows
穷人小水滴18 小时前
在 windows 运行 flatpak 应用 (WSL)
linux·windows·ubuntu