워드프레스 Wordfence 보안 플러그인 IP 차단 방법

워드프레스 사이트를 운영하다 보면 원치 않는 트래픽 때문에 골치를 앓는 경우가 많습니다. 악성 봇의 상당수는 서버 방화벽에서 걸러지지만, 이를 뚫고 들어와 페이지를 무작위로 긁어대는 봇들도 적지 않습니다. 이런 봇들이 짧은 시간에 반복적으로 접속하면 서버 리소스가 불필요하게 소모되면서 사이트 응답 속도가 느려지거나, 심한 경우 CPU 사용량이 급증해 사이트가 아예 다운되기도 합니다.

이럴 때는 과도하게 접속하는 IP를 파악해서 서버 방화벽이나 Wordfence 같은 보안 플러그인에서 직접 차단해주는 것이 효과적인 대응 방법이 될 수 있습니다. 이 글에서는 워드프레스 인기 보안 플러그인인 Wordfence를 이용해 IP를 차단하는 방법에 대해 살펴보겠습니다.

워드프레스 Wordfence 보안 플러그인 IP 차단 방법

악성 봇 차단 방법

저는 이 워드프레스 블로그를 10년 넘게 운영해오면서 악성 봇의 무차별적인 접속은 물론, 실제 디도스(DDoS) 공격으로 서버가 다운되거나 극도로 느려지는 상황을 여러 차례 겪었습니다. 공격이 발생할 때마다 웹호스팅 업체에 문의해 조언을 구하고, 그에 따라 대응해왔습니다. 그리고 그 과정에서 나름대로 효과를 본 방법들을 찾아낼 수 있었습니다.

특히 재작년 8월부터 9월까지 한 달 가량은 극심한 디도스 공격에 시달렸습니다. 처음 공격을 받았을 때는 너무 당황해서 제대로 손을 쓰지 못했지만, 공격이 반복되면서 점차 대응 요령이 생기기 시작했습니다.

또, 악성 봇들이 갑자기 급증하면서 서버가 매우 느려지거나 다운되는 현상을 경험하기도 했습니다. 이 경우에는 클라우드플레어(Cloudflare)와 연동해서 실제 사용자는 통과시키고 봇만 차단하는 방법이 효과적일 수 있습니다.

디도스 공격을 받은 이후부터 저는 Cloudflare와 연동해서 사용했지만, 클플라우드플레어 때문에 사이트의 레이아웃이 깨지는 현상이 발생해서 클라우드플레어와의 연동을 해제했습니다. 대안으로 Wordfence 플러그인의 속도 제한(Rate Limiting) 설정으로 방어하고 있는데, 효과적인 것 같습니다.

4단계 방화벽 차단 방식

과도하게 접속하는 IP를 차단하는 방법으로 몇 가지가 있습니다. 트래픽 절감면에서는 클라우플레어를 활용하는 것이 효과적입니다. 서버에 도달하기 전에 처리하므로 서버 리소스를 절감할 수 있습니다.

Cloudflare (1차 방어선 - 네트워크 엣지)

  • 특징: 서버 전단에서 트래픽을 처리하므로 서버 대역폭과 자원을 전혀 소비하지 않습니다.
  • 활용: 해외발 DDoS(분산 서비스 거부 공격), 특정 국가 차단, 알 수 없는 대규모 자동화 봇 차단에 가장 이상적입니다.

서버 방화벽 (예: Cloudways 방화벽) (2차 방어선 - 서버 OS 레벨)

  • 특징: 클라우드웨이즈 관리자 패널(Security » Firewall)에서 설정하며, 서버 방화벽이 패킷을 즉시 차단합니다.
  • 활용: Cloudflare를 거치지 않고 서버 IP로 직접 들어오는 악성 IP나, 지속적으로 서버를 괴롭히는 특정 IP를 원천 봉쇄할 때 적합합니다.
클라우드웨이즈 방화벽

.htaccess (3차 방어선 - 웹 서버 레벨)

  • 특징: Apache/LiteSpeed 웹 서버가 요청을 수신하지만, PHP나 데이터베이스를 호출하지 않고 문지기 역할만 수행한 뒤 즉시 거부합니다.
  • 활용: 특정 파일 접근 제한, 사용자 에이전트(User-Agent) 기반 차단, 개별 IP 핑퐁 차단 시 유용합니다. (단, 룰이 너무 길어지면 웹 서버 성능에 소폭 영향을 줄 수 있음)

Wordfence (4차 방어선 - 애플리케이션 레벨)

  • 특징: 워드프레스 PHP 코드가 동작한 뒤 스캔하므로 가장 무겁지만, 워드프레스의 구조(로그인, 댓글, 데이터베이스 query)를 정확히 이해하고 차단합니다.
  • 활용: 관리자 페이지 무차별 대입 공격(Brute Force), 악성 댓글/스팸, 워드프레스 취약점 공격 탐지에 필수적입니다.

서버 방화벽으로 제대로 차단되지 않거나, .htaccess 파일을 통해서도 차단이 안 되는 경우에 워드펜스 방화벽에서 차단하면 차단될 수 있습니다.

<4단계 방화벽 차단 방식 비교>

비교 항목Cloudflare (엣지)Cloudways 방화벽 (서버 OS).htaccess (웹 서버)Wordfence (워드프레스)
차단 위치서버 외부
(네트워크 엣지)
서버 입구
(OS / OS 방화벽)
웹 서버
(Apache 프로세스)
워드프레스 내부
(PHP / DB)
서버 부하없음 (0%)
서버가 접속 자체를 모름
극히 적음
OS 패킷 레벨 거부
적음
PHP 미실행, 텍스트 거부
높음 (주의)
PHP 실행 및 메모리 소모
트래픽 절약최상
서버 트래픽 차감 없음
우수
웹 서버 자원 소모 방지
중간
네트워크 연결 요청은 수용
나쁨
이미 서버 내부 진입 완료
PHP/DB 실행미실행미실행미실행실행됨
설정 편의성대시보드 UI
(매우 쉬움)
Cloudways 패널
(쉬움)
.htaccess 코드 수정
(주의 필요)
워드프레스 플러그인
(매우 쉬움)
추천 용도DDoS 방어, 국가 차단, 대규모 악성 봇악성 IP 원천 차단, 지속적 스크래퍼 방어특정 URL 접근 제어, 단순 리디렉션/차단브루트 포스 로그인 방어, 지능형 해킹 탐지

Wordfence에서 IP 차단하기

이 블로그에 특정 IP 주소로 반복적으로 스팸 댓글이 달려서 고민하다가 IP 주소를 Wordfence에서 차단하도록 설정했습니다. 클라우드웨이즈 방화벽에서 IP 차단 요청을 할 수 있지만, 추후 쉽게 차단을 해제하기 위해 Wordfence를 선택했습니다.

스팸 댓글

특정 IP 차단 설정을 하려면 Wordfence » 방화벽으로 이동하여 차단을 클릭합니다.

워드펜스 방화벽

차단 페이지가 표시되면 차단 유형IP 주소를 클릭하고 차단 대상 IP 주소차단 사유를 입력하고 이 IP 주소 차단 버튼을 클릭합니다.

워드펜스 플러그인 IP 주소 차단하기

그러면 차단 목록에 추가됩니다.

차단 리스트에서 해당 IP 항목을 선택하고 차단 해제 버튼을 눌러 차단을 중지할 수 있습니다.

워드펜스 차단 해제

참고

댓글 남기기

댓글 남기기