댓글 블랙리스트를 활용하여 워드프레스 스팸 댓글에 대처하기

댓글 블랙리스트를 활용하여 워드프레스 스팸 댓글에 대처하기

워드프레스 '댓글 블랙리스트'(허용하지 않는 댓글 키워드) 기능을 활용하여 스팸 댓글에 대처하기

워드프레스를 운영하는 경우 사이트 방문자가 많아지면서 덩달아 스팸 댓글과 스팸 회원이 증가하게 됩니다.

스팸 댓글이 많이 달리는 경우 Akismet Anti-Spam 플러그인(한글 명칭 "Akismet 안티스팸: 스팸 방지")을 설치하면 플러그인에서 지능적으로 스팸을 처리해줍니다. 간혹 정상적인 댓글도 스팸으로 처리되는 경우도 있습니다. 개인 사이트와 블로그에 Akismet을 무료로 사용할 수 있습니다.

이외에도 WP-SpamShield 등의 스팸 방지 플러그인을 활용해볼 수도 있습니다(참고). 그리고 다음 워드프레스 Codex 문서에서는 스팸에 대처하는 다양한 방법이 설명되어 있습니다.

워드프레스 문서에서 제시하는 방법 중 하나로 GitHub에서 다운로드할 수 있는 비공식 워드프레스 댓글 블랙리스트(wordpress-comment-blacklist)를 이용하는 것입니다.

링크된 GitHub 페이지에서 blacklist.txt 파일의 내용을 워드프레스의 댓글 블랙리스트에 등록하면 됩니다.

댓글 블랙리스트를 활용하여 워드프레스 스팸 댓글에 대처하기 2

워드프레스 관리자 페이지에서 설정 » 토론을 클릭하여 허용하지 않는 댓글 키워드(이전 명칭 "댓글 블랙리스트") 란에 스팸 단어들을 추가할 수 있습니다. 또한, IP 주소로도 차단이 가능합니다.

댓글이 그 콘텐츠, 글쓴이 이름, URL, 이메일, IP 주소, 또는 브라우저의 사용자 에이전트 문자열에 아래 단어 중 하나를 포함할 때, 휴지통에 넣을 것입니다. 한줄에 한 단어 또는 하나의 IP 주소를 입력하세요. 내부 단어와 매칭시키므로, “press”는 “WordPress”와 일치하게 됩니다.

업데이트: 워드프레스가 업데이트되면서 '댓글 블랙리스트'는 '허용하지 않는 댓글 키워드'로 명칭이 바뀌었습니다.

이 블로그의 경우 대부분 스팸이 영어나 일본어로 작성되어 달립니다. Disqus를 설치하면 스팸 댓글이 확연히 줄지만, 스팸 댓글이 간혹 달리는 현상이 나타났습니다. 어제 Disqus를 비활성화하고 워드프레스 기본 댓글 시스템으로 바꾼 후에는 스팸이 조금 더 늘어났습니다. (아마 보안 플러그인에서 일부 스팸을 차단해주는지 몰라도 스팸이 생각보다 많이 늘지는 않았습니다.)

워드프레스 Codex 문서에 언급된 스팸 블랙리스트를 활용하니 이제 대부분의 스팸 댓글이 "휴지통"으로 곧바로 들어가네요.

워드프레스 스팸

체크해보니 하루 동안 약 14개의 스팸 댓글이 휴지통으로 이동해있네요. 대부분이 영어 댓글이고 간혹 러시아어와 일본어 댓글도 눈에 띄네요. 특이한 것은 최근에 jiaming Bai라는 사용자 이름으로 계속 스팸 댓글이 달리고 있습니다. (추가: 많을 때에는 밤새 50개가 넘는 스팸 댓글이 달리기도 하네요.)

이 방법을 사용하면 별도의 스팸 방지 플러그인을 설치하지 않고도 (이 블로그에서) 스팸 댓글을 비교적 효과적으로 차단하는 것 같습니다.

6년 사용 후기

이 글은 2017년에 처음 작성되었습니다. 이 방법으로 스팸 댓글을 필터링한지 벌써 6년이 넘었네요.

이 방법을 이용하면 대부분의 스팸 댓글이 휴지통으로 이동하게 됩니다. 하지만 드물지만 스팸 댓글이 필터링되지 않는 경우가 하고, 정상 댓글이 스팸으로 인식되기도 합니다.

정상 댓글이 스팸으로 인식되는 이유는 허용되지 않는 댓글 키워드에 등록된 단어가 댓글 내용에 포함되기 때문입니다. 필터링되지 않는 스팸 댓글은 댓글 블랙리스트가 업데이트되면서 추후에는 스팸 댓글로 인식되어 휴지통으로 이동할 수 있습니다. (댓글 블랙리스트가 꾸준히 업데이트되면서 한 번씩 GitHub 사이트에 방문하여 업데이트된 리스트를 확인하여 적용하면 도움이 됩니다.)

