tufantunc/ssh-mcp
MCP server exposing SSH control for Linux servers via Model Context Protocol.
何を解決するか
ssh-mcp は、モデルコンテキストプロトコル(MCP)に特化したセキュリティ重視のサーバーで、LLMエージェントがSSH経由でリモートホスト上でコマンドを実行できるようにします。プライベートデータへのアクセス、信頼できない入力、ネットワークエグレスを持つエージェントがもたらす「致命的な三重リスク」を、LLMとリモートシェルの間に厳格な承認層を設けることで軽減します。
動作方法
このサーバーはゲートウェイとして機能し、コマンドが実行される前にすべてのコマンドを分類します。ロールベースアクセス制御(RBAC)マトリクス(閲覧者、オペレーター、管理者)を環境階層(dev、staging、prod)と照合して、コマンドの実行可否を判断します。
主なセキュリティメカニズムは以下の通りです:
- コマンド分類:コマンドは
read-only、safe、destructive、privileged(sudo)のいずれかに分類されます。 - 承認ゲート:設定に応じて、破壊的または特権コマンドは
auto、ask-destructive、ask-all、denyのいずれかに設定でき、MCPクライアント経由で人間による承認が必要になります。 - 厳格な設定:設定ファイルに対して厳格なファイル権限を強制し、不正な変更を防ぎます。
- セッション管理:インタラクティブセッション(CWDなどの状態を維持)と、長時間実行されるプロセス用のバックグラウンドセッションの両方をサポートします。
対象ユーザー
AIエージェントにリモートインフラの管理能力を与える一方で、厳格なセキュリティ境界と監査ログを維持したい開発者やシステム管理者向けです。誤ってまたは悪意ある破壊的行動を防ぐことができます。
特徴
- セキュリティ最優先設計:危険なコマンド(例:
rm -rf /)を実行できない「決して許可しない」リストを内蔵し、カスタム拒否リストもサポートします。 - ロールベースアクセス制御:柔軟なポリシーエンジンにより、異なる環境でのロールごとの操作範囲を細かく制御できます。
- バステオンサポート:
via設定を使用して、ジャンプサーバー経由で接続をルーティングできます。 - エンタープライズ対応:SSH CA証明書と複数の資格情報解決方法(SSHエージェント、OSキーチェーン、環境変数)をサポートします。
- 状態保持型の相互作用:インタラクティブなPOSIXセッションとバックグラウンドプロセスのポーリングをサポートします。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト