베스트셀링 인기 워드프레스 테마 Top 30 자세한 정보

htaccess를 사용하여 특정 IP 주소 또는 특정 도메인 차단하기

Last Updated: 2021년 9월 13일 | 15개 댓글
  • 네이버 블로그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 트위터 공유하기
  • 카카오스토리 공유하기

불량 사용자나 스패머, 사이트 글을 복제하는 사용자 혹은 특정 웹사이트에서 불필요하게 사이트로 유입되는 경우 .htaccess를 통해 IP나 유입 사이트 주소로 차단할 수 있습니다. cPanel 환경을 제공하는 웹호스팅을 이용하는 경우 IP Blocker 등의 툴을 사용하여 IP 주소를 차단하는 것이 가능합니다. 워드프레스에서는 보안 플러그인에서 IP 주소를 차단하는 기능을 제공하기도 합니다.

[ 이 글은 최신 정보를 추가하여 재발행되었습니다. ]

htaccess를 사용하여 특정 IP 주소 또는 특정 도메인 차단하기

특정 IP 주소/도메인 차단하기

특정 IP 주소나 도메인으로부터 사이트 접근을 차단하고 싶은 경우 FTP 클라이언트를 사용하여 FTP에 접속한 후에 .htaccess 파일을 열고 아래와 같이 편집하도록 합니다.  .htaccess 파일이 없는 경우 루트에 하나를 만들도록 합니다. (FTP 사용법은 이 글을 참고해보시기 바랍니다.)

다음 형식을 사용하면 192.168.1.25, 192.168.1.26, example.com을 제외한 모든 IP 및 도메인이 허용됩니다. (즉, 별도로 지정된 IP 주소나 사이만 차단됨).

# allow all except those indicated here
<Files *>
order allow,deny
allow from all
deny from 192.168.1.25
deny from 192.168.1.26
deny from .*example\.com.*
</Files>

특정 IP 주소/도메인만 허용하기

다음 스크립트를  .htaccess에 입력하여 지정된 IP와 도메인을 제외한 모든 IP와 도메인을 차단할 수 있습니다.

# Deny access to everyone, except those listed here:
<Files *>
order deny,allow
deny from all
deny from 192.168.1.21
deny from 192.168.1.22
allow from .*example\.com.*
</Files>

특정 참조 도메인으로부터 유입되는 방문자 차단하기

참조 도메인(Referring domain)별로 원치 않는 방문자를 차단하려면 아래와 같은 스크립트를 사용합니다. (domain1domain2를 차단할 참조 도메인으로 대체하도록 합니다.)

# block visitors referred from indicated domains
RewriteEngine on
RewriteCond %{HTTP_REFERER} domain01\.com [NC,OR]
RewriteCond %{HTTP_REFERER} domain02\.com [NC]
RewriteRule .* - [F]
# Source: mediatemple.net

cPanel을 제공하는 웹호스팅(예: 블루호스트)에서 IP 주소 차단 설정하기

Bluehost 등 cPanel을 제공하는 웹호스팅을 이용하는 경우 cPanel에서 IP 주소로 사용자 접속을 차단하는 툴이 제공됩니다. 블루호스트에서는 IP Blocker 툴을 사용할 수 있습니다.

블루호스트 cPanel IP Blocker 툴을 사용하여 IP 주소 차단하기

IP 주소를 하나씩 차단할 때에는 192.168.0.1과 같이 IP Address or Domain 필드에 추가하면 됩니다. IP 주소 범위로 차단하고 싶은 경우 다음과 같은 형식으로 입력할 수 있습니다.

192.168.0.1-192.168.0.40
192.168.0.1-40
192.

192.만 입력하면 192.으로 시작하는 모든 IP 주소(192...*)가 차단됩니다.

워드프레스 보안 플러그인에서 IP 주소 차단하기

워드프레스 사이트를 운영하는 경우 Wordfence나 iThemes Security와 같은 보안 플러그인을 통해 IP 주소를 차단하는 것이 가능합니다. 예를 들어, iThemes Security를 사용하는 경우 알림판 > Security > Dashboard로 이동하여 Banned Users 섹션에서 차단할 IP 주소를 추가할 수 있습니다.

워드프레스 보안 플러그인에서 IP 주소 차단하기

Add Ban 섹션에서 Host에 IP 주소를 입력하고 Notes 필드에 참고 사항을 입력한 다음 Save(저장)를 클릭하면 추가됩니다.

워드프레스 스팸 IP 차단

Block spams in WordPress

워드프레스에서 스팸 때문에 고민하는 경우 Akismet이나 IP Blacklist Cloud 등의 플러그인을 사용할 수 있습니다.

업데이트: IP Blacklist Cloud는 1년 이상 업데이트가 안 되고 있기 때문에 사용하지 않는 것이 바람직합니다. Akismet는 500만 개가 넘는 워드프레스 사이트에 설치되어 사용되고 있는 인기 스팸 차단 플러그인입니다. 이 플러그인을 사용하면 효과적으로 스팸을 차단할 수 있습니다.

