Skip to content

MCP Config Guide

licco edited this page Aug 2, 2026 · 1 revision

📋 SSH MCP 配置模板

🚀 快速开始

方式 1:使用配置文件(推荐)

创建 mcp.config.json 文件:

{
  "mcpServers": {
    "ssh": {
      "command": "ssh-licco",
      "env": {
        "SSH_SECURITY_LEVEL": "balanced",
        "SSH_EXTRA_ALLOWED_COMMANDS": "git,pip,npm,docker",
        "SSH_HOST": "your-server-ip",
        "SSH_PORT": "22",
        "SSH_USER": "your-username",
        "SSH_PASSWORD": "your-password"
      }
    }
  }
}

方式 2:使用环境变量

export SSH_HOST="your-server-ip"
export SSH_PORT="22"
export SSH_USER="your-username"
export SSH_PASSWORD="your-password"
export SSH_SECURITY_LEVEL="balanced"
export SSH_EXTRA_ALLOWED_COMMANDS="git,pip,npm,docker"

python -m ssh_mcp.server

⚙️ 配置选项详解

必需配置

配置项 说明 示例
SSH_HOST SSH 服务器地址 "192.168.1.100"
SSH_USER SSH 用户名 "root"
SSH_PASSWORD SSH 密码 "your-password"

可选配置

配置项 说明 默认值 示例
SSH_PORT SSH 端口 "22" "2222"
SSH_TIMEOUT 连接超时(秒) "60" "30"
SSH_CLIENT_TYPE SSH 客户端类型 "paramiko" "asyncssh"

安全配置

配置项 说明 默认值 可选值
SSH_SECURITY_LEVEL 安全级别 "balanced" strict, balanced, relaxed
SSH_EXTRA_ALLOWED_COMMANDS 额外允许的命令(逗号分隔) "" "git,pip,npm"
SSH_BASE_DIR 基础目录 "/home" "/var/www"

🔐 安全级别说明

STRICT(严格模式)

适用场景: 生产环境、公共服务器

特点:

  • ✅ 只允许基础命令
  • ✅ 严格检查危险字符
  • ✅ 限制访问敏感路径
  • ✅ 最高安全评分

允许的命令:

ls, cat, grep, find, ps, top, docker, systemctl

BALANCED(平衡模式)⭐ 推荐

适用场景: 开发环境、个人服务器

特点:

  • ✅ 允许常用命令
  • ✅ 检查关键危险字符
  • ✅ 合理的访问限制
  • ✅ 高安全评分

允许的命令:

ls, cat, grep, find, ps, top, docker, systemctl,
cp, mv, rm, mkdir, tar, gzip, vim, ssh

RELAXED(宽松模式)

适用场景: 测试环境、完全信任的服务器

特点:

  • ✅ 允许更多命令
  • ✅ 最小化限制
  • ✅ 中等安全评分

允许的命令:

所有 BALANCED 命令 +
sudo, git, pip, npm, curl, wget, python3, node

💡 最佳实践

1. 使用环境变量文件

创建 .env 文件(不要提交到 Git):

SSH_HOST=192.168.1.100
SSH_PORT=22
SSH_USER=deploy
SSH_PASSWORD=your-secure-password
SSH_SECURITY_LEVEL=balanced
SSH_EXTRA_ALLOWED_COMMANDS=git,npm,docker

在配置中引用:

{
  "mcpServers": {
    "ssh": {
      "command": "ssh-licco",
      "envFile": ".env"
    }
  }
}

2. 最小权限原则

只添加确实需要的命令:

{
  "SSH_EXTRA_ALLOWED_COMMANDS": "git,npm"
}

而不是:

{
  "SSH_EXTRA_ALLOWED_COMMANDS": "git,npm,pip,apt,curl,wget,python,vim,..."
}

3. 使用 SSH 密钥认证(推荐)

{
  "mcpServers": {
    "ssh": {
      "command": "ssh-licco",
      "env": {
        "SSH_HOST": "your-server-ip",
        "SSH_USER": "deploy",
        "SSH_PRIVATE_KEY_PATH": "/path/to/private/key"
      }
    }
  }
}

4. 定期更新密码

  • 使用强密码
  • 定期更换
  • 不要重复使用密码

🔧 故障排查

问题 1:连接失败

错误: Connection refused

解决:

{
  "SSH_HOST": "正确的 IP 地址",
  "SSH_PORT": "22",
  "SSH_TIMEOUT": "30"
}

问题 2:认证失败

错误: Authentication failed

解决:

{
  "SSH_USER": "正确的用户名",
  "SSH_PASSWORD": "正确的密码"
}

问题 3:命令被阻止

错误: 命令 'xxx' 不在允许列表中

解决:

{
  "SSH_SECURITY_LEVEL": "balanced",
  "SSH_EXTRA_ALLOWED_COMMANDS": "被阻止的命令"
}

问题 4:路径访问被阻止

错误: 禁止访问敏感路径

解决:

{
  "SSH_BASE_DIR": "/允许的路径",
  "SSH_SECURITY_LEVEL": "balanced"
}

📊 配置检查清单

在启动前检查:

  • SSH 服务器地址正确
  • SSH 端口正确(默认 22)
  • 用户名和密码正确
  • 安全级别适合使用场景
  • 额外命令已添加
  • 基础目录设置合理
  • 超时时间合理(30-120 秒)
  • 配置文件语法正确

🔗 相关资源


📝 完整配置示例

{
  "mcpServers": {
    "ssh": {
      "command": "ssh-licco",
      "env": {
        "SSH_SECURITY_LEVEL": "balanced",
        "SSH_EXTRA_ALLOWED_COMMANDS": "git,npm,docker,psql,pg_isready",
        "SSH_BASE_DIR": "/home",
        "SSH_HOST": "192.168.1.100",
        "SSH_PORT": "22",
        "SSH_USER": "developer",
        "SSH_PASSWORD": "secure-password-123",
        "SSH_TIMEOUT": "60",
        "SSH_CLIENT_TYPE": "paramiko"
      }
    }
  }
}

配置完成!现在可以愉快地使用 SSH MCP 了! 🎉

Last updated: 2026-03-14
Version: 1.0

Clone this wiki locally