tufantunc/ssh-mcp

MCP server exposing SSH control for Linux servers via Model Context Protocol.

解决的问题

ssh-mcp 是一个以安全为核心设计的模型上下文协议(MCP)服务器,允许 LLM 代理通过 SSH 在远程主机上执行命令。它通过在 LLM 与远程 shell 之间引入严格的授权和审批层,解决了「致命三重风险」——即代理拥有对私有数据的访问权限、处理不受信任的输入,并具备网络出站能力——所带来的安全威胁。

工作原理

该服务器充当网关,对每个命令在执行前进行分类。它使用基于角色的访问控制(RBAC)矩阵(查看者、操作员、管理员)与环境层级(dev、staging、prod)进行映射,以判断命令是否被允许执行。

关键安全机制包括:

  • 命令分类:命令被分为 read-onlysafedestructiveprivileged(sudo)四类。
  • 审批门控:根据配置,破坏性或特权命令可设置为 autoask-destructiveask-alldeny,需通过 MCP 客户端进行人工审批。
  • 严格配置:服务器强制执行配置文件的严格文件权限,防止未经授权的修改。
  • 会话管理:支持交互式会话(保持当前工作目录等状态)和后台会话,用于长时间运行的进程。

适用人群

希望赋予 AI 代理管理远程基础设施能力,同时保持严格安全边界和审计日志,以防止意外或恶意破坏性操作的开发者和系统管理员。

主要亮点

  • 安全优先设计:内置「禁止执行」列表,防止危险命令(如 rm -rf /)运行,并支持自定义拒绝列表。
  • 基于角色的访问控制:灵活的策略引擎,可对不同环境中的角色进行细粒度操作控制。
  • 堡垒机支持:通过 via 配置支持通过跳板机(jump server)路由连接。
  • 企业级就绪:支持 SSH CA 证书和多种凭证解析方式(SSH agent、OS keychain、环境变量)。
  • 状态保持交互:支持交互式 POSIX 会话和后台进程轮询。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目