포트폴리오 ↗
루키즈 5기 · 일지›온데 개발Day 13 / 46

메인 브랜치 통합, Nginx 배포 패키징, 플랫폼 헬스체크(Health Check) 설정 및 웹 보안 진단 준비

·읽는 시간 약 5분
#onde#nginx#docker#health-check#security
목차 7개 단원
  1. ·서론
  2. 01플랫폼 운영 규칙 정리 및 인프라 배포 패키징
  3. 02프론트엔드-백엔드 코어 파이프라인 통합 및 실전 리팩토링
  4. 03백오피스 권한(RBAC) 정밀화 및 가동 상태 모니터링
  5. 04프로젝트 기술 문서화 완료 및 인프런 보안 학습 완강
  6. 05기능 영역별 최종 상태 점검
  7. 06다음 단계: 취약점 진단 트랙 기획·착수

서론

"전체 코드를 통합하고 플랫폼 운영 규칙을 정리했습니다. 도메인을 구입하고 온데(onde)를 점검했으며, Nginx 웹 서버 환경 설정, 결제 연동 리팩터링, 백엔드 헬스체크(Health Check) API 설정을 마쳤습니다. 인프런 웹 보안 강의도 끝까지 수강해 이어질 취약점 진단·모의해킹 트랙을 준비했습니다."

main 브랜치 통합과 Nginx 도커 패키징, api/health 헬스체크 설정, 인프런 웹 보안 강의 수강을 마치며 취약점 진단 트랙을 준비했습니다.

1. 플랫폼 운영 규칙 정리 및 인프라 배포 패키징 (Nginx & Docker)

최종 배포를 앞두고 서비스 방향을 확인하고 인프라 배포 자동화를 준비하는 작업을 마쳤습니다.

  • 독립 도메인 구입 및 방향 정리: 서비스 배포와 취약점 진단 대상을 분명히 하기 위해 정식 도메인을 구매했습니다. 팀 회의를 통해 이 서비스를 단순 보안 진단 도구가 아니라 예약 기능과 보안 제어를 함께 제공하는 '여행 플랫폼(Platform)'으로 계속 만들어 가기로 했습니다.
  • 프론트엔드 Nginx 아키텍처 도입 및 도커라이징:
    • 로컬 가상화 환경 및 상용 AWS 배포 단계에서 리버스 프록시 및 정적 에셋 라우팅을 안정적으로 받쳐줄 Nginx 웹 서버 환경(nginx.conf)을 새로 추가했습니다.
    • 이를 프론트엔드 배포 가상 컨테이너 스펙에 이식하기 위해 Dockerfile 구조를 수정하여, 프로덕션 빌드 본이 Nginx 내부로 안전하게 탑재되어 오케스트레이션되도록 패키징을 완료했습니다.

2. 프론트엔드-백엔드 코어 파이프라인 통합 및 실전 리팩토링

개별 기능 브랜치에 나뉘어 있던 연동 작업 소스코드를 공통 main 브랜치로 병합하고 플랫폼을 점검했습니다.

① 렌터카 위치 기반 기능(Location) E2E 정렬

  • 백엔드 도메인 확장: Car 핵심 엔티티에 위치 정보 지표인 location 필드를 새로 만들고, 검색 및 목록 조회 DTO, 레포지토리, 서비스 레이어를 수정했습니다.
  • DB 마이그레이션 적용: 변경된 스펙을 반영하기 위해 V11__Add_Location_To_Rental_Cars.sql 플라이웨이 스크립트를 빌드하여 실제 테이블에 컬럼 추가를 마쳤습니다. 프론트엔드 판매자 패널 및 검색 폼과 즉시 연동되도록 바인딩했습니다.

② API 호출 환경 변수화

  • API 호출 URL의 하드코딩을 걷어내고 .env.development 및 apiConfig.ts 체계로 환경 변수화해 설정이 한눈에 보이게 정리했습니다.

3. 백오피스 권한(RBAC) 정밀화 및 가동 상태 모니터링 (Health Check) 수립

운영 관리와 마이크로서비스 상태 확인을 위한 보안 필터 및 모니터링 엔드포인트를 추가했습니다.

  • 일반 관리자(USER_ADMIN) 권한 스펙 상향: 기존에 총괄 관리자 등 상위 등급만 접근할 수 있었던 전체 대시보드 요약 지표 데이터(/summary) 및 통계 차트(/charts) API에 대해, 일반 운영 관리자인 USER_ADMIN 역할도 유연하게 접근할 수 있도록 @PreAuthorize 보안 인가 사양을 확장했습니다.
  • 판매자 가입 제어 기능 구현: 총괄 관리자가 악의적인 불법 판매자의 진입을 차단할 수 있도록, 어드민 유저 패널(AdminUserPanel)과 adminApi 내에 판매자 회원가입 승인 및 거절 액션 메서드를 추가 개선했습니다.
  • 전체 시스템 헬스체크(Health Check) 설정 (백엔드): 서버 컨테이너 실행 상태를 확인하고 로드밸런서(ALB)의 타깃 그룹 체크를 지원하기 위해 백엔드 코어와 어드민 제어 계층에 api/health 헬스체크 API를 추가하고 실행을 확인했습니다.

