LinuxView:一款你真正用得上的 Linux 可视化管理工具

它不是 FinalShell 的复制品,而是面向团队协作场景,把安全、权限和审计做到位的服务器管理面板。


前言:我为什么要做这个项目

说实话,市面上的 SSH 工具已经多到让人选择困难了——FinalShell、Xshell、Tabby、Termius,各有各的好。这些工具在"单人单机"的场景下体验都很棒,但一旦切换到"一个团队管理多台服务器"的模式,问题就来了:

  • 密码怎么分发?总不能把 root 密码甩到群里吧。
  • 谁在服务器上干了什么?出了问题连溯源都做不到。
  • 能不能让实习生只能访问 /home/deploy 目录,别让他把 /etc 玩坏了?
  • 每次都要在本地装客户端,换个电脑还得重新配连接,烦不烦?

LinuxView 就是冲着这些痛点来的。

它的核心思路很简单:把 SSH 管理搬到浏览器里,再加上多用户、权限控制和操作审计。你只需要在一台机器上部署服务,团队成员用浏览器就能连接各自被授权管理的服务器。如果你更习惯桌面端的体验,还有 Electron 打包的独立应用,开箱即用。


一图胜千言:看看它长什么样

以下所有截图均为 LinuxView 实际运行界面,所见即所得。

文件管理:操作远程文件就像操作本地的一样

文件管理

左边是连接树和目录树,右边是文件列表和在线编辑器。支持拖拽上传(单文件最大 500MB,批量最多 5000 个文件),下载直接走流式传输不占内存。内置 Monaco Editor,语法高亮、自动语言检测、Ctrl+S 保存,和 VS Code 一个体验。

最让我得意的一个细节:目录列表做了 30 秒缓存。你切换目录的时候不会有那种"卡一下再刷新"的感觉,这个思路完全是从 FinalShell 那儿偷师的。

Web 终端:随时随地敲命令

终端

底层是 xterm.js + WebSocket,支持 256 色、窗口 resize、心跳保活。断网重连做了指数退避(1s-2s-4s-8s-16s,最多 30s),不会因为网络波动就把你踢出去。

有一点很实用:非管理员用户打开终端时会自动 cd 到授权目录,你想乱跑也没用。

连接管理:你的服务器管家

连接管理

支持密码和密钥两种认证方式,私钥和密码用 AES-256-GCM 加密存库——不是明文,不是 Base64,是真的加密。SSH 底层做了连接池复用和 SFTP 会话池,性能上对标 FinalShell:优先使用 aes128-gcm 算法,默认开启 zlib 压缩,10 秒 keepalive,这些在代码里都调过。

脚本执行:把重复劳动打包成按钮

脚本执行

把常用的运维脚本保存下来,支持分组管理,点击即执行,结果通过 SSE 流式返回。还有"快速命令"入口,不用保存就能直接执行一行命令。部署新环境的时候,不用再翻聊天记录找那个"nginx 重载"的命令了。

用户管理和权限控制:这才是核心价值

用户管理

这是 LinuxView 区别于其他 SSH 工具最本质的地方。

你可以创建多个用户,每个用户可以分配不同的连接权限。重点看这个:

用户权限配置

权限控制有三个维度:

  1. 连接级:这个用户能用哪几台服务器?
  2. 路径沙箱(Home Only 模式):限制用户只能在指定目录下活动,也就是只能看 /home/deploy,够不着 /etc。
  3. 目录黑名单:可以在全局默认黑名单(/proc、/sys、/dev 这些)之外,给特定用户追加额外的屏蔽目录。

这不是简单的读写权限,而是直接让某些路径对用户"不可见"。

系统监控:一屏看清服务器状态

系统管理

选一台连接,点刷新,CPU、内存、磁盘、网络流量、进程 Top 10 全出来了。5 秒自动刷新,不需要额外安装任何 Agent——全部通过 SSH 执行命令获取。

操作审计:谁干了什么,一目了然

操作审计

登录、登出、文件上传下载删除、连接增删改查、脚本执行……每一次操作都会被记录。支持按用户、操作类型、关键字和时间范围筛选。这个功能在等保合规的场景下是刚需。

回收站:给手滑留条后路

回收站

删除的文件不会直接消失,而是先移到远程服务器的 /.linuxview-trash 目录,同时在数据库里记录原路径。你可以随时恢复,也可以彻底删除。这个功能真的救过我一次——当时不小心把一个 2G 的日志归档给删了,还好回收站里找回来了。

主题定制:不折腾不舒服星人的福音

主题

每个页面都可以单独设置背景——纯色、渐变、图片都行。侧边栏默认深色,内容区透明度可调,字体颜色大小也能改。配置保存在 localStorage 里,下次打开还在。

菜单切换:试试其他功能

菜单切换

侧边栏承载了所有功能区:文件管理、终端、脚本执行、连接管理、用户管理、系统管理、操作审计、回收站、主题设置,一目了然,切换流畅。

桌面版:Electron 加持的原生体验

001

002

