README
🚀 MCP 服务器 SSH 客户端
MCP 服务器 SSH 客户端是一个用于连接 MCP 服务器的工具,通过简单的配置即可实现 SSH 连接,支持多种自定义选项,方便用户使用。
🚀 快速开始
运行以下命令启动 MCP 服务器 SSH 客户端:
uvx mcp_server_ssh_client --host <主机名> --port <端口号>
📦 安装指南
要安装 MCP 服务器 SSH 客户端及其依赖项,请运行以下命令:
pip install mcp-server-ssh-client
✨ 主要特性
- 灵活配置:支持通过命令行选项和自定义配置文件进行灵活的客户端行为配置。
- 多密钥支持:可指定不同的私钥文件进行身份验证。
- 日志级别设置:支持设置不同的日志级别,方便调试和监控。
📚 详细文档
高级配置
可以通过以下选项自定义客户端行为:
--host或-h:指定目标 SSH 服务器的主机名或 IP 地址。--port或-p:指定目标 SSH 服务器的端口号,默认为 22。--key-file或-k:指定用于身份验证的私钥文件路径,默认为 ~/.ssh/id_ed25519。--known_hosts或-K:指定已知主机文件的路径,默认为 ~/.ssh/known_hosts。--config或-c:指定自定义配置文件的路径。--log-level或-l:设置日志级别,可选值为 debug、info、warning、error、critical,默认为 warning。
详细说明
使用默认 SSH 配置文件
MCP 服务器 SSH 客户端默认使用标准的 SSH 配置文件:
- 私钥文件:~/.ssh/id_ed25519
- 已知主机文件:~/.ssh/known_hosts
确保这些文件存在且具有适当的权限(600)。
使用自定义密钥
如果你有多个 SSH 密钥对,并希望使用特定的密钥进行身份验证,可以指定 --key-file 选项:
uvx mcp_server_ssh_client --host example.com --port 2222 --key-file /path/to/my_key
配置文件格式
你可以创建一个自定义配置文件(例如:~/.config/mcpx.json)来指定默认值:
{
"host": "example.com",
"port": 22,
"key_file": "~/.ssh/id_ed25519",
"known_hosts": "~/.ssh/known_hosts",
"log_level": "warning"
}
⚠️ 安全注意事项
- 在生产环境中始终启用主机密钥验证。
- 使用带 passphrase 的 SSH 密钥以增强安全性。
- 考虑为 MCP 连接使用专用的 SSH 密钥。
- 设置适当的文件权限(600)以保护你的 SSH 密钥文件。
- 在远程服务器上使用具有有限权限的专用用户。
❓ 常见问题排查
连接被拒绝
错误信息:
运行 MCP SSH 客户端时出错: [Errno 111] 连接被拒绝
解决方法:检查主机名和端口号是否正确,并确保 SSH 服务正在运行。
验证失败
错误信息:
运行 MCP SSH 客户端时出错: 认证失败
解决方法:检查密钥文件路径。确保远程服务器已安装你的公钥。
密钥验证失败
错误信息:
运行 MCP SSH 客户端时出错: 私钥文件无效或不可用
解决方法:确保私钥文件存在且具有适当的权限(600)。尝试使用 chmod 600 ~/.ssh/id_ed25519 来修复权限问题。
🛠️ 开发指南
安装依赖
要开发 MCP 服务器 SSH 客户端,首先安装所需的依赖项:
pip install mcp-server-ssh-client[dev]
启动调试模式
在开发或调试时,可以启用 debug 日志级别:
uvx mcp_server_ssh_client --host example.com --port 22 --log-level debug
🤝 文档贡献
如果你希望为这个项目贡献文档或代码,请参考 GitHub 仓库 中的 CONTRIBUTING.md 文件。
感谢你使用 MCP 服务器 SSH 客户端!如果有任何问题或建议,请随时通过 GitHub 提交 issue 或 pull request。
Scan to join WeChat group