열려 있는
닫다

스팸으로부터 Simple Machines(SMF) 포럼을 보호하는 방법 포럼 엔진의 자동 감지 smf가 제공하는 Attentive 프로필

메인 스크립트 코드부터 바로 시작해 보겠습니다.

#!/usr/bin/perl

# which-forum.pl 스크립트
# (c) 2010 Alexandr A Alexeev, http://site/

엄격하게 사용하십시오.

# 주석 처리된 줄 - 엄격함을 위해
# 엔진 통계를 수집하는 작업이라면 그대로 둡니다.
# 포럼 목록을 작성하는 경우 - 주석 해제

내 $data ;
$data .= $_while (<> ) ;

# 바닥글에 링크 없이 Powered by phpBB가 얼마인지 확인
"phpbb"를 인쇄하세요 \N"
if ($data =~ /]+href="[^"]*http:\/\/(?:www\.)?phpbb\.com\/?"[^>]*>phpBB/i또는
# $data =~ /viewforum\.php\?[^""]*f=\d+/i 또는
$data =~ /phpBB\-SEO/i 또는
$데이터 =~ /) ;
"ipb"를 인쇄하세요. \N"
if ($data =~ /]+href="[^"]*http:\/\/(?:www\.)?invision(?:board|power)\.com\/?[^"]*"[^>]*> [^<]*IP\.Board/i 또는
$데이터 =~ /]+href="[^"]*http:\/\/(?:www\.)?invisionboard\.com\/?"[^>]*>Invision 전원 보드/i또는
$데이터 =~ /

/나또는
$데이터 =~ /index\.php\?[^""]*showforum=\d+/i) ;
인쇄 "vbulletin \N"
if ($data =~ /제공:?[^<]+vBulletin[^<]+(?:Version)?/i 또는
$데이터 =~ /) ;
인쇄 "smf \N"
if ($data =~ /]+href="[^"]*http:\/\/(?:www\.)?simplemachines\.org\/?"[^>]*>SMF/i 제공또는
$데이터 =~ /index\.php\?[^""]*board=\d+\.0/i) ;
인쇄 "punbb \N"
if ($data =~ /]+href="[^"]*http:\/\/(?:(?:www\.)?punbb\.org|punbb\.informer\.com)\/?"[^>]*> PunBB/i) ; #또는
# $data =~ /viewforum\.php\?[^""]*id=\d+/i);
"fluxbb"를 인쇄하세요. \N"
# if($data =~ /viewtopic\.php\?id=\d+/i 또는
if ( $data =~ /]+href="http:\/\/(?:www\.)fluxbb\.org\/?"[^>]*>FluxBB/i) ;
인쇄 "exbb \N"
if ($data =~ /]+href="[^"]*http:\/\/(?:www\.)?exbb\.org\/?"[^>]*>ExBB/i) ; # 또는
# $data =~ /forums\.php\?[^""]*forum=\d+/i);
인쇄 "yabb \N"
if ($data =~ /]+href="[^"]*http:\/\/(?:www\.)?yabbforum\.com\/?"[^>]*>YaBB/i또는
$data =~ /YaBB\.pl\?[^""]*num=\d+/i ) ;
인쇄 "dleforum \N"
if ($data =~ /\(DLE 포럼 제공\)<\/title>/나또는
$데이터 =~ /]+href="[^"]+(?:http:\/\/(?:www\.)?dle\-files\.ru|act=copyright)[^"]*">DLE 포럼<\/a>/나) ;
인쇄 "아이콘보드 \N"
if ($data =~ /]+href="[^"]*http:\/\/(?:www\.)?ikonboard\.com\/?[^"]*"[^>]*>Ikonboard/i또는
$데이터 =~ /\N"
if ($data =~ /\N"
# if($data =~ /forums\.php\?fid=\d+/i 또는
# $data =~ /topic\.php\?fid=\d+/i 또는
if ($data =~ /]+href="http:\/\/(?:www\.)?flashbb\.net\/?"[^>]*>FlashBB/i) ;
"스토크시트"를 인쇄하세요 \N"
# if($data =~ /forum\.php\?f=\d+/i 또는
if ($data =~ /]+href="http:\/\/(?:www\.)?stokesit\.com\.au\/?"[^>]*>[^\/]*스토크스 IT/i) ;
인쇄 "연단 \N"
# if($data =~ /topic\.php\?t=\d+/i 또는
if ($data =~ /]+href=[""]?http:\/\/(?:www\.)?sopebox\.com\/?[""]?[^>]*>Podium/i) ;
"usebb를 인쇄하세요. \N"
# if($data =~ /forum\.php\?id=\d+/i 또는
if ($data =~ /]+href="http:\/\/(?:www\.)?usebb\.net\/?"[^>]*>BB/i 사용) ;
"W포럼"을 인쇄하세요. \N"
# if($data =~ /index\.php\?fid=\d+/i 또는
if ($data =~ /]+href="http:\/\/(?:www\.)?wr\-script\.ru\/?"[^>]*>WR\-Forum/i) ;
"yetanotherforumnet"을 인쇄하세요. \N"
if ($data =~ /또 다른 포럼\.net/i 또는
$데이터 =~ /default\.aspx\?g=posts&t=\d+/i) ;

