文章总结: ZnScreen是一款跨平台实时屏幕共享工具,支持Linux、macOS和Windows系统。其核心特性包括零外部依赖、极低延迟、背压保护、fan-out广播和随机密码安全机制。工具采用ffmpegMJPEG硬件编码结合WebSocket传输,提供15-30fps可调帧率,支持自定义监听地址端口,并附带详细命令行参数说明与各平台部署指南。 综合评分: 85 文章分类: 安全工具,解决方案,应用安全
ZnScreen跨平台实时屏幕共享工具
原创
zngeek zngeek
蓝极战队
2026年6月24日 23:53 贵州
在小说阅读器读本章
去阅读
好久没更新了,大家还在否?
事情是这样滴,今天去参加了一个技术交流沙龙,我分享了一个最近我潜心闭关研究的屌炸天的AI代码审计引擎,然后尴尬的事情发生了。
现场居然只有无线投屏,众所周知,我是linux的脑残粉,基本真机都不用windwos的,市面上99%的无线投屏器都是不支持linux操作系统的。于是我灵机一动,就拿别人的windows电脑投屏吧,然后他打开浏览器F11全屏实时显示我的屏幕不就OK了吗?于是就有了这样一个短时间手搓的实时屏幕共享工具。
跨平台可用,我编译了macos、linux和windows
#
特性
- 零外部依赖 — Linux/Windows 内置 ffmpeg 静态二进制,解压即用;macOS 使用系统 ffmpeg
- 极低延迟 — ffmpeg MJPEG 硬件编码 + WebSocket 二进制帧直推,不经 Canvas 渲染
- 背压保护 — 环形缓冲区仅保留最新一帧,慢客户端自动丢帧,不拖垮服务端
- fan-out 广播 — 单个 ffmpeg 进程服务所有 WebSocket 客户端,按需启停
- 跨平台 — Linux(X11)、macOS(AVFoundation)、Windows(GDI)均可捕获
- 随机密码 — 每次启动生成随机密码,打印在终端
#
快速开始
# 下载对应平台的二进制
# 或自行编译:make build
# 启动(默认监听 0.0.0.0:9115)
./znscreen
# 终端输出:
# 密码: a1b2c3d4e5f6g7h8
# ZnScreen 已启动: http://0.0.0.0:9115
浏览器打开 http://服务器IP:9115,输入密码即可观看屏幕。
命令行参数
| 参数 | 默认值 | 说明 |
| — | — | — |
| -h | 0.0.0.0 | 监听地址 |
| -p | 9115 | 监听端口 |
| -r | 15 | 帧率(fps) |
| -q | 5 | JPEG 质量(2–31,越小越清晰) |
# 自定义示例./znscreen -h 127.0.0.1 -p 8080 -r 30 -q 3
平台支持
| 平台 | 内置 ffmpeg | 二进制大小 | 说明 |
| — | — | — | — |
| Linux amd64 | ✅ | ~143MB | X11 屏幕捕获 |
| Linux arm64 | ✅ | ~107MB | X11 屏幕捕获 |
| macOS amd64 | ❌ | ~5MB | 需 brew install ffmpeg |
| macOS arm64 | ❌ | ~5MB | 需 brew install ffmpeg |
| Windows amd64 | ✅ | ~142MB | GDI 屏幕捕获 |
下载地址:
关注本公众号,回复 znscreen 即可下载
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:蓝极战队 zngeek zngeek《ZnScreen跨平台实时屏幕共享工具》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。








评论