Ssh Mcp Server

Ssh Mcp Server

🚀 🔐 SSH-MCP-Server 中文文档

ssh-mcp-server 是一款桥梁工具,它能让 AI 助手及其他支持 MCP 协议的应用程序,借助标准化接口远程执行 SSH 命令。这一特性使得 AI 助手在不直接暴露 SSH 凭证的情况下,能安全地操作远程服务器、执行命令并获取结果。

🚀 快速开始

借助 ssh-mcp-server,你可以让 AI 助手和支持 MCP 协议的应用程序,通过标准化接口远程执行 SSH 命令,同时保障 SSH 凭证的安全。

✨ 主要特性

  • 🔒 安全连接:支持多种安全的 SSH 连接方式,涵盖密码认证和私钥认证(带有密钥短语支持)。
  • 🛡️ 命令安全控制:通过灵活的黑名单和白名单机制,精确控制允许执行的命令范围,防止危险操作。
  • 🔄 标准化接口:符合 MCP 协议规范,可与支持该协议的 AI 助手实现无缝集成。
  • 📂 文件传输:支持双向文件传输,既可以将本地文件上传到服务器,也能从服务器下载文件。
  • 🔑 凭证隔离:SSH 凭证完全由本地管理,不会暴露给 AI 模型,增强了安全性。
  • 🚀 即用即取:无需全局安装,直接使用 NPX 运行即可快速部署。

📦 安装指南

本项目无需全局安装,直接使用 NPX 运行即可快速部署。

📦 开源仓库

🛠️ 工具列表

工具 名称 描述
execute-command 命令执行工具 在远程服务器上执行 SSH 命令并获取结果
upload 文件上传工具 将本地文件上传到指定的远程服务器位置
download 文件下载工具 从远程服务器下载文件到本地指定位置

💻 使用示例

MCP 配置示例

命令行选项

以下是可通过命令行指定的关键参数:

  • --host-h:SSH 服务端的主机地址(默认值为 localhost
  • --port-p:SSH 服务端的端口号(默认值为 22
  • --user-u:SSH 连接的用户名
  • --password-P:SSH 连接的密码(不推荐使用,建议优先配置密钥认证)
  • --private-key-k:用于 SSH 认证的私钥路径
  • --passphrase-w:私钥的密钥短语
  • --command-whitelist-w:允许执行的命令白名单(支持正则表达式)
  • --command-blacklist-b:禁止执行的命令黑名单(支持正则表达式)

配置示例

基础用法

以下是使用密码认证的配置示例:

{
"command": "npx",
"args": [
"--host",
"192.168.1.100",
"--port",
"22",
"--user",
"root",
"--password",
"your_password_here"
]
}
高级用法

以下是使用私钥认证、命令白名单、命令黑名单的配置示例:

使用私钥认证的配置示例

{
"command": "npx",
"args": [
"--host",
"192.168.1.100",
"--port",
"22",
"--user",
"root",
"--private-key",
"/path/to/private_key.pem",
"--passphrase",
"your_passphrase_here"
]
}

使用命令白名单的配置示例

{
"command": "npx",
"args": [
"--host",
"192.168.1.100",
"--port",
"22",
"--user",
"root",
"--password",
"your_password_here",
"--command-whitelist",
"^ls$|^pwd$"
]
}

使用命令黑名单的配置示例

{
"command": "npx",
"args": [
"--host",
"192.168.1.100",
"--port",
"22",
"--user",
"root",
"--password",
"your_password_here",
"--command-blacklist",
"^rm .*"
]
}

⚠️ 重要提示

如果同时指定白名单和黑名单,系统将首先检查命令是否在白名单中,然后检查是否在黑名单中。只有通过两者的检查,命令才会被执行。

  • 0 关注
  • 0 收藏,12 浏览
  • system 提出于 2025-09-30 15:42

相似服务问题