4. 프로젝트 기술 문서화 완료 및 인프런 보안 학습 완강

  • 통합 README.md 보완 (백엔드/프론트엔드): AWS 클라우드 인프라 아키텍처 구성 요소와 지속적 통합/배포(CI/CD) 자동화 파이프라인 구조를 설명하는 기술 문서를 수백 줄 이상 추가했습니다. 프론트엔드 src/assets/readme/ 경로에는 실제 서비스 화면 캡처 18장을 저장하고 연결했습니다.
  • 웹 보안 진단 사전 학습 정리: SQL 인젝션 기초/심화 메커니즘 분석에 이어 OS 명령어 주입(OS Command Injection), XML 외부 엔티티 취약점(XXE), 크로스 사이트 스크립팅(XSS), 그리고 사이트 간 요청 위조(CSRF) 토큰 교차 검증, 파일 업로드·다운로드 취약점, 파라미터 변조 취약점, URL 접근 제한 미흡 취약점까지 다루는 인프런 웹 해킹/시큐어 코딩 교육 과정을 수강했습니다. 이를 바탕으로 플랫폼 내부 결함을 공격자 관점에서 살펴볼 준비를 했습니다.

5. 기능 영역별 최종 상태 점검

분류 세부 작업 내용 상태 비고
기획 도메인 최종 구매 완료 및 서비스 정체성 수립 완료 플랫폼 구조 지향 확정
프론트 숙소 레이지 로딩 이식 및 전체 백오피스 통합 머지 완료 메인 통합
프론트 Nginx 웹서버 환경 구축 및 가상화 배포용 Dockerfile 수정 완료 빌드 패키징 안정화 완료
백엔드 렌터카 location 컬럼 추가 및 DTO/Repository 검색 로직 개선 완료 서비스 비즈니스 반영
백엔드 일반 관리자(USER_ADMIN) 대시보드 접근 인가 사양 제어 수립 완료 RBAC 권한 정책 보완
백엔드 판매자 가입 승인 / 거절 처리 어드민 API 최종 구현 완료 불법 셀러 제어력 확보
보안/인프라 전체 시스템 가동 모니터링을 위한 통합 헬스체크 API 개설 완료 api/health 프로브 완료
보안/인프라 AWS 인프라 명세 및 CI/CD 파이프라인 README 통합 기술 문서화 완료 스크린샷 18장 매핑
연구 인프런 기반 시큐어 코딩 및 주요 웹 해킹 취약점 선행 과정 이수 완료 전 교육 과정 완강 달성

6. 다음 단계: 취약점 진단 트랙 기획·착수

플랫폼 온데(onde)의 기능 개발 및 실서버 연동이 한 구간을 마친 만큼, 이어지는 작업에서는 취약점 진단 트랙을 기획하고 수동 진단·모의해킹 준비를 본격적으로 시작합니다.

  • 교차 검증 E2E 안정성 모니터링: 렌터카 location API 연동 데이터의 무결성 체크 및 예약/결제 프로세스 수동 검증 진행.
  • Burp Suite 기반 실전 모의해킹 착수: 인프런 선행 학습을 통해 도출한 웹 보안 취약점 시나리오를 바탕으로, 우리 시스템 내부의 파라미터 변조, 인증 우회, 데이터 강제 탈취(UNION/BLIND), 권한 불충분(BOLA) 결함을 발굴하기 위한 모의 스캔 및 공격 시뮬레이션 가동.
  • 시큐어 코딩 리포트 작성 준비: 도출된 취약점 결함에 대해 Prepared Statement 적용 상태 점검 및 다층 방어 구조 유효성을 검증하여 최종 조치 이행 리포트 빌드 예정.
온데 개발단계 2 · Day 6–14 · 8 / 9일지 전체 →
  1. Day 06인프라 설계 정리 및 개발 속도를 위한 방식 변경
  2. Day 07프론트엔드 아키텍처 개선 및 백엔드 통합 시작
  3. Day 08프론트 Mock 데이터 제거와 백엔드 전체 모듈 통합
  4. Day 09실전 연동을 위한 API 표준화, BOLA 보안 취약점 개선 및 클라우드 인프라 개선
  5. Day 10본격 취약점 진단을 위한 공격 메커니즘 이해: 웹 해킹 및 SQL Injection 인증 우회 기법 학습
  6. Day 11실시간 DB 재고 달력 동기화, 권한(RBAC) 보안 가드 보완 및 로컬 Mock S3(MinIO) 인프라 구축
  7. Day 12백엔드 코어 데이터베이스 개편, 결제 파이프라인 연결 및 SQL Injection 심화·CSRF 다층 방어 정리
  8. Day 13메인 브랜치 통합, Nginx 배포 패키징, 플랫폼 헬스체크(Health Check) 설정 및 웹 보안 진단 준비
  9. Day 14진단 대상(온데) 마무리 후 웹 취약점 자동 진단 플랫폼 기획: 오픈소스(ZAP·Semgrep) 분석 및 3대 MVP 시나리오 확정