📂Critical
.env 파일 노출 방지 완전 가이드
MyCompass 보안 가이드 · mycompass.kr/guide/sensitive-file-exposure
.env 파일이 외부에 노출되면 데이터베이스 비밀번호, API 키, JWT 시크릿이 모두 유출됩니다. 실제로 GitHub에 공개된 .env 파일은 수분 내에 봇에 의해 악용됩니다.
⚠️ 노출 시 위험한 파일 TOP 5
.env / .env.local / .env.productionAPI 키, DB 비밀번호, JWT 시크릿 전체 노출.git/config원격 저장소 URL, 인증 정보 노출wp-config.phpWordPress DB 접속 정보 노출backup.sql / dump.sql전체 데이터베이스 백업 노출/actuator (Spring Boot)서버 내부 설정, 환경변수, 힙 덤프 노출Vercel / Next.js 환경에서 .env 보호
Vercel에서는 .env 파일을 서버 파일 시스템으로 직접 서빙하지 않으므로 기본적으로 안전합니다. 단, 다음을 주의하세요:
✅ NEXT_PUBLIC_ 접두사 없는 환경변수는 클라이언트에 노출되지 않음
⚠️ NEXT_PUBLIC_ 변수는 브라우저 소스에서 확인 가능 → 시크릿 키 절대 금지
❌ .env 파일을 git에 커밋하지 말 것 → .gitignore에 반드시 추가
✨ AI 수정 프롬프트
.gitignore에 다음 파일들이 포함되어 있는지 확인하고, 없으면 추가해줘:
.env
.env.local
.env.*.local
.env.production
*.sql
*.dump
.DS_Store
그리고 git에 이미 .env가 추적되고 있다면 제거하는 명령어도 알려줘.