π§π»βπ» [λΈλΌμ°μ λλ curl]
β
[WAF Docker 컨ν
μ΄λ :80]
β³ Nginx + ModSecurity
β
[Spring Boot μ± :8080]
- μΉ μ ν리μΌμ΄μ
λ°©νλ²½(
Web Application Firewall)μ μ½μλ‘, μΉ μλ² μλ¨μ μμΉνμ¬ μΉ μ ν리μΌμ΄μ μ 곡격μΌλ‘λΆν° 보νΈνλ 보μ μ루μ μ λλ€. HTTP/HTTPS νλ‘ν μ½μ ν΅ν΄ μ μ‘λλ νΈλν½μ λΆμνκ³ μ μ± κ³΅κ²©μ μ°¨λ¨νμ¬ μΉ μλΉμ€μ μμ μ±μ λμ λλ€.nginx+ModSecurity+OWASP CRSκΈ°λ°μ WAFλ₯Ό μ§μ κ°λ°νκ³ ,SaaS ννλ‘ κ΅¬μ‘°νν©λλ€.
-
.envνμΌ μμ±cd backend cp .env.example .env -
νμ νκ²½λ³μ μ€μ
# λ°μ΄ν°λ² μ΄μ€ DB_PASSWORD=your-password-here # Google OAuth (https://console.cloud.google.com/) GOOGLE_CLIENT_ID=your-google-client-id-here GOOGLE_CLIENT_SECRET=your-google-client-secret-here # JWT Secret (openssl rand -base64 32 λ‘ μμ±) JWT_SECRET=your-256-bit-secret-key
-
μ νμ νκ²½λ³μ (νμ μ μμ )
REDIS_HOST,REDIS_PORT: Redis μ°κ²° μ 보KAFKA_ENABLED=true: Kafka μ¬μ© μELASTICSEARCH_ENABLED=true: Elasticsearch μ¬μ© μ
-
κΈ°λ³Έ μλΉμ€ (νμ μ€ν)
waf: WAF 컨ν μ΄λ (Nginx + ModSecurity)web: λ°±μλ μΉ μλ² (ν μ€νΈμ©)mysql: MySQL λ°μ΄ν°λ² μ΄μ€redis: Redis μΊμ
-
λͺ¨λν°λ§ μλΉμ€
zookeeper: Kafka Zookeeperkafka: Kafka λ©μμ§ λΈλ‘컀elasticsearch: Elasticsearch κ²μ μμ§