이 스크립트와 게시물에 언급된 다른 스크립트는 다음 위치에서 찾을 수 있습니다. 이 아카이브.

스크립트 which-forum.pl HTML 페이지 코드를 검사하여 포럼 엔진의 서명이 포함되어 있는지 확인합니다. 우리는 다음과 같은 경우에도 비슷한 기술을 사용했습니다. WordPress와 Joomla의 정의, 그러나 몇 가지 차이점이 있습니다. 첫째, 스크립트 자체는 페이지 코드를 로드하지 않고 stdin이나 인수로 전달된 파일에서 읽습니다. 이를 통해 예를 들어 wget을 사용하여 페이지를 한 번 다운로드한 다음, 둘 이상의 분석기가 있는 경우 여러 분석기를 통해 실행할 수 있습니다. 둘째, 이 스크립트에서 서명의 존재는 100% 엔진의 서명입니다. 지난번에는 시그니처의 존재로 인해 해당 엔진과 가장 큰 무게의 엔진에만 무게가 추가되었습니다. 나는 이 경우 그러한 접근 방식이 코드를 불필요하게 복잡하게 만들 뿐이라고 결정했습니다.

스크립트를 테스트하기 위해 몇 가지 조사를 했습니다. 저는 수천 개의 포럼 목록을 작성하고 스크립트를 통해 각 포럼을 실행하여 프로그램 응답 비율과 다양한 엔진의 인기를 결정했습니다.

내가 사용한 포럼 목록을 얻으려면 Google 파서로. 이와 같은 쿼리가 검색 엔진으로 전송되었습니다.

사이트:forum.*.ru
사이트:talk.*.ru
사이트:board.*.ru
사이트:smf.*.ru
사이트:phpbb.*.ru
....

등등. 파일에서 전체 쿼리 생성기 코드를 찾을 수 있습니다. gen-forumsearch-urls.pl. zone.ru 외에도 .su .ua .kz 및 .by도 사용되었습니다. 지난번에는 WordPress와 Joomla 사이트의 URL에 이러한 서명이 없기 때문에 이러한 연구를 수행하기가 어려웠습니다. cmsmagazine.ru/catalogue/와 같은 카탈로그는 충분한 샘플 크기를 제공하지 않습니다. 600개의 Drupal 사이트란 무엇입니까?

나는 실험 결과가 나를 실망시켰다는 것을 인정해야 한다. 연구된 12,590개 사이트 중 7,083개 사이트, 즉 56%의 사이트에서만 엔진이 성공적으로 식별되었습니다. 어쩌면 일부 엔진을 고려하지 않았을까요? 포럼의 절반에 Bitrix가 설치되어 있다는 것이 정말 사실인가요? 아니면 서명을 검색하는 데 더 많은 시간을 소비해야 합니까? 일반적으로 여기에는 추가 연구가 필요합니다.

성공적으로 식별된 엔진 중 56% 중에서 예상대로 가장 인기 있는 엔진은 IPB(31%), phpBB(26.6%) 및 vBulletin(26.5%)이었습니다.

SMF(5.8%)와 DLEForum(5.3%)이 뒤를 이었습니다. 나의 좋아하는 말장난BB 6위(1.64%)에 그쳤습니다. 나는 이 수치를 크게 신뢰하는 것을 권장하지 않지만(RuNet의 세 번째 포럼은 모두 IPB에서 실행된다고 합니다) 물론 특정 결론을 도출할 수 있습니다.

예를 들어, 포럼 엔진에 사이트를 만들고 포럼을 수정하려는 경우(예를 들어 일주일에 한 번 자동 자금 인출을 통해 메시지당 0.01달러를 사용자에게 지불하는 경우) 가장 인기 있는 세 가지 엔진 중 하나를 선택해야 합니다. 포럼의 인기가 높을수록 해당 포럼에 정통한 프로그래머를 찾을 가능성이 커집니다.

엔진에 큰 변화가 없을 것으로 예상된다면 덜 인기 있는 엔진(예: SMF 또는 punBB)을 선택하는 것이 합리적일 수 있습니다. 이렇게 하면 포럼에 대한 해커 공격 횟수와 자동으로 전송되는 스팸의 양이 줄어듭니다.