如果你不喜欢用浏览器,LinuxView 还提供了 Electron 桌面版。支持 NSIS 安装包和便携版(Portable)两种分发方式,有系统托盘、自动更新、原生窗口。后端和前端的代码打包在一个 exe 里,装了就能用。


技术架构:不玩虚的

整个项目的技术选型很务实,不追求花哨:

层级 技术 为什么选它
前端 Vue 3 + Element Plus + xterm.js + Monaco Editor Element Plus 组件覆盖率高,Monaco 编辑体验好
后端 Node.js + Express + ssh2 + better-sqlite3 ssh2 是 Node 生态里最成熟的 SSH 库
通信 REST API + WebSocket + SSE 不同场景用不同协议,不强行统一
终端 xterm.js + ws (WebSocket) 心跳保活、自动重连都有现成的生态
数据库 SQLite (WAL 模式) 零配置、单文件、够用
桌面端 Electron 28 + electron-builder + electron-updater 打包分发方便,自动更新成熟
加密 AES-256-GCM + bcrypt + SHA256 + JWT 存储加密、密码哈希、认证鉴权各司其职
激活 HMAC-SHA256 绑定硬件 机器码由主机名+MAC+CPU+内存生成

整个架构透着一股"够用就好"的工程审美——没搞微服务,没上 Redis,没整 K8s。一个 Node 进程,一个 SQLite 文件,跑起来就行。


独有功能:这些是别家没有的

整理了一下 LinuxView 和市面上常见 SSH 工具的对比:

功能 FinalShell Xshell Tabby LinuxView
Web 终端 部分 ❌ ❌ ✅
多用户管理 ❌ ❌ ❌ ✅
路径沙箱 ❌ ❌ ❌ ✅
目录黑名单 ❌ ❌ ❌ ✅
操作审计日志 ❌ ❌ ❌ ✅
文件回收站 ❌ ❌ ❌ ✅
凭证加密存储 ✅ ✅ ✅ ✅ AES-256-GCM
硬件绑定激活 ❌ ❌ ❌ ✅ HMAC-SHA256
桌面端自动更新 ✅ 商业版 ✅ ✅ electron-updater
单 exe 便携分发 ❌ ❌ 有 ✅
系统监控仪表盘 ✅ ❌ ❌ ✅
页面级主题定制 ❌ ❌ 主题 ✅

LinuxView 和 FinalShell 的定位不同:FinalShell 更偏向"个人高级 SSH 客户端",而 LinuxView 是一个"团队级服务器管理面板"。它不怕和 FinalShell 比终端体验,又多了权限、审计、回收站这些团队协作刚需的东西。


适用场景

说说我实际在用的几个场景:

场景一:开发团队共享跳板机
项目经理怕开发人员直接登生产服务器,就只给他们分配了跳板机的连接权限,还限制了只能在 /home/deploy 下活动,想删库都找不到路径。

场景二:外包人员临时授权
来了个外包做数据库迁移,在 LinuxView 上给他新建一个账号,只分配数据库服务器的连接,权限设成 Home Only,完事了把账号一删。不用改服务器密码,不用操心他会不会乱翻文件。

场景三:运维值班交接
三个运维轮流值班,每个人在 LinuxView 上都有独立的账号。谁在什么时间执行了什么操作,审计日志记得清清楚楚。以前出了问题扯皮半小时,现在日志一查五分钟搞定。

场景四:个人服务器管理
就你一个人用也没问题。浏览器里打开就能管理所有服务器,不用在每台电脑上装客户端。换电脑、换系统、甚至是临时用别人电脑,登录网页就行。


桌面版(Electron)

桌面版内置了后端服务,启动即用。支持 NSIS 安装包和便携版,Windows 和 Linux 都有构建产物。

桌面版额外支持硬件绑定激活机制:使用 HMAC-SHA256 签名,机器码由主机名 + MAC 地址 + CPU 型号 + 内存大小生成。开发者可以通过 CLI 工具为任意机器码生成激活码,适合商业分发。


写在后面

LinuxView 不是一个大而全的项目——它没有容器管理,没有 CI/CD,没有 Grafana 那种炫酷的监控面板。它就是脚踏实地解决一个具体问题:让团队安全地管理 Linux 服务器。

如果你只是一个人用,FinalShell 或 Tabby 可能就够了。但如果你有团队协作的需求,或者你需要做商业分发(桌面版的激活机制就是为这个准备的),LinuxView 值得你试一下。

可以向作者申请要全部代码,欢迎 Star、PR 和 Issue。


相关资源

  • 项目仓库:GitHub
  • 许可证:MIT License
  • 技术栈:Vue 3 + Element Plus + Node.js + Express + SQLite + Electron

标签:Linux SSH 运维工具 服务器管理 Web终端 Vue3 Electron 开源项目 DevOps 权限管理

免责声明:LinuxView 仅作为服务器管理辅助工具使用,请勿将其用于任何违反法律法规的场景。生产环境部署前请仔细评估安全风险,建议配置 HTTPS 并妥善保管加密密钥。

posted @ 2026-07-05 09:20  木得是  阅读(29)  评论(0)    收藏  举报
//雪花飘落效果