readme 추가

This commit is contained in:
2026-04-13 14:45:17 +09:00
parent 8d9be8eddd
commit 79d1e561d3
5 changed files with 61 additions and 0 deletions
+29
View File
@@ -0,0 +1,29 @@
🏗️ VaultKeeper 프로젝트 상세 설계도 (Ver 2.0)
1. 개요
목적: Nginx의 .htpasswd 파일을 웹 GUI를 통해 관리하는 초경량 도구.
타겟 환경: Google Cloud e2-micro (저사양 서버).
주요 언어: Go (백엔드), Vanilla JS (프론트엔드).
2. 보안 전략 (핵심)
인증 분리: 백엔드 자체에 로그인 로직을 구현하지 않고, Nginx의 auth_basic 모듈에 인증을 위임함.
접근 권한: 서버 관리자가 터미널에서 직접 생성한 계정으로만 웹 UI에 접근 가능.
입력값 검증: os/exec 실행 시 쉘 인젝션을 방지하기 위해 사용자 이름에 특수문자 입력을 제한함.
3. 구성 요소
Backend (main.go):
환경 변수 HTPASSWD_PATH를 통해 대상 파일 경로 지정.
표준 패키지 net/http를 사용하여 메모리 점유 최소화.
htpasswd 시스템 명령어를 서브프로세스로 호출하여 계정 추가/삭제.
Frontend (index.html):
단일 파일 SPA 구조.
Tailwind CSS(CDN)를 활용한 직관적인 대시보드.