(mTLS + 가드레일 + 인간 승인) 기능을 갖춘 오픈 소스 제로 트러스트 컨트롤 플레인을 구축했습니다. AI 에이전트가 Docker 스택을
요약
LLM 에이전트가 인프라에 직접 접근하는 보안 위험을 해결하기 위해 'Whiskers'라는 오픈 소스 제로 트러스트 컨트롤 플레인을 구축했습니다. 이 시스템은 mTLS와 스코프 인증으로 안전한 통신을 보장하며, 위험한 도구 호출을 가드레일링합니다. 특히 고위험 작업 시 인간의 명시적 승인을 요구하여 에이전트 워크플로우의 안정성을 극대화합니다.
핵심 포인트
- 제로 트러스트 컨트롤 플레인 역할을 수행하여 에이전트와 인프라 사이에 위치함.
- mTLS 및 스코프 인증을 통해 보안 통신 채널을 확보하고 열린 소켓 사용을 방지함.
- 블래스트-반경 가드레일로 위험한 도구 호출(예: DB 삭제)을 감지하고 차단함.
- 고위험 작업에 대해 인간 개입형 승인(Human-in-the-Loop)을 의무화하여 안전성을 높임.
- 모든 프롬프트와 액션 매핑을 변조 방지 감사 추적(Audit Trails)으로 기록함.
안녕하세요, 여러분. 저와 많은 분들처럼, 저는 홈랩과 개발 환경에서 인프라 작업을 자동화하기 위해 로컬 LLM, 코딩 에이전트, 그리고 Model Context Protocol (MCP) 서버를 실험해 왔습니다. 하지만 표준 MCP 서버가 작동하는 방식을 살펴보니 정말 불편함을 느꼈습니다. 어떠한 권한 경계도 없이 docker.sock을 stdio로 AI 컨텍스트 창에 직접 마운트하는 것은 사실상 통제되지 않은 주니어 관리자에게 루트 접근 권한과 제로 로깅(zero logging)을 주는 것과 같습니다. 그래서 저는 이 문제를 해결하기 위해 Whiskers (LupusMalusDeviant/Whiskers)를 구축했습니다.
무엇을 하는가: 에이전트가 컨테이너 소켓이나 클러스터에 직접 접근하도록 허용하는 대신, Whiskers는 제로 트러스트 컨트롤 플레인(Zero-Trust Control Plane) 역할을 하며 중간에 위치합니다.
- mTLS 및 스코프 인증 (Scoped Authentication): LLM 클라이언트/호스트와 인프라 노드 간의 보안 통신을 보장합니다. 열린 소켓이 돌아다니지 않습니다.
- 블래스트-반경 가드레일 (Blast-Radius Guardrails): 위험한 도구 호출(tool calls)을 가로챕니다. 만약 에이전트가 프로덕션 데이터베이스를 삭제하거나 핵심 컨테이너를 종료시키기로 결정한다면, 'whiskers'가 압력 급증을 감지합니다.
- 인간 개입형 승인 (Human-in-the-Loop Approvals): 고위험 작업의 경우 실행이 중단되고 명령이 통과되기 전에 명시적인 승인을 기다립니다.
- 변조 방지 감사 추적 (Tamper-Evident Audit Trails): 모든 프롬프트에서 액션으로 이어지는 매핑(prompt-to-action mapping)을 암호화된 무결성(cryptographic integrity)과 함께 기록합니다.
이것은 오픈 소스이며, .NET으로 작성되었고 컨테이너 이미지(ghcr.io/lupusmalusdeviant/whiskers) 형태로 제공되어 헤드리스 노드나 Kubernetes에서 실행되도록 설계되었습니다. 만약 실제 인프라에 대해 자율 에이전트를 운영하고 있고, 모델의 행동을 기대하는 것 대신 실제로 가드레일을 원한다면 확인해 보세요:
GitHub: LupusMalusDeviant/Whiskers
Site: whiskers.app.lupusmalus.dev
여러분은 현재 어떻게 에이전트 워크플로우를 보호하고 있는지 궁금합니다—단순히 로컬 실행을 신뢰하고 계신가요, 아니면 자신만의 래퍼(wrapper)를 구축하고 계신가요?
AI 자동 생성 콘텐츠
본 콘텐츠는 r/SelfHosted (AI filter)의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기