포럼 검색/식별을 위한 스크립트는 또한 많은 실용적인 응용 프로그램을 찾을 수 있습니다. 가장 먼저 떠오른 건 이거였어요. TCI로 정렬귀하의 사이트 중 하나에 대한 링크가 포함된 처음 100개의 포럼 및 장소 게시물을 확인하세요. 그러나 수백 개의 포럼 dofollow 링크는 어떤 식으로든 TCI에 영향을 미치지 않았으므로(2개의 업데이트가 통과됨) 전환에 관심이 없는 한 여기에서 시간을 낭비하지 않는 것이 좋습니다.

언급된 스크립트 사용이 유일한 스크립트 사용과는 거리가 멀다는 것이 분명합니다. 다른 용도로 사용하면 쉽게 알 수 있을 것 같아요.

모르는 사람이 있을 경우를 대비해 Simple Machines Forum(줄여서 SMF)은 공식 웹사이트에 명시된 대로 전문가 수준의 무료 패키지로, 몇 분 안에 자신만의 온라인 커뮤니티를 구성할 수 있습니다. 이 엔진에서는 여기를 볼 수 있습니다. 나는 그것에 대해 내 자신의 포럼을 설정했습니다 (그런데 FreeForum.biz로 이동하십시오).

귀하의 포럼에 스팸이 얼마나 많이 또는 적게 나타나는지는 중요하지 않습니다. 중요한 것은 당신의 귀중한 시간을 절제에 투자한다는 것입니다. 모든 작업을 수행하는 플러그인을 설정하는 데는 몇 분이 걸리며 총 며칠, 몇 달이 절약되며 메시지를 지우고 사용자를 삭제하는 데 소요되는 시간이 추가됩니다.

나는 스스로 스패머와 싸우려고 노력했다는 점에 주목하겠습니다. IP와 서브넷을 통한 액세스도 차단했습니다. 그것은 정말 효과가 있었고 많은 쓰레기를 걸러냈지만 그럼에도 불구하고 하루나 이틀에 한 번씩 누군가가 그것을 통과했습니다. 그리고 금지된 IP의 데이터베이스를 보충하는 데 꽤 많은 시간이 걸렸습니다. 나는 분명 더 나은 방법이 있을 것이라고 생각했고, 실제로 그랬습니다!

1. Stop Spammer 설치 및 구성

이 플러그인은 작동 2주 만에 2,202명의 가짜 사용자를 차단했습니다. 그들 각각은 적어도 하나의 메시지를 남길 것입니다. 스패머들은 줄어들 기미를 보이지 않으며 저는 매일 포럼을 정리하는 데 시간을 할애했습니다.

대신 며칠에 한 번씩 사용자 관리 페이지에 가서 다음과 같은 내용을 확인합니다.

"승인 대기 중" 섹션으로 이동합니다(관리자가 계정을 승인할 때까지 메시지를 남길 기회를 박탈당한 스패머가 발견되었습니다). "모두 선택" 확인란을 선택하고 한 번의 클릭으로 삭제합니다.

그게 다입니다. 모든 스팸 계정은 망각됩니다. 사용자 목록으로 돌아가 보겠습니다.

목록이 눈에 띄게 얇아진 것을 알 수 있는데 나머지는 누구입니까? 우리는 모든 사람을 선택하고 하나의 버튼으로 확인을 위해 보냅니다.

하나의 "빨간색"이 나타나면 즉시 삭제합니다. 시간이 있으면 다른 일을 해도 됩니다. 시간이 없다면 신규 사용자에게는 아무 것도 하지 마십시오. 대부분의 사용자는 후속 확인 중에 "얼굴이 붉어집니다". 시간이 있으면 프로필로 이동하여 살펴볼 수 있습니다. 서명에 링크가 있으면 즉시 금지됩니다. 이는 유용한 메시지를 하나도 남기지 않는 스팸 발송자의 가짜 계정입니다.

이 마법의 플러그인 사용법을 알려드렸으니 이제 설치 방법을 알려드리겠습니다.

두 개의 파일을 다운로드하세요: Language_full.zip(플러그인 번역을 위한 언어 팩) 및 StopSpammer_v2_3_9.zip(버전이 업데이트됨에 따라 번호가 다를 수 있음). StopSpammer_v2_3_9.zip 아카이브의 내용을 일부 폴더에 압축을 풉니다. 동일한 폴더에 Language_full.zip 아카이브의 압축을 풀고 파일 교체에 동의합니다. 이제 폴더를 zip 아카이브로 압축하세요.

관리자 패널에서 패키지 설치를 진행합니다. "패키지 다운로드" 문구 반대편에는 컴퓨터에서 파일을 선택하는 버튼이 있습니다. 새 아카이브(언어 파일을 교체한 위치)를 선택하고 포럼에 업로드한 후 패키지를 활성화하세요.

그게 다야!

플러그인의 추가 구성은 관리자 패널에서 발생합니다.

