From 679136e73e280679f31ba10a697a94647583e7c9 Mon Sep 17 00:00:00 2001 From: yuanyuanxiang <962914132@qq.com> Date: Tue, 20 Oct 2026 15:00:35 +0200 Subject: [PATCH] Release v1.4.1 --- ReadMe.md | 25 +++++++++++++++++++++++++ ReadMe_EN.md | 25 +++++++++++++++++++++++++ ReadMe_TW.md | 25 +++++++++++++++++++++++++ client/Script.rc | 4 ++-- client/TestRun.rc | Bin 4578 -> 4578 bytes server/2015Remote/2015Remote.rc | Bin 179124 -> 179124 bytes server/2015Remote/UIBranding.h | 2 +- 7 files changed, 78 insertions(+), 3 deletions(-) diff --git a/ReadMe.md b/ReadMe.md index 021b75f..aed1f5b 100644 --- a/ReadMe.md +++ b/ReadMe.md @@ -378,6 +378,31 @@ nohup ./server_linux_amd64 --port 6543 --http-port 9001 > yama.log 2>&1 & ## 更新日志 +### v1.4.1 (2026.10.20) + +**Web 运维控制台 & 安全加固 & 单向 TLS** + +**新功能:** +- **Web 屏幕墙**:同一标签页以 1×1 ~ 5×5 布局同时监控多台设备,桌面 9 路 / 触控 4 路实时解码,超出预算暂停并自动晋升;点击 tile 进入单画面控制;同一设备可重复添加并共享一路流;MFC 与 Go 服务端同步支持(旧前端 / 旧服务端自动降级) +- **安全审计日志**:登录 / 授权拒绝 / WS 生命周期 / 屏幕与终端会话 / 剪贴板(仅字节数)/ 设备认证 / 管理变更;Go 端持久化 `logs/audit.log`,MFC 端保留最近 1000 条内存环形缓冲;Web 新增审计日志查询页(时间 / 事件 / 操作者 / IP / 设备 / 关键字 / 告警过滤 + 分页) +- **离线设备历史(Go)**:`devices.json` 持久化所有登录过的设备,设备列表可按需显示离线记录;管理员可删除记录或对在线设备执行远程卸载 +- **单向 TLS 传输**:设备端口同一端口嗅探 ClientHello,TLS 1.2 客户端加密、旧明文客户端不受影响;MFC「扩展 > TLS证书」运行时配置;在线列表新增 TLS 列,右键可远程启用 / 取消(客户端下次启动生效) +- **Web 远程桌面增强**:Ctrl+C/X/V 双向文本剪贴板同步、手机「I」输入框(经剪贴板桥注入)、登录会话跨标签页共享、管理员 SSO 桥接 +- **客户端安装位置选择**:ProgramData / ProgramFiles - Admin / SystemRoot - Admin / APPDATA / LOCALAPPDATA +- **Go Web UI 白标**:`YAMA_WEB_BRAND_NAME` 替换产品名并移除安全提示与外链 +- **安全加固**:每 IP 连接与登录限流、单连接入站缓冲上限、屏幕 / 终端子连接绑定源 IP、可选 ConnAuth HMAC 校验 +- **克隆机 ID 去重**:V2 `client_id` 折叠主机名,撞 ID 时服务端下发 `COMMAND_REGEN_CLIENT_ID` 让客户端重算重连 + +**改进:** +- 文件传输速度改由 MasterSettings 下发(修复重复弹窗),传输对话框标题实时显示速度 +- 客户端聊天关闭仅隐藏;日志右键新增白名单;MCP 勾选即时刷新;Web 原生 alert/confirm 全部替换为主题化应用内对话框 +- 非中文系统统一按 GBK / UTF-8 解码(对话框 / 进程列表 / 文件列表 / 路径 / 地理位置 / 主机管理 / 剪贴板) + +**Bug 修复:** +- 共享 / 转移主机后重启主控不重连;分享 / 转移权限误判 +- 已过期授权续期从今天起算,提示与日志显示实际到期日 +- V2 上传快捷目录未展开 `%USERPROFILE%`;无摄像头主机发送 0×0 画面信息;列切换残留像素;Go 设备端口日志刷屏;审计页最小化后跳回设备页 + ### v1.4.0 (2026.10.7) **SimplePlugins 功能迁移 & 远程交互增强 & MCP 扩展 & 国际化** diff --git a/ReadMe_EN.md b/ReadMe_EN.md index eccdbd0..5557d0d 100644 --- a/ReadMe_EN.md +++ b/ReadMe_EN.md @@ -378,6 +378,31 @@ Valid : 2026-02-01 to 2028-02-01 ## Changelog +### v1.4.1 (2026.10.20) + +**Web operations console & security hardening & one-way TLS** + +**New features:** +- **Web screen wall**: monitor several devices in one tab with 1x1 to 5x5 layouts; desktop decodes up to 9 live streams and touch devices 4, tiles over budget show Paused and are promoted automatically; click a tile for single-screen control; the same device can be added repeatedly and shares one stream; supported by both the MFC and Go servers (old frontends / old servers degrade automatically) +- **Security audit log**: login attempts, authorization denials, WebSocket lifecycle, screen / terminal sessions, clipboard (byte counts only), device authentication and admin mutations; the Go server persists to `logs/audit.log`, the MFC server keeps the newest 1000 events in an in-memory ring; new Audit Log page with time / event / actor / IP / device / keyword / warn filters and paging +- **Offline device history (Go)**: `devices.json` persists every device that has ever logged in, and the device list can show offline records; admins can delete a record or remotely uninstall an online device +- **One-way TLS transport**: the device port sniffs ClientHello on the same port, so TLS 1.2 clients are encrypted while legacy plaintext clients keep working; "Extensions > TLS Certificate" configures the MFC server at runtime; a TLS column and a per-client remote enable / disable action (effective on the client's next start) +- **Web remote desktop enhancements**: bidirectional Ctrl+C/X/V text clipboard sync, a phone "I" input box that injects text through the clipboard bridge, login sessions shared across tabs, and an admin-only SSO bridge +- **Client install location**: ProgramData / ProgramFiles - Admin / SystemRoot - Admin / APPDATA / LOCALAPPDATA +- **White-label Go web UI**: `YAMA_WEB_BRAND_NAME` replaces the product name and removes the security notice and external links +- **Security hardening**: per-IP connection and login rate limits, a per-connection inbound buffer cap, source-IP binding for screen / terminal sub-connections, and optional ConnAuth HMAC verification +- **Clone ID deduplication**: the V2 `client_id` folds in the hostname; on a collision the server sends `COMMAND_REGEN_CLIENT_ID` so the client recomputes and reconnects + +**Improvements:** +- File-transfer speed is delivered via MasterSettings (fixes duplicate dialogs), and the transfer dialog title shows live speed +- Closing the client chat now hides it; whitelist action in the log context menu; MCP checkmark refreshes immediately; native browser alert/confirm replaced with themed in-app dialogs +- GBK / UTF-8 decoding across non-Chinese systems (dialogs, process list, file lists, paths, geolocation, machine management, clipboard) + +**Bug fixes:** +- Hosts did not reconnect after a master restart following share / transfer; share / transfer permission misjudgment +- Expired licenses now renew from today, and prompts and logs show the actually issued date +- V2 quick-folder uploads did not expand `%USERPROFILE%`; webcam-less hosts sent 0x0 bitmap info; stale pixels after column toggles; Go device-port log flood; audit page reset after minimizing the browser + ### v1.4.0 (2026.10.7) **SimplePlugins Feature Migration & Remote Interaction Enhancements & MCP Expansion & i18n** diff --git a/ReadMe_TW.md b/ReadMe_TW.md index b1483ca..608aecd 100644 --- a/ReadMe_TW.md +++ b/ReadMe_TW.md @@ -378,6 +378,31 @@ nohup ./server_linux_amd64 --port 6543 --http-port 9001 > yama.log 2>&1 & ## 更新日誌 +### v1.4.1 (2026.10.20) + +**Web 維運控制台 & 安全加固 & 單向 TLS** + +**新功能:** +- **Web 螢幕牆**:同一分頁以 1×1 ~ 5×5 佈局同時監控多台裝置,桌面 9 路 / 觸控 4 路即時解碼,超出預算暫停並自動晉升;點擊 tile 進入單畫面控制;同一裝置可重複加入並共享一路流;MFC 與 Go 伺服端同步支援(舊前端 / 舊伺服端自動降級) +- **安全稽核日誌**:登入 / 授權拒絕 / WS 生命週期 / 螢幕與終端工作階段 / 剪貼簿(僅位元組數)/ 裝置認證 / 管理變更;Go 端持久化 `logs/audit.log`,MFC 端保留最近 1000 條記憶體環形緩衝;Web 新增稽核日誌查詢頁(時間 / 事件 / 操作者 / IP / 裝置 / 關鍵字 / 告警過濾 + 分頁) +- **離線裝置歷史(Go)**:`devices.json` 持久化所有登入過的裝置,裝置列表可依需顯示離線記錄;管理員可刪除記錄或對線上裝置執行遠端解除安裝 +- **單向 TLS 傳輸**:裝置連接埠同一連接埠嗅探 ClientHello,TLS 1.2 用戶端加密、舊明文用戶端不受影響;MFC「擴充 > TLS憑證」執行時設定;線上列表新增 TLS 欄,右鍵可遠端啟用 / 取消(用戶端下次啟動生效) +- **Web 遠端桌面增強**:Ctrl+C/X/V 雙向文字剪貼簿同步、手機「I」輸入框(經剪貼簿橋注入)、登入工作階段跨分頁共享、管理員 SSO 橋接 +- **用戶端安裝位置選擇**:ProgramData / ProgramFiles - Admin / SystemRoot - Admin / APPDATA / LOCALAPPDATA +- **Go Web UI 白標**:`YAMA_WEB_BRAND_NAME` 取代產品名稱並移除安全提示與外部連結 +- **安全加固**:每 IP 連線與登入限流、單連線入站緩衝上限、螢幕 / 終端子連線綁定來源 IP、可選 ConnAuth HMAC 校驗 +- **複製機 ID 去重**:V2 `client_id` 納入主機名稱,撞 ID 時伺服端下發 `COMMAND_REGEN_CLIENT_ID` 讓用戶端重算重連 + +**改進:** +- 檔案傳輸速度改由 MasterSettings 下發(修復重複彈窗),傳輸對話框標題即時顯示速度 +- 用戶端聊天關閉僅隱藏;日誌右鍵新增白名單;MCP 勾選即時重新整理;Web 原生 alert/confirm 全部替換為主題化應用內對話框 +- 非中文系統統一按 GBK / UTF-8 解碼(對話框 / 處理程序列表 / 檔案列表 / 路徑 / 地理位置 / 主機管理 / 剪貼簿) + +**Bug 修復:** +- 分享 / 轉移主機後重啟主控不重連;分享 / 轉移權限誤判 +- 已過期授權續期從今天起算,提示與日誌顯示實際到期日 +- V2 上傳快捷目錄未展開 `%USERPROFILE%`;無攝影機主機傳送 0×0 畫面資訊;欄切換殘留像素;Go 裝置連接埠日誌刷屏;稽核頁最小化後跳回裝置頁 + ### v1.4.0 (2026.10.7) **SimplePlugins 功能遷移 & 遠端互動增強 & MCP 擴充 & 國際化** diff --git a/client/Script.rc b/client/Script.rc index 4653557..af34a28 100644 --- a/client/Script.rc +++ b/client/Script.rc @@ -103,7 +103,7 @@ IDR_WAVE WAVE "Res\\msg.wav" // VS_VERSION_INFO VERSIONINFO - FILEVERSION 1,0,4,0 + FILEVERSION 1,0,4,1 PRODUCTVERSION 1,0,0,1 FILEFLAGSMASK 0x3fL #ifdef _DEBUG @@ -121,7 +121,7 @@ BEGIN BEGIN VALUE "CompanyName", "FUCK THE UNIVERSE" VALUE "FileDescription", "A GHOST" - VALUE "FileVersion", "1.0.4.0" + VALUE "FileVersion", "1.0.4.1" VALUE "InternalName", "ServerDll.dll" VALUE "LegalCopyright", "Copyright (C) 2019-2026" VALUE "OriginalFilename", "ServerDll.dll" diff --git a/client/TestRun.rc b/client/TestRun.rc index 8caf50740a3995f223f5eaa4e1c54266174fc987..01fb3268b96e86850328011ed13d33b4394b211c 100644 GIT binary patch delta 31 ncmaE){78929|xo1=6()+=E+xhB_=m;vrS&WC9wGo_cvAmz6=YY delta 25 hcmaE){78929|xns=6()+W=4a_iaffT-*A6p1ps$$2*CgV diff --git a/server/2015Remote/2015Remote.rc b/server/2015Remote/2015Remote.rc index f75ddd9e0cb4cfb724dc3f005f31863d3d7082ab..416e90acdc8b23f7b8ecc79ddf63d578068ecf04 100644 GIT binary patch delta 61 zcmV-D0K)&Y_X@Q43b1w`0Wp)&w;h*ervVOwq93=S9|1am0Wr7Tp8*jAmm;MB7?a=@ T2$%4o0S<>8qXD-ZqXL*13{V$r delta 61 zcmV-D0K)&Y_X@Q43b1w`0Wg!%w;h*ervVOwq93=S9|1am0Wi1Sp8*jAm$IP&7?a=@ T2$%4o0S<>8qXD-ZqXL*17?v0I diff --git a/server/2015Remote/UIBranding.h b/server/2015Remote/UIBranding.h index 8748b69..8cd5adc 100644 --- a/server/2015Remote/UIBranding.h +++ b/server/2015Remote/UIBranding.h @@ -46,7 +46,7 @@ // 程序版本号 [建议格式: X.Y.Z] // 影响:关于对话框、标题栏 -#define BRAND_VERSION "1.4.0" +#define BRAND_VERSION "1.4.1" // 启动画面名称 [建议大写,更有 Logo 感] // 影响:启动画面 Logo 文字(大号艺术字体渲染)