2026年11月11日,开发者在V2EX发布开源堡垒机Casvisor,采用Apache-2.0许可证,以单个Go二进制实现SSH、RDP、VNC、Telnet四种协议的接入与审计。项目定位为JumpServer之外的开源替代方案,强调功能完整、单二进制部署、可接入自有SSO。
开发者表示,团队管理数十台服务器时普遍面临“谁在何时连了哪台机器、做了什么”的追溯难题,共享账号、密码群发、共用跳板机账号等做法导致事故后仅能查到IP,无法定位到人。堡垒机正是为解决该问题而设计。
背景:现有开源方案的局限
开发者在选型时对比了多个开源堡垒机,认为均存在不同限制:
- JumpServer:国内事实标准,但RDP代理、数据库原生客户端代理(Magnus)、远程应用等功能放在企业版中;
- Teleport:采用AGPL许可证,社区版二进制对企业规模和收入有限制;
- Next Terminal:2.0起服务端闭源,免费版限100个资产;
- Boundary:仓库已归档;
- Warpgate:Apache-2.0、Rust、单二进制,被开发者称为目前最接近“完全开源”的对手。
因未找到满足“功能完整、一个二进制就能跑、能接自己的SSO”的方案,团队决定自行开发Casvisor。
连接能力:四协议与网域网关
Casvisor在连接层覆盖四种协议。SSH通过网页xterm.js终端提供,旁侧文件面板经SFTP上传下载;RDP使用自研纯Go客户端gordp,支持NLA、GFX图形管道(ClearCodec与RemoteFX Progressive)、高DPI清晰字体、远程光标、剪贴板、窗口自适应及重定向磁盘传文件,已连接Windows Server与Windows 10/11,也可连接FreeRDP类主机;VNC基于noVNC,认证由后端完成,浏览器不接触VNC密码;Telnet面向交换机与老设备,自动填充资产中存储的账号。
此外,SSH网关支持通过ssh -p 2222 web-01@casvisor.example.com方式接入,scp、sftp、rsync、Xshell、VS Code Remote均可使用,公钥登录与网页端共享同一套权限。网域网关方面,Casvisor直连不到的目标可经SSH跳板机中转;无跳板机的网络可在内网任意机器运行casvisor agent,由agent主动外连且不监听端口。密码与私钥加密存库,SSH主机密钥和RDP证书首次连接时记录,后续变更即拒绝连接,用户全程看不到服务器密码。
权限控制与审计
权限按“用户/用户组 × 资产/资产标签”配置,动作涵盖连接、复制、粘贴、上传、下载、端口转发,可限制来源IP段与有效期,底层使用Casbin。命令规则以正则匹配,命中后可拦截(不发送回车,改发Ctrl+C)或仅告警,网页终端与SSH网关均生效。权限修改、删除或到期后,已连接会话会被立即断开。
审计方面,四种协议的会话均录像,回放直接在浏览器中进行,复用实时连接代码;SSH与Telnet录像可下载为asciicast。在线会话支持实时旁观与强制断开。SSH/Telnet命令记录从虚拟屏幕读取,可准确记录Tab补全、历史调用、中文与行内编辑,但vi、top等全屏程序中的回车与密码输入不记录。文件传输及所有API改动均进入操作日志。
运维与部署
Casvisor附带补丁管理功能:SSH资产可扫描待装系统更新并一键安装、重启;Windows通过Windows Update的COM接口,Linux支持apt、dnf、yum。部署方式为Docker,素材中给出的启动命令为docker run -d --name casvisor -p 19000:,端口映射的后半部分在原始帖文中未完整显示。
开发者未在帖文中披露项目GitHub地址、版本号及性能测试数据,后续关注点包括社区反馈、与Warpgate等方案的实测对比,以及企业级功能(如数据库代理、远程应用)的路线规划。
