콘텐츠로 이동

운영 서버 보안 및 구성 체크리스트

  • 운영 서버(Production Server) 배포 전 반드시 확인해야 할 구성 및 보안 항목 체크리스트.
  • 본 체크리스트는 실제 설정 방법이 아닌 적용 여부 확인용 문서로 사용함.

모든 서비스 공통 운영 서버 기준임.
특정 런타임(Node.js, PHP, Java 등)과 무관하게 적용됨.


1. OS 및 계정 관리

  • Rocky Linux 설치 완료.
  • 불필요한 패키지 제거됨.
  • root 계정 직접 사용하지 않음.
  • 일반 사용자 생성됨.
  • sudo 권한 사용자만 관리 작업 수행함.

2. SSH 접근 보안

  • SSH 공개키 인증 사용함.
  • PasswordAuthentication 설정이 서버 노출 형태와 일치함.
  • root SSH 로그인 금지됨.
  • SSH 포트 변경됨(선택).
  • SSH 접속 테스트 완료됨.

3. SELinux 및 방화벽

  • SELinux Enforcing 모드 확인됨.
  • 변경된 서비스 포트 SELinux에 등록됨.
  • firewalld 활성화됨.
  • 필요한 포트만 허용됨.
  • Rocky Linux 9 이상에서는 AllowZoneDrifting 항목이 없음을 확인함.

4. 침입 방어 및 공격 차단

  • 외부에 SSH가 노출되는 서버라면 Fail2ban 설치/활성화됨.
  • 외부에 SSH가 노출되는 서버라면 SSH jail 활성화됨.
  • Fail2ban 사용 시 차단 로그 정상 기록됨.
  • Fail2ban 사용 시 차단 해제 방법 숙지함.

5. 서비스 운영 기준

  • 운영 서버 전용 계정 사용함.
  • 개발/테스트 계정 접근 차단됨.
  • 로그 접근 권한 제한됨.
  • 중요 설정 파일 백업됨.

6. 운영 정책 확인

  • SSH Hardening 정책 적용됨.
  • 운영 서버 기준 문서 확인됨.
  • 보안 설정 변경 이력 관리됨.

최종 확인

  • SSH 접근 범위가 의도한 정책(내부망 전용 또는 외부 공개)에 맞게 동작함.
  • 불필요한 포트 외부 노출 없음.
  • 서버 재부팅 후 서비스 정상 기동됨.

이 체크리스트를 모두 만족한 서버만 운영 서버로 배포함.