本指南涵盖的内容
RMMZit 是免费的开源(AGPLv3)远程监控与管理(RMM)工具。远程访问是其中的一部分:每台装有 RMMZit 代理的计算机都可以从 Web 控制台打开远程桌面会话、终端或文件管理器。TeamViewer、AnyDesk 等托管式远程支持工具由厂商替你运行服务;RMMZit 则由你自己托管——控制台运行在你的服务器上,会话在你的服务器和你的代理之间进行。
准备工作
- 一台运行中的 RMMZit 服务器——如果还没有,请参阅安装指南。
- 装有 RMMZit 代理的计算机:Windows 10 / 11 或 Windows Server 2016 及更高版本(64 位),或使用 systemd 的 Linux(x86-64 或 ARM64)。
- 一个角色为管理员或技术员的账户。技术员只能看到允许其管理的客户。
- 一个较新的 Web 浏览器。技术员的计算机上无需安装任何东西。
会话如何到达计算机
服务器有两个端口:控制台(Web 界面和 API,TCP 8443)和代理端点(TCP 8444)。代理以出站方式连接代理端口,因此被管理的计算机无需开放端口,也无需端口转发。远程会话使用同一条连接:一切都经过代理的加密连接,并写入审计日志。
注册时,代理会固定服务器证书的指纹,因此伪造的服务器无法接管它。控制台发出的每条命令都由服务器签名并由代理验证。对于你网络之外的计算机,请在防火墙上开放 TCP 8444,并在设置 → 网络与访问中设置公共代理地址;控制台端口保持关闭。
发起远程桌面会话
- 打开设备并点击该计算机(页眉中的搜索,Ctrl+K,可按名称、用户、IP 地址等查找)。
- 点击远程桌面——在设备页面中或在单独的窗口中。你可以看到屏幕,并用鼠标和键盘控制它。
查看器提供支持工作所需的功能:
- 键盘:点击屏幕即可输入;按键以远程计算机自己的键盘布局发送过去。发送 Ctrl+Alt+Del 和发送文本(输入一段文本,例如较长的密码)位于工具栏中。
- 全屏:Ctrl+W 或 Windows 键等快捷键也会发送到远程计算机;按住 Esc 退出全屏。
- 画质:根据连接选择快速、均衡或清晰。
- 显示器:选择一台显示器或所有显示器。
- 登录和 UAC 屏幕会显示并可操作,因此你可以登录并确认管理员提示。
对方用户看到什么
会话直接开始;用户无需接受。默认情况下,在你连接期间,计算机前的人会在屏幕顶部看到一条显示你名字的横条。你在画面中看不到这条横条。
管理员可以在设置 → 远程桌面中关闭横条(技术员连接时在远程屏幕上显示提示)。无论如何,每次会话都会写入审计日志。RMMZit 的安全最佳实践建议保持开启,让用户知道何时有人连接。
请告诉你的用户和客户你们公司的远程支持如何进行——技术员可以连接,横条会显示是谁。是否还需要更多,例如与客户的书面协议,取决于你的合同和当地规定。
剪贴板和文件复制
在 Windows 计算机上,复制的文本可通过 Ctrl+C 和 Ctrl+V 双向传递。在你的资源管理器中复制的文件可用 Ctrl+V 粘贴到远程计算机上。在远程计算机上复制的文件会以下载形式提供(下载复制的文件),因为浏览器无法把文件放进你的剪贴板。通过剪贴板复制文件需要 Windows 计算机上有已登录的用户。
剪贴板交换可以在设置 → 远程桌面中关闭。
远程终端:PowerShell 和 root shell
终端在浏览器中打开设备的 shell,无需连接屏幕——适合服务器,也适合在用户继续工作时快速修复问题。
- Linux:root shell。
- Windows:以 SYSTEM 身份在伪控制台上运行的 Windows PowerShell。需要代理 0.12 或更高版本,以及 Windows 10 1809 / Windows Server 2019 或更高版本。
点击终端即可输入;选中文本即可复制,用 Ctrl+Shift+V 或发送文本粘贴。离开页面会结束 shell 及其启动的所有程序。会话的开始和结束会写入审计日志。
对于经常运行或要在多台计算机上同时运行的命令,请改用脚本:PowerShell、cmd、bash 或 sh,以 SYSTEM 或 root 身份,在一台设备、多台设备上运行或按计划运行,并保存每次运行的输出。
文件、进程、服务、注册表和任务
很多支持工作根本不需要屏幕。设备页面为此提供了选项卡:
- 文件浏览计算机的驱动器:上传文件(最大 4 GB)、下载文件、将文件夹或所选内容下载为 ZIP、新建文件夹、重命名和删除。代理以 SYSTEM(Windows)或 root(Linux)身份执行每个文件操作。
- 进程列出正在运行的程序及其内存、线程和会话,并可结束进程。
- 服务列出 Windows 服务或 systemd 单元,并可启动、停止或重启它们。RMMZit 代理会保护自身:无法从控制台停止或结束它。
- 注册表(Windows,代理 0.12 及更高版本)按路径或从根 HKLM、HKU、HKCR 和 HKCC 打开项;可以添加、修改和删除值和项。根、根下一级的项以及系统自身的分支受到保护。用户的注册表位于 HKU 下(按其 SID)。
- 计划任务(Windows,代理 0.12 及更高版本)列出任务计划程序中的任务;任务可以运行、结束、启用、禁用和删除。
设备页面上的电源按钮可立即或延迟重启或关闭计算机,并可选择向已登录用户发送消息。
谁可以连接,记录哪些内容
每个人都用自己的账户和两步登录进行登录。角色决定可以做什么:
- 管理员——所有操作,包括用户和设置(例如提示和剪贴板开关);始终能看到所有客户。
- 技术员——管理允许的客户的设备:远程访问、脚本、更新、程序、警报。
- 只读——只能查看允许的客户;没有远程访问,也不能运行脚本。
技术员和只读用户可以访问所有客户,或仅部分客户。账户在用户中添加,也可以来自 Active Directory / LDAP 或单点登录。
审计日志列出每一次更改和每一次远程操作,包括用户、目标和地址:远程桌面会话、终端会话(开始和结束)、每个带你名字的文件操作、每个注册表更改及其被替换的值、对计划任务的每个操作。日志条目以哈希链相连;控制台每次查看时都会检查该链,并报告是否有条目被修改或删除。客户报告会根据审计日志列出技术员的工作——远程桌面和终端会话、运行的脚本和文件操作。
网络与安全
- 只允许从你的管理网络访问控制台;如需从外部访问,请使用 VPN(例如 WireGuard),而不是开放控制台端口。
- 只在有代理的地方开放代理端口;如果所有代理都来自已知地址,请设置代理网络。
- 给每个人分配自己的账户,使用最低的角色,只给其需要的客户;离职人员的账户要禁用。
- 在设置 → 证书中使用浏览器信任的证书(Let's Encrypt 或你自己的 CA)。
- 保持远程屏幕上的提示开启,并不时查看审计日志。
终端、脚本或文件操作以完整权限(SYSTEM 或 root)运行。能以技术员身份登录的人就能更改这些计算机——请相应地保护账户。
限制
- Linux 桌面:远程桌面适用于 X11(Xorg)。Wayland 不允许后台服务查看或控制屏幕:请在那里使用 X11 会话登录,或使用终端。没有图形桌面时,请使用终端。
- 通过远程桌面的剪贴板和文件复制适用于 Windows 计算机。
- Windows 上的终端:代理 0.12 或更高版本,以及 Windows 10 1809 / Windows Server 2019 或更高版本。
- 注册表和计划任务:仅限 Windows,代理 0.12 及更高版本。
- 文件管理器中的上传:每个文件最大 4 GB。
RMMZit 的全部功能见功能页面,可在下载页面获取,完整参考见文档和安全页面。要安装服务器和第一批代理,请按照安装指南操作。欢迎在 GitHub Discussions 提问。企业可以从 MaxZit 获得商业支持(仅提供英文服务)。