SSH-MCP Secure
🔐 SSH-MCP Secure
Hochsichere SSH-MCP-Server - SSH-Verwaltung auf Unternehmensniveau mit KI-Intelligenz und militärischer Sicherheit
🌟 Kernfunktionen
🔒 Unternehmenssicherheit
AES-256-GCM-Verschlüsselung - Militärische Verschlüsselung schützt alle Anmeldeinformationen
Multi-Faktor-Authentifizierung (MFA) - TOTP + Unterstützung für Backup-Codes
SSH-Schlüsselauthentifizierung - Unterstützt ED25519 und RSA-4096
Rollenbasierte Zugriffskontrolle (RBAC) - Fein granulare Berechtigungsverwaltung
Schutz durch Schutzschalter - 8 resiliente Schutzschalter schützen kritische Dienste
Umfassende Prüfprotokolle - Vollständige Compliance-Berichte
🤖 KI-Intelligenz
Kontextbezogene Unterstützung - Echtzeit-Befehlsvorschläge basierend auf dem aktuellen Kontext
Technologie-Stack-Erkennung - Automatische Projekt-Stack-Identifizierung und Empfehlungen
Mustererkennung - ML-gesteuertes Lernen aus Befehlsverläufen
GitHub-Intelligenz - Entdeckung von Community-Mustern und Best Practices
Prädiktive Operationen - Problemvorhersage mithilfe von Trendanalysen
📊 Überwachung und Compliance
Prometheus-Metriken - Echtzeit-Leistungsüberwachung
Grafana-Dashboards - Visualisierung der Systemgesundheit
Compliance-Frameworks - SOC2, GDPR, NIST, HIPAA, PCI-DSS, ISO 27001
Fehleranalyse - Intelligente Fehlerdiagnose
Alarmverwaltung - Proaktive Warnungen und automatische Reparaturen
Related MCP server: sshops
📋 Inhaltsverzeichnis
🛠️ Installation
Voraussetzungen
Node.js 18+ und npm/yarn
Claude Code CLI (optional, für MCP-Integration)
SSH-Zugriff auf Zielserver
Git
Installationsschritte
# Clone 倉庫
git clone https://github.com/your-org/ssh-mcp-secure.git
cd ssh-mcp-secure
# 安裝依賴
npm install
# 構建項目
npm run build
# 配置環境變量
cp .env.example .env
# 編輯 .env 文件填入實際配置
# 測試安裝
npm run security:audit🚀 Schnellstart
1. Server-Anmeldeinformationen konfigurieren
Erstellen Sie eine .env-Datei:
# 服務器配置
MY_SERVER_HOST=example.com
MY_SERVER_PORT=22
MY_SERVER_USERNAME=myuser
MY_SERVER_PRIVATE_KEY_PATH=/path/to/private_key
MY_SERVER_DEFAULT_DIR=/home/myuser
MY_SERVER_DESCRIPTION=Production Server
# 安全設置
SSH_ALLOW_PASSWORD_AUTH=false
SSH_REQUIRE_KEY_AUTH=true
SSH_MAX_AUTH_RETRIES=3
SSH_LOCKOUT_DURATION=300
# MFA 設置
MFA_ENABLED=true
MFA_REQUIRED_FOR_PRODUCTION=true
# 加密設置
ENCRYPTION_ALGORITHM=AES-256-GCM
ENCRYPTION_KEY_ROTATION_DAYS=90
# 審計日誌
AUDIT_ENABLED=true
AUDIT_LOG_PATH=/var/log/ssh-mcp/audit.log2. SSH-Schlüssel generieren
# 生成 ED25519 密鑰 (推薦)
ssh-keygen -t ed25519 -a 100 -C "your_email@example.com"
# 或生成 RSA-4096 密鑰
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
# 設置正確的權限
chmod 600 ~/.ssh/id_ed25519
chmod 644 ~/.ssh/id_ed25519.pub3. MFA konfigurieren
Beim ersten Verbindungsaufbau wird automatisch eine MFA-Einrichtung generiert:
# 啟動服務器
npm start
# 掃描 QR 碼配置 TOTP
# 使用 Google Authenticator 或 Authy4. Verbinden und ausführen
// 安全連接
const session = await secureConnect({
serverName: "my-server",
requireMFA: true
});
// 執行命令
const result = await secureExecute({
sessionId: session.sessionId,
command: "ls -la"
});
console.log(result.stdout);⚙️ Konfiguration
Umgebungsvariablen
Serverkonfiguration
# 命名規範:SERVERNAME_PROPERTY
SERVERNAME_HOST=hostname.com
SERVERNAME_PORT=22
SERVERNAME_USERNAME=username
SERVERNAME_PASSWORD=password # 可選 (不推薦)
SERVERNAME_PRIVATE_KEY_PATH=/path # 推薦
SERVERNAME_PASSPHRASE=passphrase # 可選 (加密密鑰)
SERVERNAME_DEFAULT_DIR=/home/user # 可選
SERVERNAME_DESCRIPTION=Description # 可選Sicherheitseinstellungen
# 認證安全
SSH_ALLOW_PASSWORD_AUTH=false # 生產環境禁用密碼
SSH_REQUIRE_KEY_AUTH=true # 要求密鑰認證
SSH_MAX_AUTH_RETRIES=3 # 最大認證嘗試
SSH_LOCKOUT_DURATION=300 # 鎖定時長 (秒)
# SSH 密鑰安全
SSH_KEY_TYPE=ed25519 # 推薦:ed25519
SSH_KEY_MIN_BITS=4096 # 最小 RSA 密鑰位數
SSH_KEY_PASSPHRASE_REQUIRED=true # 要求密鑰短語
# 連接安全
SSH_MAX_RETRIES=3
SSH_RETRY_DELAY=2000
SSH_CONNECTION_TIMEOUT=20000
SSH_STRICT_HOST_KEY_CHECKING=trueMFA-Einstellungen
MFA_ENABLED=true
MFA_REQUIRED_FOR_PRODUCTION=true
MFA_TOTP_ISSUER=SSH-MCP-Secure
MFA_TOTP_DIGITS=6
MFA_TOTP_PERIOD=30
MFA_BACKUP_CODES_COUNT=10Verschlüsselungseinstellungen
ENCRYPTION_ALGORITHM=AES-256-GCM
ENCRYPTION_KEY_LENGTH=256
ENCRYPTION_KEY_ROTATION_DAYS=90
ENCRYPTION_MASTER_KEY=<your-64-char-hex-key>Prüfprotokolle
AUDIT_ENABLED=true
AUDIT_LOG_PATH=/var/log/ssh-mcp/audit.log
AUDIT_RETENTION_DAYS=90
AUDIT_LOG_FORMAT=json
AUDIT_AUTH_EVENTS=true
AUDIT_COMMAND_EXECUTION=true
AUDIT_FILE_OPERATIONS=true🔒 Sicherheitsfunktionen
1. Verschlüsselung
AES-256-GCM verschlüsselt alle Anmeldeinformationen
TLS 1.3 für externe Kommunikation
SSH-Protokoll 2 für alle SSH-Verbindungen
Schlüsselrotation automatische Rotation alle 90 Tage
2. Authentifizierung
Multi-Faktor-Authentifizierung (MFA) - TOTP + Backup-Codes
SSH-Schlüsselauthentifizierung - ED25519/RSA-4096
Passwortauthentifizierung - optional (in Produktion empfohlen deaktiviert)
Sitzungstimeout - automatischer Ablauf nach 1 Stunde
3. Zugriffskontrolle
Rollenbasierte Zugriffskontrolle (RBAC)
admin- Vollzugriffoperator- Betriebsberechtigungendeveloper- Entwicklungsberechtigungenviewer- Nur-Lese-Berechtigungen
Prinzip der geringsten Rechte - Standardmäßig alle Zugriffe verweigern
Prüfung aller Berechtigungsprüfungen - Vollständige Prüfprotokollierung
4. Prüfung und Compliance
Umfassende Prüfprotokolle
Alle Authentifizierungsereignisse
Alle Befehlsausführungen
Alle Dateioperationen
Alle Sitzungsereignisse
Alle Berechtigungsänderungen
Alle Zugriffe auf Anmeldeinformationen
Unterstützte Compliance-Frameworks
SOC2 Type II
GDPR
NIST Cybersecurity Framework
HIPAA (konfigurierbar)
PCI-DSS (konfigurierbar)
ISO 27001 (konfigurierbar)
5. Resilienz-Schutz
Schutzschalter - Schutz kritischer Dienste
SSH-Verbindungen
Redis-Cache
Authentifizierungsdienst
MFA-Verifizierung
Verschlüsselungsdienst
Automatische Wiederholungsversuche - Exponentielles Backoff
Health Checks - Überwachung der Verbindungspool-Gesundheit
📊 Überwachung
Prometheus-Metriken
# SSH 連接
ssh_connections_active
ssh_commands_total
ssh_errors_total
ssh_command_duration_seconds
# 認證
auth_failures_total
mfa_verifications_total
# 緩存
cache_hits_total
cache_misses_total
cache_hit_rate
# 電路斷路器
circuit_breaker_trips_total
circuit_breaker_stateGrafana-Dashboards
Besuchen Sie http://localhost:3000, um das Grafana-Dashboard anzuzeigen.
Alarme
Konfigurieren Sie Alarmbenachrichtigungen:
ALERTING_ENABLED=true
ALERT_EMAIL=admin@example.com
ALERT_WEBHOOK_URL=https://hooks.slack.com/xxx
ALERT_THRESHOLD_CRITICAL=5
ALERT_THRESHOLD_WARNING=10🔍 Sicherheits-Best Practices
1. Umgebungsvariablen
# 永遠不要提交 .env 文件
echo ".env*" >> .gitignore
# 使用強密碼
export ENCRYPTION_MASTER_KEY=$(openssl rand -hex 32)
# 限制文件權限
chmod 600 .env2. SSH-Schlüssel
# 生成安全密鑰
ssh-keygen -t ed25519 -a 100
# 設置正確權限
chmod 600 ~/.ssh/id_ed25519
chmod 644 ~/.ssh/id_ed25519.pub3. Verwaltung von Anmeldeinformationen
Verwenden Sie die Rotation von Anmeldeinformationen (Standard: 90 Tage)
Aktivieren Sie MFA für Produktionsumgebungen
Überprüfen Sie regelmäßig den Zugriff auf Anmeldeinformationen
Verwenden Sie separate Anmeldeinformationen für jede Umgebung
4. Netzwerksicherheit
Whitelist-IP-Adressen, wann immer möglich
Verwenden Sie Jump-Server für sensible Server
Aktivieren Sie SSH-Ratenbegrenzung
Überwachen Sie auf verdächtige Aktivitäten
📚 API-Referenz
Verbindungsverwaltung
// 安全連接到預定義服務器
secureConnect(params: {
serverName: string
requireMFA?: boolean
}): Promise<{
sessionId: string
sessionToken: string
expiresAt: number
mfaVerified: boolean
}>
// 列出配置的服務器
listPredefinedServers(): Promise<Record<string, ServerInfo>>Befehlsausführung
// 執行遠程命令
secureExecute(params: {
sessionId: string
command: string
timeout?: number
}): Promise<{
success: boolean
stdout: string
stderr: string
exitCode: number
audited: true
}>Dateioperationen
// 智能文件編輯
smartFileEdit(params: {
sessionId: string
filePath: string
operations: EditOperation[]
strategy?: EditStrategy
}): Promise<EditResult>Compliance-Berichte
// 生成合規報告
generateComplianceReport(params: {
framework: 'soc2' | 'gdpr' | 'nist'
startDate: string
endDate: string
}): Promise<ComplianceReport>🤝 Beiträge
Wir begrüßen Beiträge! Bitte lesen Sie unseren Beitragsleitfaden.
Entwicklungseinrichtung
# Clone 和安裝
git clone https://github.com/your-org/ssh-mcp-secure.git
cd ssh-mcp-secure
npm install
# 運行測試
npm test
# 構建
npm run build
# 監聽模式
npm run watch
# 代碼檢查
npm run lint
# 安全審計
npm run security:audit📄 Lizenz
MIT-Lizenz - Siehe LICENSE-Datei
📞 Kontakt
Sicherheitsprobleme: security@example.com
Allgemeiner Support: support@example.com
Dokumentation: https://github.com/your-org/ssh-mcp-secure/wiki
Denken Sie daran: Sicherheit ist die Verantwortung aller. Im Zweifelsfall fragen Sie nach!
🔐 Sicherheits-Checkliste
Vor der Bereitstellung:
Vollständige
.gitignorekonfigurierenPlan für die Rotation von Anmeldeinformationen einrichten
MFA für Produktionszugriff aktivieren
Compliance-Überwachung konfigurieren
Prüfprotokolle regelmäßig überprüfen
ENCRYPTION_MASTER_KEY festlegen
Passwortauthentifizierung deaktivieren
Firewall-Regeln konfigurieren
Überwachung und Alarmierung einrichten
Notfallverfahren dokumentieren
This server cannot be deployed
Maintenance
Related MCP Connectors
Scoped, audited SSH exec, sessions, and SFTP on your saved servers without exposing credentials
Cloud-hosted MCP server for secure AI access to enterprise data sources via CData Connect AI.
Egnyte's remote MCP server for secure AI access, search, upload and file management in your account.
- emisarOAuthdev.emisar
Let AI operate servers without SSH. Choose actions, approve risky changes, and audit every step.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceAn MCP server that enables remote SSH command execution and bidirectional file transfers through a standardized interface. It allows AI assistants to securely manage remote servers while keeping credentials isolated and applying command-level security controls.ISC
- AlicenseNot gradedqualityCmaintenanceA lightweight, zero-agent SSH operations tool that enables remote command execution, file transfer, and audit logging. It integrates as an MCP server for AI-driven infrastructure management.10 npmMIT
- AlicenseNot gradedqualityCmaintenanceSSH-based MCP server that enables remote execution of SSH commands, file transfers, and secure server management via the MCP protocol.ISC
- AlicenseNot gradedqualityCmaintenanceAn MCP server for managing remote SSH servers, enabling AI agents to execute commands, transfer files, and perform deployment operations securely.MIT