참고:



15 개 댓글

Leave a Comment

  1. 휴 ... 드디어 됩니다. 다른사람들이 알려준 소스는 안되던데
    그사람들 전부 사짜인가 봅니다.
    페이팔 계정있으시면 후원드리겠습니다.

    응답
    • 잘 작동한다니 저도 기쁘네요.

      페이팔 계정 정보는 후원 페이지에서 확인하실 수 있습니다.ㅎ
      https://www.thewordcracker.com/forum/donation

      응답
  2. 특정 도메인을 특정아이피로만 접속가능하게 하는 명령어가 있나요 ?
    한호스팅에 4개의 도메인이 연결되어 있다고 할때 이중 1개의 도메인만
    지정된 아이피로만 접속가능하게 하는 방법
    있나요 ?

    응답
    • 안녕하세요, 박상길님.

      이 부분에 대해서는 정확하지 않지만 다음 글을 참고하여 응용하면 될 것도 같습니다.

      https://webmasters.stackexchange.com/questions/114014/deny-access-to-one-of-two-sites-using-the-same-htaccess

      예시:

      <If "%{HTTP_HOST} = 'www.example.com'">
      order deny,allow
      allow from 31.24.232.14
      allow from 127.0.0.0
      allow from 192.168.0.0
      deny from all
      </If>

      링크된 문서를 자세히 한 번 읽어보시기 바랍니다.

      응답
      • 알려주신 예시와 링크를 따라가서 해본결과
        작동이 안되네요 ^^ 차단해야 하는데 전부 접속됩니다.
        그런데 아래 소스가 그나마 차단이 완벽한데요
        아이피를 입력했는데두 무조건 차단만 합니다. 뭐가 잘못되었나요 ?
        RewriteEngine On

        RewriteCond %{HTTP_HOST} ^(?:www\.)?subdomain\.com$ [NC]
        RewriteCond ${ipmap:%{REMOTE_ADDR}} !^(111\.111\.111\.1|11\.111\.|10\.|1\.2\.3\.4)$
        RewriteRule ^ - [F]

      • 다음과 같은 형식으로 사용해야 하는 것 같습니다.

        RewriteEngine On
        RewriteCond %{HTTP_HOST} ^(?:www\.)?subdomain\.com$ [NC]
        RewriteCond %{REMOTE_ADDR} !^(127\.0\.0\.1|192\.168\.|10\.|1\.2\.3\.4)$
        RewriteRule ^ - [F]

      • 글에 언급한 내용처럼 deny from .*example.com.*

        그냥 하나의 도메인을 차단해봤어요. 서버 여러곳에 여러대 두고 테스트하는중이라....

      • "특정 참조 도메인으로부터 유입되는 방문자 차단하기"의 코드가 아마 원하는 용도의 코드일 것 같습니다.

        코드 자체는 틀린 것이 없습니다. ( https://www.quora.com/How-do-I-block-a-whole-domain-in-htaccess 참고해보세요.) 하지만 도메인을 차단하는 코드는 원하는 대로 작동하지 않을 것 같습니다. 이 부분은 테스트가 필요할 것 같은데요. 가령 어떤 사이트에서 내 사이트의 이미지 URL을 링크한다면 해당 사이트에서 내 사이트의 URL에 접근하려고 시도할 것입니다. 그럴 때 차단하는 코드가 아닐까 생각되네요.

    • 안녕하세요?

      elelel 폴더에 특정 IP만 허용하고 싶다면 적절한 코드가 포함된 .htaccess 파일을 만든 후에 해당 폴더에 업로드하면 될 것입니다.

      https://www.techrepublic.com/blog/web-designer/quick-tip-how-to-limit-access-to-a-web-directory-by-ip-address/ 참고해보세요.

      응답
  3. 카페24에 아이피 밑에 차단하는 버튼이 있더라구요..^^
    제가 왜 이제 발견했는지..ㅋㅋ
    그냥 아..~~ 트래픽이 많구나 이런 생각을 가졌데 그것이 아니었내요..!!

    응답
  4. 저는 오늘 특정 ip를 차단 했습니다.
    호스팅에서 하루에 한번은 트래픽을 보는데 유독 새벽1시에 특정 아이피 1개가 트래픽 용량 2.5G중 2.0G를 잡아 먹네요..
    내일을 봐야 알 수 있을 듯 해요..!!

    응답
    • 2G를 잡아 먹으면 굉장한 것인데요.
      카페24에서 그런 공격을 차단하지는 못하는가 보네요.
      혹시나 싶어 사용 중인 호스팅의 트래픽을 확인해보니 약정한 것보다 1/10 정도밖에 사용하고 있지 않네요.

      응답