웹사이트로 갑자기 특정 국가에서 들어오는 원치 않는 트래픽이 급증하는 것을 경험하셨나요? 서비스 대상이 아닌 지역의 방문자일 수도 있고, 악성 봇(bot)의 해킹 시도일 수도 있습니다. 이유가 무엇이든, 이러한 트래픽은 웹사이트에 악영향을 미칩니다.
불필요한 트래픽은 사이트 속도를 느리게 하고 서버 리소스를 소진시키며, 최악의 경우 웹사이트가 해킹당하는 결과로 이어질 수도 있습니다. 만약 WordPress 사이트가 특정 국가의 방문자를 필요로 하지 않는다면, 지오블로킹(Geoblocking)이라는 방법을 통해 해당 국가를 차단할 수 있습니다.
이 글에서는 지오블로킹의 기본 개념과 웹사이트에 적용하는 방법을 자세히 다룹니다.
TL;DR: 가장 쉽고 확실하게 원치 않는 트래픽을 차단하고 싶다면 WordPress 지오블로킹 플러그인을 설치하세요. 몇 번의 클릭만으로 원하는 국가를 선택하고 차단할 수 있습니다.
목차
→ 지오블로킹이란?
→ 지오블로킹을 적용해야 하는 이유
→ 사이트 트래픽의 국가 출처 확인 방법
→ 플러그인으로 국가 차단하는 방법
지오블로킹이란?
지오블로킹(Geoblocking)은 특정 국가에서 발생하는 IP 주소가 웹사이트에 접속하지 못하도록 차단하는 방법입니다.
IP 주소는 인터넷에 접속하는 기기를 식별하는 코드입니다. 예를 들어, 어떤 사람이 노트북으로 여러분의 웹사이트에 접속한다면 그 노트북에는 IP 주소가 부여됩니다. 해당 IP 주소를 차단하면 그 노트북을 사용하는 누구도 사이트에 접근할 수 없게 됩니다.
지오블로킹은 단 하나의 IP 주소만 차단하는 것이 아니라, 특정 국가의 모든 IP 주소를 한 번에 차단하여 WordPress 사이트 접근을 막는 방식입니다.
즉, '캐나다'를 차단했다면 캐나다 내에서 컴퓨터, 모바일 등 어떤 기기를 사용하든 누구도 여러분의 웹사이트에 방문할 수 없습니다.
WordPress 사이트 운영자들은 다양한 이유로 트래픽을 차단합니다. 여러분의 사이트 운영에 도움이 될 수 있도록 주요 사유를 살펴보겠습니다.
지오블로킹을 적용해야 하는 이유
사이트 운영자가 특정 국가를 차단해야 하는 이유는 매우 다양합니다. 가장 일반적인 사례들을 소개합니다.
1. 악성 트래픽 차단
WordPress 사이트에서 국가 차단의 가장 큰 이유는 사이트 침입을 시도하는 악의적인 사용자를 막기 위해서입니다. 해커는 전 세계 어디에나 존재하지만, 데이터에 따르면 특정 국가에 집중되어 있는 경향이 있습니다.
전략국제문제연구소(CSIS)의 조사에 따르면, 중국과 러시아는 2006년 이후 가장 많은 사이버 해킹 공격의 발원지였습니다. 지오블로킹을 적용해 두면 차단된 방문자는 사이트에 접근조차 할 수 없으므로 침입 시도 자체를 원천적으로 막을 수 있습니다.
2. 로컬 타깃 오디언스
특정 국가의 현지 고객만을 대상으로 하는 사이트라면, 다른 국가에서 들어오는 트래픽은 사이트에 아무 의미가 없습니다. 이런 불필요한 방문자에게 콘텐츠를 표시하려면 서버 리소스를 소모하게 됩니다.
WordPress 호스팅 업체는 일반적으로 호스팅 플랜(클라우드 호스팅 또는 공유 호스팅 등)에 따라 제한된 리소스를 제공합니다. 관련성 있는 타깃 오디언스를 위해 리소스를 아껴 사용하는 것이 현명합니다.
3. 비공개 오디언스
회사 직원처럼 선별된 사용자만 사이트에 접근하도록 제한하고 싶을 수도 있습니다. 이 경우 지오블로킹을 활용해 사무실이 없는 국가 전체를 차단할 수 있습니다. 방문자의 지리적 위치(geolocation)를 기반으로 접근을 허용하거나 거부할 수 있습니다.
4. 왜곡된 분석 데이터
특정 국가에서 발생하는 스팸 트래픽이 많으면 분석 데이터가 엉망이 될 수 있습니다. 이는 트래픽 양과 전환율에 대한 부정확한 데이터로 이어져 마케팅 판단을 흐릴 수 있습니다.
5. 프리미엄 콘텐츠 보호
영화나 TV 프로그램 같은 프리미엄 미디어에 대한 접근을 제한하는 사이트에도 지오블로킹이 적용됩니다. 이는 저작권 및 라이선스 조건을 준수하기 위함입니다. Netflix나 Amazon Prime 같은 서비스에서 확인할 수 있는 방식입니다.
6. 가격 차별화
일부 웹사이트는 국가별로 별도의 사이트를 운영합니다. 각 국가의 가격은 비용, 생활 수준 등 다양한 요인에 따라 결정되므로, 운영자는 다른 국가의 접근을 제한하려 합니다.
7. 법적 의무 준수
온라인 도박과 같은 분야에서는 법률이 국가뿐 아니라 지역별로도 다릅니다. 이런 경우 웹사이트는 접근을 제한하고 해당 지역의 법률을 준수해야 합니다.
사이트 트래픽의 출처를 확인하는 방법을 모르겠다면 아래 단계를 참고하세요. 바로 차단을 시작하고 싶다면 해당 섹션으로 건너뛰어도 좋습니다.
사이트 트래픽의 국가 출처 확인 방법
웹사이트 트래픽이 어디에서 발생하는지 확인하는 방법은 두 가지입니다. Google Analytics를 사용하거나, 국가 차단 WordPress 플러그인을 활용하는 것입니다.
1. Google Analytics 활용하기
1. Google Analytics에 가입하고 웹사이트를 추가합니다.
2. 웹사이트를 '속성(Property)'으로 설정해야 합니다. Google에서 제공하는 단계별 가이드를 참고하세요.
3. 설정이 완료되면 아래와 같은 대시보드가 표시됩니다.
4. 화면을 아래로 스크롤하면 'Sessions by countries'(국가별 세션) 항목을 볼 수 있습니다.
5. 'Location overview'(위치 개요) 메뉴에 접속하면 트래픽 발생 국가에 대해 더 자세한 정보를 확인할 수 있습니다.
2. 플러그인 활용하기
IQ Block Country, MalCare 등 다양한 지오블로킹 플러그인이 있습니다. 여기서는 WordPress 멀웨어 검사 플러그인인 MalCare를 사용하는 방법을 소개합니다.
- 먼저 MalCare를 다운로드하여 웹사이트에 설치합니다.
- 회원가입 후 MalCare 대시보드에 웹사이트를 추가합니다.
- 대시보드에서 'Security'(보안) 옵션을 찾습니다.
- 세부 정보에서 'Traffic Requests > Show More'로 이동합니다.
- 아래와 같은 리포트가 표시됩니다. 이 리포트는 웹사이트를 방문한 트래픽의 IP 주소와 국가를 알려주며, 'status' 항목에서 해당 IP가 사이트 방문을 허용받았는지 여부도 보여줍니다.
또한 MalCare에서는 로그인 요청(login requests)도 확인할 수 있습니다. 이는 WordPress 사이트의 로그인 보안 상태를 점검하는 데 필수적인 기능입니다.
'Show more'를 클릭하면 로그인 시도 목록이 나타납니다. 성공으로 표시된 본인의 로그인 기록을 확인할 수 있으며, 실패한 로그인 시도와 공격자가 시도한 사용자 이름도 함께 표시됩니다.
예를 들어, 아래 사례의 외부 웹사이트는 본사가 런던에 있고 해외 근무 직원이 없어 런던만을 대상으로 하는 사이트입니다. 따라서 영국을 제외한 모든 국가는 배제할 수 있습니다.
그런데 MalCare의 로그인 요청 리포트를 확인해 보면, 여러 다른 국가에서 'admin'이라는 사용자 이름으로 WordPress 관리자 페이지에 로그인하려는 시도가 있었음을 알 수 있습니다.
'admin'은 가장 흔히 사용되는 사용자 이름이며 해커들도 이를 잘 알고 있습니다. 다행히 해당 WordPress 사이트는 사용자 이름을 더 복잡한 것으로 변경해 두었기 때문에 이러한 로그인 시도는 모두 실패했습니다.
이 기능을 활용하면 어떤 국가를 차단해야 할지 파악하는 데 큰 도움이 됩니다. 이 사례에서는 미국, 러시아 연방, 싱가포르를 차단하는 것이 적절합니다.
그럼 웹사이트에서 지오블로킹을 활성화하는 방법을 살펴보겠습니다.
플러그인으로 국가 차단하는 방법
WordPress 사이트에 지오블로킹을 적용하는 방법은 수동 방식과 플러그인 사용, 두 가지가 있습니다. 수동 방식은 처음부터 배제하겠습니다. 그 이유는 다음과 같습니다. 수동 차단 과정은 길고 복잡합니다.
- WordPress 파일에 직접 접근한 후, 개별 IP 주소를 차단하려면 수천 줄의 코드를 추가해야 합니다.
- 게다가 htaccess 파일처럼 WordPress 사이트의 백엔드 파일을 수정할 때마다 웹사이트가 손상될 위험이 있습니다. 코드에 아주 사소한 오류만 발생해도 전체 시스템이 오작동할 수 있기 때문입니다.
- 심지어 수동으로 차단한 후에도 해커들은 우회 방법을 통해 차단을 피하고 사이트에 접근할 수 있습니다. 프록시 서버나 VPN을 사용하면 IP 주소를 숨겨 차단된 웹사이트에 접속할 수 있습니다.
대신, 손쉽게 특정 국가의 접근을 차단하는 효과적인 방법은 MalCare 같은 플러그인을 사용하는 것입니다.
과정은 간단하고 빠릅니다. 게다가 이 플러그인은 지능형 신호를 사용해 IP 주소의 행동을 분석합니다. 누군가 VPN이나 프록시 서버를 사용하더라도, MalCare는 해당 IP 주소가 실제로 악성인지 분석한 후 차단합니다.
즉, 차단된 국가의 IP 주소는 실질적으로 차단되며, 사이트가 손상될 걱정도 없습니다! MalCare로 지오블로킹을 적용하는 방법을 알아보겠습니다.
→ MalCare로 국가 차단하기
1단계: MalCare에 가입하고 계정을 설정한 후 웹사이트를 선택합니다.
2단계: 'Manage'를 선택한 다음 GeoBlocking을 클릭합니다.
3단계: 드롭다운 메뉴에서 차단할 국가를 선택합니다. 선택한 국가의 모든 IP가 웹사이트 접근에서 차단됩니다.
4단계: 페이지 하단의 Block Countries 버튼을 클릭합니다.
이것으로 끝입니다! 해당 국가에서 들어오는 모든 IP 주소가 성공적으로 차단되었습니다. 차단된 국가의 사용자는 더 이상 검색 결과에서 여러분의 웹사이트를 볼 수 없으며, 주소창에 직접 입력해 방문하려고 하면 아래와 같은 안내 화면을 보게 됩니다.
→ MalCare로 국가 차단 해제하기
특정 국가의 차단을 해제하고 싶다면 동일한 Geoblocking 탭(1~2단계)으로 이동합니다. 여기에서 웹사이트 이름 오른쪽에 더하기(+) 기호가 표시된 목록을 볼 수 있습니다.
더하기 기호를 클릭하면 차단했던 국가들이 나타납니다. 여기서 차단을 해제할 국가를 선택한 후 'Unblock Country'를 클릭하면 됩니다.
또한, 정상 트래픽이 실수로 차단된 경우를 대비해 IP 주소 화이트리스트 등록 방법 가이드도 확인해 보세요.
마무리
지오블로킹을 활용하면 타깃 오디언스에게 집중적으로 서비스를 제공하는 동시에, 알려진 악성 해커와 봇의 접근을 차단할 수 있습니다.
다음으로는 이러한 악성 봇으로부터 웹사이트를 보호하기 위한 조치를 취해야 합니다. 방문자의 개인 데이터 보안을 확보함으로써 타깃 오디언스에게 더 나은 서비스를 제공할 수 있습니다.
사이트를 완벽하게 보호하려면 MalCare를 웹사이트에서 상시 활성화해 두는 것을 권장합니다. 지오블로킹 기능 외에도 사이트에 전방위적인 보호를 제공합니다. 멀웨어와 해킹 흔적을 정기적으로 전체 사이트를 스캔하여 찾아내고, 알려진 악성 트래픽으로부터 사이트를 능동적으로 방어합니다.
또한 WordPress 하드닝(Hardening) 조치를 적용해 웹사이트를 더욱 견고하게 만드는 것도 추천합니다. 이렇게 하면 해커가 사이트를 공격할 틈을 주지 않을 수 있습니다!
지금 바로 MalCare로 WordPress 사이트를 보호하세요!