피드로 돌아가기
Dev.toDevOps
원문 읽기
SSH 권한 없는 AI Ops 구현을 위한 Bounded Tooling 설계
I still don't want to give Claude SSH access, so I built a doctor for my homelab
AI 요약
Context
AI 에이전트에게 SSH Shell 접근 권한을 부여할 때 발생하는 무제한적인 Blast Radius와 보안 리스크 분석. 단순 메트릭 나열식 대시보드가 제공하지 못하는 '이상 징후 판단' 및 '해석' 단계의 부재를 해결하고자 함.
Technical Solution
- Shell Interface를 대체하는 Bounded Tooling 구조 설계를 통한 AI 접근 범위 제한
- Read-only 기반의 Structured JSON Output 제공으로 AI의 파싱 오류 및 Hallucination 방지
doctor명령어를 통한 CPU, Memory, Disk usage 및 Container 상태의 논리적 상태 검사 로직 구현report기능을 통한 Snapshot 비교 기반의 Change Detection 메커니즘 적용- Go 기반의 Single Binary 구조를 채택하여 별도 Daemon이나 DB 없는 Zero-dependency 환경 구축
- AI를 Operator가 아닌 Interpreter로 정의하여 시스템 제어권과 해석권을 분리하는 보안 모델 적용
실천 포인트
- AI 에이전트 도입 시 Full Shell 권한 대신 목적별 Narrow Tooling 제공 검토 - AI 가독성을 위해 Terminal Text가 아닌 Machine-readable JSON 인터페이스 설계 - 단순 Metric 수집을 넘어 'Urgency'와 'Next Step'을 포함한 상태 진단 로직 구현 - 시스템 상태의 정적 분석(Doctor)과 시계열 변화 분석(Report)을 분리하여 모니터링 체계 구축