操作
バグ #310
未完了Phase 1: SSH統合管理機能実装
ステータス:
新規
優先度:
高め
担当者:
-
開始日:
2025-06-07
期日:
進捗率:
0%
予定工数:
説明
複数リモートサーバーへのSSH接続・コマンド実行・ファイル操作機能を実装する。
実装機能¶
SSH管理ツール¶
ssh_execute(host, command, timeout) // リモートコマンド実行
ssh_file_read(host, path) // ファイル読み取り
ssh_file_write(host, path, content) // ファイル書き込み
ssh_directory_list(host, path) // ディレクトリ一覧
管理対象ホスト¶
- VPS-ROOT: 85.131.243.51 (Ubuntu 24.04)
- Windows端末: 160.251.155.93 (Windows + WSL)
- 追加サーバー: 設定可能な拡張性
セキュリティ機能¶
- SSH鍵認証 (秘密鍵管理)
- 接続プール管理
- コマンド実行ログ
- タイムアウト制御
技術仕様¶
- SSH Library: node-ssh
- Connection Pool: Map<userId:host, NodeSSH>
- Session Store: Redis (接続情報・ログ)
- Security: SSH鍵ペア認証のみ
実装内容¶
class SSHManager {
private connections: Map<string, NodeSSH>
private redis: Redis
async execute(userId, host, command, timeout)
async readFile(userId, host, path)
async writeFile(userId, host, path, content)
private async getConnection(userId, host)
private async logActivity(userId, host, action, details)
}
セキュリティ考慮¶
- SSH鍵ファイル権限: 600
- 実行コマンドのログ記録
- 危険コマンドのブラックリスト
- ユーザー別アクセス制御
成果物¶
- SSH管理モジュール実装
- 複数ホスト接続テスト完了
- セキュリティポリシー適用
実装期間¶
Week 1-2 (24時間)
依存関係¶
- SSH鍵ペア設定
- 対象ホストでのSSH受け入れ設定
表示するデータがありません
操作