프로젝트: VaultKeeper (Nginx .htpasswd 관리 도구)

1. 백엔드 구현 (main.go)

언어: Go (표준 라이브러리 위주로 매우 가볍게).

기능:

GET /api/users: .htpasswd 파일을 읽어 유저 목록을 JSON으로 반환.

POST /api/users: username, password를 받아 htpasswd -b 실행.

DELETE /api/users/{username}: htpasswd -D 실행.

보안: 사용자 이름 입력값에서 쉘 인젝션이 발생하지 않도록 유효성 검사 로직 포함.

설정: .htpasswd 경로를 환경 변수 HTPASSWD_PATH에서 읽어오도록 설정.

2. 프론트엔드 구현 (index.html)

단일 파일 SPA로 작성하고 Tailwind CSS를 사용하여 깔끔한 UI 제공.

유저 목록 표시, 추가 폼, 삭제 버튼 구현.

3. 배포 가이드 (deployment.md) 생성

go build를 이용한 경량 바이너리 빌드 방법 (-s -w 옵션 포함).

터미널에서 최초 관리자 계정을 생성하는 명령어 안내.

이 서비스를 Nginx auth_basic 뒤에 배치하기 위한 location 블록 설정 예시. (8000번 포트 기준)