feat(installer): 「为所有用户安装」那趟自动放行防火墙入站 19540(装时加 / 卸时回收)
- deploy/prepare-extra.mjs 生成的安装器脚本新增两个 !define(规则名 / 端口)与两段逻辑: customInstall 里当 $installMode == "all" 且当前是提权进程时,先删后加一条入站放行规则; customUnInstall 里只要是管理员就回收同一条规则。失败一律忽略,绝不因此让安装/卸载失败。 - 订正 docs 里「安装包按用户安装、不申请提权、改不了防火墙」这句错话(部署指南 7.5/7.9、 上线检查清单、常见问题 Q101、升级说明):选「为所有用户安装」会 UAC 提权,那一趟就把规则加好了; 「仅为我安装」才需要现场手工放行。手工规则名与自动规则名不同,卸载只删自动那条。 - .gitignore 注释补上「防火墙入站规则」。 验证:四套自检全绿(服务端 13 包 / 前端 vue-tsc + 680 例 + build / Console 20 文件 + 68 例); 生成器重跑幂等(.nsh 哈希 9edcdc31… 不变);本机 wine 用 makensis v3.04 编译含该 .nsh 的脚本 0 error。 未验证(需真机):提权安装后防火墙里真的出现该规则、卸载真的删掉、失败分支真机表现。
This commit is contained in:
1 parent
c97d3150c9
commit
78b14efaa9
6 files changed
+66
-13
No files matched your search
+10
-3
@@ -403,13 +403,20 @@ scoreboard.exe passwd -config "%LOCALAPPDATA%\ScoreboardConsole\config.yaml" -da
|
||||
|
||||
另外两种来源会各带一句提示、**照常能用**:网卡状态读不到时提示「网卡状态读不到(可能是驱动或虚拟网卡),地址本身可用,打不开就换下面一条」;按系统默认路由推断出来时提示「这条地址是按系统默认路由推断出来的(网卡枚举里没有它),地址本身可用,打不开就换下面一条」。
|
||||
|
||||
**防火墙必须放行入站 19540**(默认端口,改过端口就换成实际端口)。在**管理员** cmd 里跑:
|
||||
**防火墙要放行入站 19540**(默认端口,改过端口就换成实际端口)。安装包会替你放行,分两种情况:
|
||||
|
||||
- 安装时选了**「为所有用户安装」**:安装程序会弹 UAC 提权,**提权那一趟就顺手把入站 19540 放行了**(规则名 `Scoreboard Console (TCP 19540)`),装完不用再管;卸载时会自动把这条规则删掉。
|
||||
- 安装时选了**「仅为我安装」**:全程不申请提权,装不了防火墙规则,**必须手工放行**。也可以重新跑一次安装程序、这次选「为所有用户安装」,让它自动放行。
|
||||
|
||||
手工兜底(给「仅为我安装」的机器,以及改过端口、装了才发现要放行的机器)——在**管理员** cmd 里跑:
|
||||
|
||||
```bat
|
||||
netsh advfirewall firewall add rule name="Scoreboard 19540" dir=in action=allow protocol=TCP localport=19540
|
||||
```
|
||||
|
||||
为什么安装包不能替你加这条:安装包是**免管理员的按用户安装**(默认装到当前用户目录),**不申请管理员提权**,所以改不了系统防火墙规则;这一步必须由现场用管理员身份手动做一次。临时关掉防火墙只能用来**验证**「是不是防火墙挡的」,验证完要恢复;正式开赛前一定用上面这条命令放行,而不是一直关着防火墙。
|
||||
注意这条手工规则的名字(`Scoreboard 19540`)与安装程序自动加的那条(`Scoreboard Console (TCP 19540)`)**不一样**:卸载时安装程序只会删掉自己加的那条,手工加的这条要自己 `netsh advfirewall firewall delete rule name="Scoreboard 19540"` 删;两条同时存在只是重复放行,不影响使用。
|
||||
|
||||
临时关掉防火墙只能用来**验证**「是不是防火墙挡的」,验证完要恢复;正式开赛前一定用上面这条命令(或改用「为所有用户安装」重跑一次安装程序)放行,而不是一直关着防火墙。
|
||||
|
||||
**排障常识**:Windows 里「网线插着、网卡显示 Up」**不等于拿到了 IP**;`ipconfig` 里看到 `169.254.x.x` 说明**本网段没有 DHCP**(地址是设备自配的)——这在**独立小网络**里是正常用法,**不是故障**,同网段的平板 / 手机照样能访问。
|
||||
|
||||
@@ -446,7 +453,7 @@ http://<主机IP>:19540/display
|
||||
|
||||
- 这个地址不用手敲:管理端「大屏控制 → 局域网大屏」卡片里有**可复制的完整链接**与**二维码**(第一个地址),别的设备扫码或在浏览器里粘贴即可打开(该卡片需录入员及以上登录才看得到);
|
||||
- 需要主机设置固定 IP,且设备与主机在同一局域网;
|
||||
- **主机防火墙要放行入站 19540**(默认端口):安装包是按用户安装、不申请管理员提权,改不了防火墙规则,需要在**管理员** cmd 里手动执行一次,命令与说明见 7.5;
|
||||
- **主机防火墙要放行入站 19540**(默认端口):装的时候选**「为所有用户安装」**,安装程序提权时会自动放行,不用再管;选了「仅为我安装」就得手工放行一次,命令与说明见 7.5;
|
||||
- 安卓电视一般常亮,无需额外防熄屏;
|
||||
- 浏览器方案**不受** Console 的 kiosk、防熄屏、选屏控制,字体与动画表现以实际设备为准;
|
||||
- 现场以 Console + HDMI 为主方案,浏览器访问作为备用。
|
||||
|
||||
Reference in new issue
Block a user