사용자 → 등록 → 설정

거기에 기본값을 그대로 둘 수 있습니다. "귀하의 API 키" 필드도 있습니다. 이 키가 없으면 새로운 스팸 발송자를 신고할 수 없습니다(그러나 플러그인은 작동하여 알려진 스팸 발송자를 필터링합니다). 자신만의 API 키를 얻으려면 www.stopforumspam.com으로 이동하여 등록한 후 여기에 키를 입력하세요. 아직 키를 받지 못한 경우 해당 필드를 비워 두세요. 그러면 기본 키가 사용됩니다.

2. 스팸방지 링크 설치 및 구성

SEO 종교의 지지자들(다른 사이트에서 SEO 니스트에 대한 나의 태도에 대해 더 많이 읽을 수 있음)은 자신의 사이트에 대한 링크 수를 늘리면 해당 사이트를 "홍보"한다는 확고한 확신을 가지고 있습니다. ​흥미롭고 고품질의 콘텐츠를 만드는 것은 누구에게도 매력적이지 않습니다.) 그는 멍청하겠지만 그에게서 돈을 뽑아낼 방법이 있을 것이다. 따라서 일부 "시민"은 포럼을 통해 사이트를 "운영"하는 서비스를 제공합니다. 그들은 다양한 포럼에 많은 수의 계정을 만들고 서명 및 기타 사용 가능한 필드에 백링크를 삽입합니다. "SEO 실험자"조차도 이러한 링크가 전혀 사용되지 않는다는 것을 이미 실험적으로 입증했음에도 불구하고 일부 사람들은 이에 대해 검색 엔진에서 금지를 받을 수 있다고 경고합니다. 예를 들어 Yandex는 모든 포럼과 사이트의 링크를 무시합니다. 링크를 남길 수 있습니다. Google에도 유사한 알고리즘이 있습니다. 댓글 등의 링크를 무시합니다. 그러나 법은 바보를 위해 작성되지 않았습니다... 따라서 포럼 소유자인 우리는 "멋진 SEO 최적화 프로그램"이 "실행"을 명령한다는 사실을 고려해야 합니다. ” 천 루블에 대한 그들의 엉뚱한 창조물.

Stop Spammer 플러그인은 많은 정보를 필터링합니다. 하지만 우리가 그를 도울 수 있어요! 스패머로부터 벗어나 포럼에 링크를 게시하는 데 큰 관심을 가질 수 있습니다. 이것이 바로 스팸 방지 링크의 목적입니다. 이 플러그인(특정 숫자는 설정에서 변경 가능)은 다음을 수행합니다.

  • 예를 들어 메시지가 5개 미만인 경우 링크를 전혀 남길 수 없습니다.
  • 예를 들어 메시지가 15개 미만이고 활성 링크를 남길 수 없으며 http://가 링크에서 제거되고 일반적으로 이러한 링크는 누보링크(newbielink)가 됩니다.
  • 예를 들어 게시물이 50개 미만인 경우 활성 링크를 남길 수 있지만 모든 링크에는 nofollow 속성이 부여됩니다.
  • 글쎄, 50개 이상의 게시물을 보유한 사람들은 가장 일반적인 활성 링크를 삽입할 수 있으며, 이는 사이트의 무게를 링크되는 페이지로 이전합니다.

저를 믿으십시오. SEO 후보자는 자신의 링크가 사이트에 표시되는 형식에 대해 매우 신중합니다. 그들이 자신의 엉뚱한 사이트에 대한 엉뚱한 링크를 쉽게 게시할 수 없다면 포럼에 대한 관심을 금방 잃을 것입니다.

예, 그런데 위의 규칙은 서명과 같은 분야에도 적용됩니다.

이 플러그인을 설치하려면 공식 페이지로 이동하세요. anti_spam_links_v1.0.1.zip 아카이브를 다운로드합니다(번호는 다를 수 있음). 다시 포럼 관리자에서 패키지 설치로 이동하여(이전 패키지와 마찬가지로) 설치합니다. 이 패키지에는 언어 파일이 없으므로 아카이브의 압축을 풀거나 관련 작업을 수행할 필요가 없습니다.

플러그인을 구성하려면 섹션으로 이동하세요.

구성 → 모드 설정… → 수정 설정

원한다면 사용자가 자신의 능력을 업그레이드하기 위해 얼마나 많은 메시지를 가지고 있어야 하는지 지정하십시오.

결론

이 두 플러그인은 포럼 소유자인 여러분의 삶을 훨씬 더 쉽게 만들고 많은 시간을 절약해 줄 것입니다. 그러나 때때로 스팸 발송자가 침입하여 적어도 일주일에 한 번은 사용자를 "얇게 만들고" 스팸 메시지를 삭제해야 합니다. 그러므로 웹 리소스를 포기하지 마십시오!