[나의 첫 블로그 7] 워드프레스 403 Forbidden 접속 오류

블로그를 개설한 지 며칠 지나지 않아 사이트에 접속하면 403 Forbidden 오류가 나타났다. 워드프레스 관리자 페이지에도 접속할 수 없었다.

403 Forbidden 오류란?

HTTP 상태 코드 중 4xx는 클라이언트 요청과 관련된 오류이고, 5xx는 서버가 요청을 정상적으로 처리하지 못했을 때 발생하는 오류다.

403 Forbidden은 서버가 요청을 이해했지만 접근을 거부했다는 뜻이다. 로그인이나 권한 문제뿐 아니라 웹방화벽, IP 차단, 국가별 접속 제한 등의 보안 설정으로도 발생할 수 있다.

차단 지점 확인

현재 블로그의 접속 경로는 다음과 같다.

방문자 → Cloudflare → 카페24 서버

어디에서 요청이 차단됐는지 확인하려면 트래픽이 거치는 Cloudflare와 카페24의 보안 설정을 차례로 점검해야 한다.

우선 카페24 설정부터 확인했다.

카페24 나의 서비스 관리 → 호스팅 관리 → 보안 관리 → 스팸 SHIELD

스팸 SHIELD는 봇과 같은 비정상적인 접속을 자동으로 차단해 불필요한 트래픽이 발생하는 것을 막는 기능이다. 다만 이 기능으로 정상적인 접속이 차단되는 경우도 있다.

스팸 SHIELD 차단 내역 확인

스팸 SHIELD의 차단 내역을 확인해보니 해외 국가에서 발생한 접속이 주로 차단돼 있었다. 블로그를 개설한 지 얼마 되지 않았는데도 차단 횟수가 상당히 많았다.

카페24 스팸 SHIELD 차단 내역

Cloudflare의 프록시 기능을 사용하면 방문자의 요청은 Cloudflare를 거쳐 카페24 서버로 전달된다. 이때 카페24 서버의 네트워크 연결에는 방문자 IP가 아닌 Cloudflare 프록시 IP가 표시될 수 있다.

따라서 스팸 SHIELD가 Cloudflare를 거쳐 전달된 요청을 비정상적인 접속으로 판단했을 가능성이 있다고 생각했다.

다만 차단 내역에 해외 국가가 많이 표시됐다는 사실만으로 Cloudflare IP가 차단됐다고 단정할 수는 없다. 정확히 확인하려면 차단된 IP가 Cloudflare의 공식 IP 대역에 포함되는지 비교해야 하지만 차단 IP는 확인이 불가능했다.

스팸 SHIELD 해제 후 확인

원인을 확인하기 위해 스팸 SHIELD 설정을 사용 안함으로 변경했다.

설정을 변경한 뒤 블로그와 워드프레스 관리자 페이지에 바로 접속할 수 있었다.

이를 통해 이번 403 Forbidden 오류의 직접적인 원인은 카페24 스팸 SHIELD였던 것으로 판단했다. 워드프레스 자체 오류나 Cloudflare 방화벽 문제는 아니었다.

마무리

Cloudflare를 연결한 뒤 사이트 전체에서 403 Forbidden 오류가 발생한다면 다음 항목을 순서대로 확인하는 것이 좋다.

  1. Cloudflare 보안 이벤트와 차단 규칙
  2. 카페24 스팸 SHIELD 차단 내역
  3. 카페24 특정 IP 및 국가별 웹 접근 설정
  4. 카페24 웹방화벽 차단 내역

이번에는 카페24 스팸 SHIELD를 해제하는 것으로 문제를 해결했다.

403 오류가 발생하면 워드프레스 자체의 문제라고 단정하지 말고, 방문자의 요청이 사이트에 도달하기까지 거치는 각 구간의 보안 설정을 확인해야 한다.