CDN 보안 설정, 켜 둘 기능 6가지와 원 서버 주소 보호법
CDN 보안 설정의 핵심은 HTTPS·웹 방화벽·요청 제한을 켜고, 원 서버가 CDN 요청만 받게 막는 것입니다. 이 글에서는 CDN을 쓸 때 켜 둘 보안 기능 6가지와 원 서버 주소를 보호하는 순서, 캐시 설정에서 자주 하는 실수를 정리했습니다.
CDN과 원 서버의 관계
CDN(콘텐츠 전송 네트워크)은 여러 지역에 둔 서버가 홈페이지의 이미지나 페이지를 대신 전달해 속도를 높이는 서비스입니다. 실제 홈페이지 프로그램과 데이터가 있는 서버를 원 서버(오리진)라고 부르고, 방문자는 원 서버 대신 CDN에 먼저 접속하게 됩니다.
이 구조 덕분에 CDN은 속도뿐 아니라 보안에도 도움이 됩니다. 방문자의 요청을 CDN이 먼저 받으므로 그 자리에서 이상한 요청을 거르고, 접속이 갑자기 몰려도 원 서버까지 닿는 양을 줄일 수 있습니다. 다만 원 서버로 바로 가는 길이 열려 있으면 이 보호를 건너뛸 수 있습니다.
CDN을 쓸 때 켜 둘 보안 기능 6가지
아래 표는 CDN 서비스에서 흔히 제공하는 보안 기능을 무엇을 막는지와 켤 때 확인할 점으로 나누어 정리한 것입니다. 메뉴 이름은 서비스마다 다를 수 있습니다.
| 기능 | 하는 일 | 켤 때 확인할 점 |
|---|---|---|
| HTTPS 강제 | http 접속을 https로 바꿔 전달 | 원 서버와 CDN 사이 구간도 암호화되는지 |
| 웹 방화벽 규칙 | 알려진 웹 공격 패턴 차단 | 문의 폼·로그인이 잘못 막히지 않는지 |
| 요청 횟수 제한 | 짧은 시간에 몰리는 요청 제한 | 로그인·문의 주소에 우선 적용 |
| 봇 관리 | 자동화 프로그램의 접근 구분 | 검색엔진 수집 로봇을 막지 않는지 |
| 디도스 완화 | 대량 접속 공격을 앞단에서 흡수 | 공격 때 연락할 창구와 절차 |
| 관리 계정 보호 | CDN 관리 화면 로그인 보호 | 2단계 인증과 담당자별 계정 |
표에서 가장 자주 빠뜨리는 것은 마지막 줄입니다. CDN 관리 계정을 빼앗기면 도메인 연결과 보안 규칙을 모두 바꿀 수 있으므로, 홈페이지 관리자 계정만큼 단단히 지켜야 합니다. 대량 접속 공격에 미리 대비하는 방법은 DDoS 공격 대응, 소규모 홈페이지가 미리 할 준비에서 따로 다뤘습니다.
원 서버 주소를 보호하는 5단계
원 서버 주소(IP)가 알려져 있으면 누군가 CDN을 거치지 않고 서버에 직접 접속할 수 있습니다. 아래 순서로 원 서버가 CDN을 통한 요청만 받도록 정리합니다.
- DNS 기록 점검: 도메인 관리 화면에서 홈페이지 주소가 모두 CDN을 가리키는지 확인합니다. 하위 주소 가운데 원 서버를 그대로 가리키는 기록이 남아 있지 않은지 봅니다.
- 메일 관련 기록 분리: 메일 서버가 홈페이지와 같은 서버에 있으면 메일 기록에서 원 서버 주소가 드러날 수 있습니다. 가능하면 메일은 별도 서비스로 분리합니다.
- 원 서버 방화벽 제한: 웹 접속(80·443 포트)은 CDN 서비스가 공개한 주소 대역에서 오는 것만 허용하도록 서버나 호스팅 방화벽을 설정합니다.
- 구간 암호화와 인증: 원 서버에도 인증서를 두고 CDN과 원 서버 사이를 암호화합니다. 서비스가 원 서버 쪽 인증 기능을 제공하면 함께 켭니다.
- 주소 교체 검토: CDN을 도입하기 전부터 같은 주소를 오래 썼다면 이미 알려졌을 수 있으므로, 호스팅 업체와 상의해 원 서버 주소를 바꾸는 방안을 검토합니다.
그림의 1~2단계는 주소가 새는 길을 막는 일이고, 3~4단계는 주소가 알려지더라도 직접 접속이 통하지 않게 하는 일입니다. 3단계에서 CDN 주소 대역은 바뀔 수 있으므로, 서비스가 공개하는 목록을 주기적으로 확인해 방화벽에 반영합니다.
캐시 설정에서 자주 하는 보안 실수
CDN은 페이지를 저장해 두었다가 다른 방문자에게도 그대로 보여 줍니다. 개인별로 내용이 달라지는 페이지까지 저장되면 한 사람의 정보가 다른 사람에게 보일 수 있으므로 아래 항목을 확인합니다.
- 관리자 페이지, 로그인, 마이페이지, 장바구니 주소는 캐시에서 제외한다.
- 문의 폼 전송 결과 화면처럼 입력 내용이 다시 보이는 페이지는 저장하지 않는다.
- 내려받기용 파일 주소가 로그인 없이도 CDN에 남아 열리지 않는지 확인한다.
- 설정을 바꾼 뒤에는 로그인한 상태와 로그아웃한 상태로 각각 열어 보고, 캐시를 비운다.
캐시 문제는 속도를 높이려고 범위를 넓게 잡았을 때 자주 생깁니다. 처음에는 이미지·스크립트 같은 정적 파일만 캐시하고, 페이지 캐시는 하나씩 넓혀 가는 편이 안전합니다. https 강제와 함께 보안 헤더를 점검하는 방법은 HTTPS 강제와 보안 헤더 점검법을 참고하세요.
디코랩이 돕는 방식
디코랩은 운영 중인 사이트의 수정·오류·개선을 유지보수로 맡고, 웹사이트 취약점 점검 서비스도 운영합니다. CDN을 붙인 뒤 원 서버가 그대로 열려 있는지, 캐시로 개인 화면이 새지 않는지 확인하고 싶다면 웹사이트 취약점 점검 서비스를 살펴보세요.
자주 묻는 질문
CDN만 붙이면 해킹을 막을 수 있나요?
CDN은 앞단에서 요청을 거르고 접속 폭주를 줄여 주지만, 홈페이지 프로그램의 취약점이나 약한 관리자 비밀번호까지 고쳐 주지는 않습니다. 업데이트와 계정 관리는 그대로 해야 합니다.
원 서버 주소가 이미 알려졌는지 어떻게 아나요?
원 서버 접속 기록에 CDN 주소 대역이 아닌 곳에서 들어온 웹 요청이 꾸준히 보인다면 직접 접속이 일어나고 있다는 뜻입니다. 이 경우 방화벽 제한을 먼저 적용하고 주소 교체를 검토합니다.
검색엔진 수집 로봇이 막히지는 않나요?
봇 관리나 요청 제한을 강하게 걸면 검색엔진 로봇까지 막힐 수 있습니다. 설정 뒤 Google Search Console과 네이버 서치어드바이저에서 수집 오류가 늘지 않는지 확인하세요.
무료 CDN 요금제도 보안 기능이 있나요?
서비스마다 다르지만 HTTPS 강제와 기본적인 공격 완화는 무료 요금제에도 들어 있는 경우가 많습니다. 웹 방화벽 규칙의 범위나 차단 기록 보관 기간은 요금제마다 다르니 약관과 안내 문서를 확인하세요.
CDN을 쓰고 있는데 원 서버 보호나 캐시 설정이 제대로 되었는지 모르겠다면 사이트 주소를 적어 디코랩 프로젝트 문의로 보내 주세요.
댓글0
댓글 작성 권한이 없습니다