본문으로 건너뛰기

구성 참조

모든 NetRecon 서비스는 /opt/netrecon/.env에 위치한 단일 .env 파일을 통해 구성됩니다. 이 페이지에서는 사용 가능한 모든 환경 변수를 설명합니다.

핵심 설정

변수필수기본값설명
NETRECON_DOMAIN도메인 이름 (예: netrecon.yourcompany.com)
NETRECON_EMAILLet's Encrypt 및 알림용 관리자 이메일

데이터베이스 (PostgreSQL)

변수필수기본값설명
POSTGRES_USERPostgreSQL 사용자 이름
POSTGRES_PASSWORDPostgreSQL 비밀번호
POSTGRES_DBnetrecon데이터베이스 이름
DATABASE_URL자동위 값에서 자동으로 구성됨

강력하고 무작위로 생성된 비밀번호를 사용하세요. 다음 명령으로 생성할 수 있습니다:

openssl rand -base64 24

캐시 (Redis)

변수필수기본값설명
REDIS_PASSWORDRedis 인증 비밀번호
REDIS_URL자동자동으로 구성됨

인증

변수필수기본값설명
JWT_SECRETJWT 토큰 서명을 위한 비밀 키 (최소 32자)
JWT_EXPIRE_MINUTES아니오1440토큰 만료 시간 (기본값: 24시간)

안전한 JWT 시크릿 생성:

openssl rand -hex 32

Agent Registry

변수필수기본값설명
AGENT_REGISTRY_SECRET에이전트 등록을 위한 시크릿
AGENT_JWT_SECRET에이전트 인증을 위한 JWT 시크릿
AGENT_TOKEN_EXPIRE_MINUTES아니오1440에이전트 토큰 만료 시간
AGENT_HEARTBEAT_INTERVAL아니오30하트비트 간격 (초)
AGENT_HEARTBEAT_TIMEOUT아니오90에이전트를 오프라인으로 표시하기까지의 시간 (초)

이메일 (SMTP)

변수필수기본값설명
SMTP_HOSTSMTP 서버 호스트명
SMTP_PORT아니오587SMTP 포트 (STARTTLS: 587, SSL: 465)
SMTP_USERSMTP 사용자 이름
SMTP_PASSWORDSMTP 비밀번호
SMTP_FROM발신자 주소 (예: NetRecon <[email protected]>)

라이선스

변수필수기본값설명
LICENSE_KEYNetRecon 라이선스 키

라이선스 키를 받으려면 [email protected]으로 연락하세요.

백업 서비스

변수필수기본값설명
BACKUP_S3_ENDPOINT아니오S3 호환 스토리지 엔드포인트
BACKUP_S3_BUCKET아니오백업용 버킷 이름
BACKUP_S3_ACCESS_KEY아니오S3 접근 키
BACKUP_S3_SECRET_KEY아니오S3 시크릿 키
BACKUP_ENCRYPTION_KEY아니오백업용 AES-256-GCM 암호화 키
BACKUP_RETENTION_DAYS아니오30백업 파일 보존 일수

알림

변수필수기본값설명
TELEGRAM_BOT_TOKEN아니오경고용 Telegram 봇 토큰
TELEGRAM_CHAT_ID아니오경고 전달을 위한 Telegram 채팅 ID

.env 파일 예시

# 핵심
NETRECON_DOMAIN=netrecon.yourcompany.com
NETRECON_EMAIL=[email protected]

# PostgreSQL
POSTGRES_USER=netrecon
POSTGRES_PASSWORD=xK9mP2vL8nQ4wR7j
POSTGRES_DB=netrecon

# Redis
REDIS_PASSWORD=hT6yN3bF9cM1pW5s

# 인증
JWT_SECRET=a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2

# Agent Registry
AGENT_REGISTRY_SECRET=r8s9t0u1v2w3x4y5z6a7b8c9d0e1f2g3
AGENT_JWT_SECRET=h4i5j6k7l8m9n0o1p2q3r4s5t6u7v8w9

# 이메일
SMTP_HOST=smtp.yourcompany.com
SMTP_PORT=587
SMTP_USER=[email protected]
SMTP_PASSWORD=your-smtp-password
SMTP_FROM=NetRecon <[email protected]>

# 라이선스
LICENSE_KEY=your-license-key
경고

.env 파일을 절대 버전 관리에 커밋하지 마세요. 위에 표시된 모든 값은 예시입니다 — 배포하기 전에 자체 보안 값으로 교체하세요.

구성 변경 적용

.env 파일을 수정한 후 영향을 받는 서비스를 재시작하세요:

cd /opt/netrecon

# 모든 서비스 재시작
docker compose down && docker compose up -d

# 또는 특정 서비스 재시작
docker compose restart api-gateway

서비스 포트

모든 서비스는 포트 80/443의 Nginx 리버스 프록시 뒤에서 실행됩니다. 내부 서비스 포트는 기본적으로 노출되지 않습니다:

서비스내부 포트설명
API Gateway8000메인 API 엔드포인트
Vault Server8001시크릿 관리
License Server8002라이선스 검증
Email Service8003SMTP 릴레이
Notification Service8004푸시 알림 및 경고
Update Server8005에이전트 및 Probe 업데이트
Agent Registry8006에이전트 등록 및 관리
Warranty Service8007하드웨어 보증 조회
CMod Service8008구성 관리
IPAM Service8009IP 주소 관리

서비스 포트를 직접 노출하려면(프로덕션에서는 권장하지 않음) docker-compose.yml의 서비스 ports 매핑에 추가하세요.

도움이 필요하시면 [email protected]으로 연락하세요.