
tufantunc/ssh-mcp
Developer toolsЭта страница переведена автоматически. Технические детали смотрите в оригинале. Открыть оригинал
MCP-сервер, предоставляющий SSH-управление для серверов Linux через протокол Model Context.
Обзор
является локальным сервером Model Context Protocol (MCP), который предоставляет управление SSH для систем Linux и Windows, позволяя LLM и другим клиентам MCP безопасно выполнять команды shell через SSH. - Установка SSH MCP Server - Настройка SSH MCP Server - Настройка MCP-клиента (например, Claude Desktop, Cursor и др.) - Выполнение удалённых команд shell на вашем Linux или Windows сервере через естественный язык - Сервер, совместимый с MCP, раскрывающий возможности SSH - Выполнение команд shell на удалённых системах Linux и Windows - Защищённая аутентификация с помощью пароля или SSH-ключа - Построен с использованием TypeScript и официального MCP SDK - с автоматическим прекращением процесса - попытки уничтожить зависящие процессы до закрытия соединений - exec: Выполнить команду shell на удалённом сервере - - команда (требуется): Shell-команда для выполнения на удалённом SSH-сервере - описание (по желанию): Необязательное описание того, что будет делать эта команда (добавлено в качестве комментария) - - sudo-exec: Выполните команду снаряда с подъёмом sudo - - команда...
Обзор (машинный перевод)
SSH MCP Server — это сервер Model Context Protocol, ориентированный на безопасность, который предоставляет агентам LLM управляемый SSH доступ к удалёным хостам — с классификацией команд, авторизацией на основе политик, одобрением человека в цикле и полным логированием аудита.
Риск, с которым этот сервер должен управлять. Предоставление LLM-оболочки доступа к удалённому хосту помещает приватные данные, ненадёжный вход и выход из сети в одном месте — «смертельное трио» Саймона Уиллисона. Инъекция prompt не имеет общего решения, поэтому ssh-mcp предполагает, что любая команда может быть под влиянием злоумышленника: он классифицирует перед выполнением, авторизирует роль × матрицу хост-группы, ограничивает разрушительную работу за одобрением и фиксирует решение в любом случае. Это сужает радиус взрыва; это не устраняет риск. Две вещи остаются вашими: никогда не указывайте на корневую учётную запись и никогда не устанавливайте одобрение
autoна производственном профиле. SECURITY.md обладает полной моделью угрозы.
Быстрый старт
1. Установка
2. Настройка
Без конфигурации сервер всё равно запускается, поэтому клиент или каталог могут завершить MCP
рукопожатие и чтение tools/list — но каждый вызов инструмента отклоняется, пока вы не настроите его,
с сообщением с указанием тропы ниже.
Эта страница переведена автоматически. Технические детали смотрите в оригинале.
README
Показан фрагмент оригинального README. Открыть оригинал.
SSH MCP Server v2
SSH MCP Server is a security-first Model Context Protocol server that gives LLM agents controlled SSH access to remote hosts — with command classification, policy-based authorization, human-in-the-loop approval, and full audit logging.
The risk this server exists to manage. Giving an LLM shell access on a remote host puts private data, untrusted input and network egress in one place — Simon Willison’s “lethal trifecta”. Prompt injection has no general fix, so ssh-mcp assumes any command may be attacker-influenced: it classifies before executing, authorizes against a role × host-group matrix, gates destructive work behind approval, and records the decision either way. That narrows the blast radius; it does not remove the risk. Two things stay yours: never point it at a root account, and never set
autoapproval on a production profile. SECURITY.md has the full threat model.
Quick Start
1. Install
npm install -g ssh-mcp
2. Configure
Without a config the server still starts, so a client or directory can complete the MCP
handshake and read tools/list — but every tool call is refused until you configure it,
with a message naming the path below. Nothing runs on a host until this step is done. The
one exception is reload-config: write the file, then call it with action: "reload" (or
restart the server) to configure a server that is already running — see
Reloading.
Create the config file at the path for your platform:
| Platform | Path |
|---|---|
| Linux | ~/.config/ssh-mcp/config.toml (or $XDG_CONFIG_HOME/ssh-mcp/config.toml) |
| macOS | ~/Library/Application Support/ssh-mcp/config.toml |
| Windows | %APPDATA%\ssh-mcp\config.toml |
[defaults]
defaultProfile = "dev"
approvalMode = "ask-destructive"
[[profiles]]
name = "dev"
host = "192.168.1.100"
port = 22
user = "deploy" # NOT root!
auth = "key"
Установка
npx ssh-mcp --host=1.2.3.4 --user=root --password=hunter2Конфигурация
{
"mcpServers": {
"ssh-mcp": {
"command": "ssh-mcp",
"env": {
"SSH_MCP_PASSWORD": "your-password"
}
}
}
}