
— 特色专栏 —
MySQL / PostgreSQL / MongoDB
ElasticSearch / Hadoop / Redis
Kubernetes / Docker / DevOps
Nginx / Git / Tools / OpenStack
大家好,我是民工哥!
做为程序员的我们,经常与服务器打交道,不可避免的要通过SSH去登录服务器进行一系列的操作,比如:登录服务器部署应用、调试API、检查代码运行情况等。
好工具是提高工作效率的必备神器!民工哥在此之前也介绍过不少的常用工具,以及它的使用与配置,大家可以点击上方的Tools专栏查阅。
提到SSH工具,大家首先肯定想到的就是 Xshell,这个工具绝对是多数程序员的首选工具,功能比较强大,操作也比较简单。但 Xshell 免费版本不能在商业环境下使用(企业使用可能会有版权问题),还有就是不支持 Mac,如果想用 FTP 传输文件,需要单独下载 Xftp。
今天给大家推荐一款超牛逼的终端管理工具:XPipe。

它可以让你实现从本地桌面管理您的所有服务器,且无需远程设置。
XPipe 是一款专注于远程连接与跨环境资源管理的轻量化工具,其核心价值在于通过统一入口整合 SSH、Docker、kubectl 等命令行工具的交互,同时提供可扩展模块化架构以适配个性化需求。

全面的 SSH 支持,包括配置文件、代理集成、跳转服务器、隧道、密钥文件、X11 转发等。
它集成各种容器运行时,如 Docker、Podman、Kubernetes、LXD、incus,以及 WSL、Cygwin、MSYS2 等环境。

XPipe 支持 Proxmox、Hyper-V、KVM、VMware 工作站等虚拟机监控程序。
SSH 终端增强:在传统 SSH 基础上,提供连接复用(类似 ssh multiplexing)、会话持久化(断线重连不丢失上下文)、标签化分组管理(如按项目或环境分类服务器)。

Docker/K8s 统一入口:将 docker exec、kubectl exec 等命令封装为标准化接口,例如通过 xpipe exec container-id -- bash 直接进入容器,无需记忆不同 CLI 的参数差异。
虚拟机/云主机管理:支持通过 API 密钥或配置文件一键切换 OpenStack、AWS EC2 等环境,减少频繁切换工具的认知负荷。

双向文件同步:类似 rsync 但支持实时触发(如监听本地目录变化自动上传至服务器),或通过编辑器插件(如 VS Code 的 Remote-SSH)直接修改远程文件。

容器/Pod 文件管理:提供 xpipe cp 命令,支持容器/Pod 与本地文件系统的双向复制(类似 docker cp 但兼容多环境)。
插件市场:允许开发者通过 Go/Python 等语言编写插件(如新增对 Terraform 的支持),或通过配置文件扩展命令(如自定义 xpipe deploy 触发 CI/CD 流水线)。
Shell 集成:支持在 Zsh、Bash 中注册别名(如 alias kp="xpipe kubectl"),或通过 fish 的智能补全功能增强交互体验。
提供 Windows/macOS/Linux 的原生客户端,并支持通过 WSL 或 Docker 容器运行,确保命令行为一致性。
内置 SSH 密钥轮换(自动检测过期密钥并提示更新)、敏感命令审计(记录所有 xpipe exec 操作到日志中心)。支持双因素认证(如通过 YubiKey 授权高危命令)。
这类工具侧重多标签终端和 SSH 会话管理,但缺乏对 Docker/K8s 的原生支持;XPipe 通过协议抽象更彻底。
Teleport 聚焦企业级安全(如会话录制、临时凭证),但需付费且复杂度高;XPipe 更适合中小团队快速上手。
VS Code 插件仅针对编辑器场景;XPipe 是独立 CLI 工具,可集成到任何终端环境。
访问官方下载页面:https://github.com/xpipe-io/xpipe/releases/download/,下载.msi文件,双击安装即可。

也可以使用下面的命令安装
choco install xpipe
或
winget install xpipe-io.xpipe --source winget
通过下面的命令安装
install --cask xpipe-io/tap/xpipe
通过下面的命令安装
bash <(curl -sL https://github.com/xpipe-io/xpipe/raw/master/get-xpipe.sh)
基于 ControlMaster 技术实现 SSH 会话共享:
xpipe ssh --reuse-session server-1
#复用已有会话,避免重复认证
按项目、环境(开发/测试/生产)对服务器分类:
xpipe server add --tag=prod --user=admin 192.168.1.100
#添加生产服务器并打标签
xpipe ssh --tag=prod server-1
#快速连接生产环境
实时监听与上传,类似 inotifywait 的功能,监听本地目录变化并自动同步到远程:
xpipe sync --watch local-dir/ remote:/path/
# 监听本地并上传
通过 xpipe cp 命令在容器/Pod 与本地之间复制文件:
xpipe cp nginx.conf pod-name:/etc/nginx/
#上传配置文件
xpipe cp pod-name:/var/log/nginx.log .
#下载日志文件
通过插件支持将远程目录挂载为本地文件系统:
xpipe mount --target=server-1:/var/www /mnt/remote-www
#挂载远程目录
所有命令执行记录自动上传到日志中心(如 ELK管理平台),支持按用户、时间、命令类型检索:
{
"timestamp": "2023-10-01T12:00:00Z",
"user": "admin",
"command": "xpipe exec pod-name -- kubectl get pods",
"status": "success"
}
某企业运维工程师需同时管理 10 台 Kubernetes 节点、5 个 Docker 集群和 3 个云虚拟机。通过 xpipe 可一键切换环境,例如:
xpipe exec prod-k8s-node-1 -- kubectl get pods
#直接操作生产环境
xpipe cp local.sh container-id:/tmp/
#快速上传脚本
某企业前端开发者需调试部署在 Docker 中的 Node.js 服务。通过 xpipe 可直接进入容器修改代码并热重载:
xpipe exec node-container -- vim /app/index.js
#实时编辑
xpipe exec node-container -- pm2 restart app
#重启服务
某企业同时使用私有云(OpenStack)和公有云(AWS ECS)。通过 xpipe 插件扩展支持 OpenStack CLI,实现统一命令:
xpipe connect --cloud openstack --project team-a
#连接私有云
xpipe connect --cloud aws --region us-east-1
#切换公有云
XPipe 是一款功能强大且灵活的跨平台远程连接及管理工具,旨在整合多种远程操作协议,提供一站式解决方案,显著提升开发者、运维人员及 IT 专业人士的工作效率。
项目地址:https://github.com/xpipe-io/xpipe
👍 如果你喜欢这篇文章,请点赞并分享给你的朋友!