운영 서버 보안 및 구성 체크리스트¶
- 운영 서버(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 접근 범위가 의도한 정책(내부망 전용 또는 외부 공개)에 맞게 동작함.
- 불필요한 포트 외부 노출 없음.
- 서버 재부팅 후 서비스 정상 기동됨.
이 체크리스트를 모두 만족한 서버만 운영 서버로 배포함.