또한, 저는 댓글 본문에 링크가 포함될 경우에도 스팸으로 간주하여 휴지통으로 이동시키고 있습니다. 링크가 포함될 경우 휴지통으로 이동시키고 싶은 경우 허용하지 않는 댓글 키워드 섹션에 http를 추가하면 됩니다. 그러면 http://...나 https://...로 시작하는 링크는 모두 휴지통으로 자동으로 이동하게 됩니다.

댓글을 삭제할 때에는 한 번씩 훑어보고 정상적인 댓글을 복원하는 과정이 필요합니다. 조금 번거롭게 생각될 수도 있지만 습관이 되면 불편함을 느끼지 않을 것입니다.

참고로 댓글에서 이메일 필드와 웹사이트 필드를 제거한 후에 스팸 댓글이 많이 줄었습니다. 스팸 댓글 메커니즘에서 이메일 필드를 제거하는 것을 예상하지 못해서 그런 것이 아닐까 추정해봅니다.

영어, 일본어, 중국어, 아랍어 댓글을 휴지통으로 보내기

영어 댓글을 필터링하고 싶은 경우 자주 사용되는 영어 단어를 금칙어로 설정할 수 있습니다. 예:

the
and
to
of
a
in
is
it
you
that
he
was
for
on
are
with
as
I
his
they
be
at
one
have
this
from
or
had
by
not
word
but
what
some
we
can
out
other
were
all
there
when
up
use
your
how
said
an
each
she

일본어로 된 댓글을 필터링하고 싶은 경우에는 히라가나와 카타카나 글자들을 금지어로 지정하는 것을 고려할 수 있습니다.

あ
い
う
え
お
か
き
く
け
こ
ア
イ
ウ
エ
オ
カ
キ
ク
ケ
コ

중국어(간체)의 경우 자주 사용하는 글자를 금칙어로 지정할 수 있습니다.

的
是
不
了
在
有
我
他
这
个

아랍어로 된 댓글이 자주 달리는 경우 아랍어 알파벳을 금칙어로 설정하면 모든 아랍어 코멘트가 휴지통으로 이동할 것입니다.

ا
ب
ت
ث
ج
ح
خ
د
ذ
ر
ز
س
ش
ص
ض
ط
ظ
ع
غ
ف
ق
ك
ل
م
ن
ه
و
ي

모든 댓글을 휴지통으로 보내기

대부분의 댓글이 스팸인 경우 모든 댓글을 휴지통으로 보내고, 정기적으로 정상적인 댓글이 없는지 체크한 다음 휴지통을 비우는 방법을 고려할 수 있습니다.

신규로 달리는 모든 댓글을 휴지통으로 이동시키고 싶은 경우 "허용하지 않는 댓글 키워드" 섹션에 다음과 같이 입력하면 됩니다. 점(.)만 입력해도 될 것 같지만, 저는 아래와 같이 숫자를 함께 입력하여 모든 신규 댓글들을 휴지통으로 보내고 있습니다. 삭제하기 전에 정상적인 댓글은 복원하고 나머지는 모두 삭제할 수 있습니다.

1
2
3
4
5
6
7
8
9
.
-

참고

일부 글에 제휴 링크가 포함될 수 있으며 파트너스 활동으로 일정액의 수수료를 받을 수 있습니다.

7개 댓글

  1. 저는 테마를 설치할때 스팸이 약 30개 달린 적이 있어요..ㅋㅋ
    아마 테마에서 확인을 하는 듯 한 것 같아요..^^
    그 외엔 스팸이 전혀 안 오네요..
    아스키 스팸을 사용하니 저는 만족하고 있습니다..!!

    1. Akismet을 사용하시는군요.

      Akismet을 어떻게 발음하는가 궁금해서 찾아보니 "아키스멧" 혹은 "아키즈멧" 정도로 발음하는 것 같네요.ㅋㅋ

      1. 이제 저의 테마를 바꾸고 싶다는 생각이 드네요..ㅋㅋ
        Valenti 를 마음에 두고 있는데 이번 블랙프라이데이 때 활인을 할련지 모르겠습니다..^^

      2. Valenti 테마(https://1.envato.market/1d0bR )를 살펴보니 매거진 테마네요. Newspaper와 비슷하면서도 느낌이 조금 다른 것이 나름대로 괜찮게 보이네요. 사용자 평가도 괜찮고요.

        저는 예전에 Genesis Framework를 사용하는 Magazine Pro라는 테마가 마음에 들어서 한번 이용해볼까 생각한 적이 있습니다.

        https://my.studiopress.com/themes/magazine/#demo-full

        나름대로 깔끔한 것이 제가 딱 좋아하는 스타일이지만, Framework 사용법을 별도로 익혀야 하고, 속도가 제대로 나올지 장담할 수 없어 접은 적이 있습니다.

        저는 여러 차례 테마를 바꾸었기 때문에 이제 한 동안 테마를 바꾸지 않으려고 생각 중입니다.ㅎㅎ

댓글 남기기

* 이메일 정보는 공개되지 않습니다.