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-only、safe、destructive或privileged(sudo)四類。 - 審核門控:根據設定,破壞性或特權命令可設定為
auto、ask-destructive、ask-all或deny,需透過 MCP 客戶端進行人工審核。 - 嚴格設定:伺服器強制執行設定檔的嚴格檔案權限,防止未經授權的修改。
- 會話管理:支援互動式會話(保持目前工作目錄等狀態)與背景會話,用於長時間執行的程序。
適用對象
希望賦予 AI 代理管理遠端基礎設施能力,同時保持嚴格安全邊界與審計日誌,以防止意外或惡意破壞性操作的開發者與系統管理員。
主要亮點
- 安全優先設計:內建「禁止執行」清單,防止危險命令(如
rm -rf /)運行,並支援自訂拒絕清單。 - 基於角色的存取控制:靈活的策略引擎,可對不同環境中的角色進行細粒度操作控制。
- 堡壘機支援:透過
via設定支援透過跳板機(jump server)路由連線。 - 企業級就緒:支援 SSH CA 憑證與多種憑證解析方式(SSH agent、OS keychain、環境變數)。
- 狀態保持互動:支援互動式 POSIX 會話與背景程序輪詢。
相關
- 專案
- 專案
- 專案
- 專案
- 專案