Jak uchronić phpBB by Przemo przed spamem?

Tytuł notki mówi sam za siebie. My nie lubimy spamu, ale spam niestety lubi nas. Niczym odrzucony kochanek pisze do nas listy. Wysyła nam ckliwe opowieści o swoich sposobach na udany stosunek płciowy, kusi nas prezentami pokroju rosyjskich zegarków, czy dba o nasze zdrowie lekarstwami z Kambodży. To uczucie jest jednostronne, czas więc temu smutnemu amantowi dać do zrozumienia, że ten związek nie ma przyszłości.

Dawno, dawno temu, gdy byłem jeszcze małym embrionem, nie za bardzo wiedziałem jak radzić sobie ze spamem. Swoją drogą jeszcze kilka lat temu w internecie (polskim) nie było takiej ilości porad dotyczących unieszkodliwiania spamerów. Ja się na tym nie znałem wybitnie, więc praktykowałem na forach wyłączanie możliwości pisania dla gości i banowanie zarejestrowanych botów. Ba, wtedy jeszcze nawet standardowa „kapcza” z phpBB2 była wystarczająca w większości przypadków (a dzisiaj wzbudza tylko politowanie).

Jeżeli ja się czegoś nauczyłem, to mógł zrobić to każdy. Jednak kiedy przemierzam internet, czasem aż włosy pod pachami stają dęba. Pomijam porzucone fora, które wiszą w sieci siłą rozpędu i wykupionego hostingu. W zakłopotanie wprawiają jednak fora, na których jest ruch, boty spamują wściekle, a admin nie nadąża z ich banowaniem. Jeżeli spamują goście, to sprawa jest jeszcze bardziej groteskowa. Z drugiej strony mamy jednak fora, które pomimo zabezpieczeń i tak są spamowane. Wtedy czas na zmianę taktyki. Jeżeli doświadczasz tego na skrypcie phpBB by Przemo, ten artykuł być może Ci się przyda. Jeżeli nie, artykuł przyda Ci się tylko w części ;)

Przedstawione combo sam przetestowałem i dlatego polecam. Skuteczność prawie 100%, a co najważniejsze, użytkownik nie uderza głową w umywalkę, jak ma to miejsce przy próbach odcyfrowania rożnych wariantów captchy.

Rejestracja. Od dzisiaj nie będzie już potrzebna, choć jest bardzo przydatna. Właśnie dlatego zabezpieczamy ją przed botami. Nie wyobrażam sobie metody, którą to zabezpieczenie mogłoby zostać złamane. Wystarczy nam instalacja moda pod nazwą „Potwierdzenie Tekstowe„. Podczas rejestracji każdy użytkownik będzie musiał odpowiedzieć na ustawione przez nas w panelu admina pytanie. Jeżeli odpowiedź będzie błędna, rejestracja będzie niemożliwa. Ja postawiłem na pytanie „Jak nazywa się stolica Polski?”. Żaden bot nie odpowiedział „Warszawa” i nie podejrzewam, aby zrobił to w przyszłości. Pytanie powinno być proste, tak aby nikt nie miał kłopotu z odpowiedzią. Oczywiście po instalacji wyłączamy obrazki z kodem do przepisania, potwierdzenia rejestracji mailem i tak dalej.

Pisanie postów. Umożliwienie gościom pisania na forum może znacząco zwiększyć ruch i ilość aktywnych użytkowników. Tutaj przychodzi nam z pomocą narzędzie, nad którym się rozpływam, czyli Sblam. Jest to filtr, który nie pozwala spamowym postom na pojawienie się na forum. Ma ogromną skuteczność i działa błyskawicznie. Na samym początku tworzymy nasz klucz API na stronie domowej projektu. Następnie instalujemy modyfikację dla phpBB by Przemo. Możemy w niej pominąć kroki dotyczące pliku usercp_register.php, nasze rejestracje są już zabezpieczone. Od teraz Sblam sprawdzi każdy post i pozwoli na jego publikację lub nie. Na jego stronie domowej podając nasz klucz API, możemy śledzić odrzucone posty i ewentualnie korygować jego pomyłki.

Blokowanie za pomocą .htaccess. To metoda także na inne strony niż fora phpBB by Przemo. Na stronie Tośka znajduje się Accesek, czyli „robocik” w PHP, który pobiera czarną listę IP z serwerów Sblam i wrzuca je w plik .htaccess. W ten sposób blokuje najbardziej uciążliwych spamerów, zanim wejdą na naszą stronę. Lista aktualizowana jest codziennie. Nie wiem niestety, jak tak długa lista wpływa na serwer, aczkolwiek na razie nie widzę różnicy w działaniu moich forów. Co warte wspomnienia: na stronie Accesika przykładowa komenda dla Crona brzmi

/usr/local/bin/php -q -f /home/user/domains/domena.pl/public_html/accesek.php

Drogą prób i błędów załapałem, że na moim serwerze muszę wyrzucić „-q -f”, aby komenda zaczęła działać.

W tych trzech krokach (lub dwóch pierwszych), zawiera się moja metoda walki ze spamem. Swym doświadczeniem stwierdzam, że to metoda bardzo skuteczna, więc polecam wszystkim.

Dodaj do:
  • RSS
  • PDF
  • Blip
  • Flaker
  • Gadu-Gadu Live
  • Gwar
  • Wykop
  • del.icio.us
  • Digg
  • Facebook
  • Google Bookmarks
  • Google Buzz
  • Live
  • Twitter

7 komentarzy

  1. Miłek pisze:

    Dzieki teraz spamboty caluja tylko klamke mojego forum :D

  2. CapaciousCore pisze:

    Przepraszam najmocniej ale kto normalny uzywa phpBB by przemo?

  3. CapaciousCore pisze:

    W takim razie gratuluje wyczucia. Nie rozumiem ludzi, ktorzy uzywaja skryptu, ktory jest doslownie przepakowany bajerami i obciaza serwer. No i trzeba pamietac o jego autorze. Jak mial hacka to nawet nie potrafil sie przyznac :)

  4. Twierdzenia, że przemo muli itd. mnie rozbijają totalnie. Jeżeli ktoś odpala wszystkie opcje to mu z forum robi się tsunami. Ja wyłączam sporo syfu syfu typu shoutbox, statystyki, albumy i inne niezwykle potrzebne na forum rzeczy. Fora stawiałem mniej więcej gdy phpBB było w wersji 3.0.0 i to właśnie prędkość działania mnie przekonała do przemo.

  5. CapaciousCore pisze:

    I oczywiscie wszystkie osoby stawiajace forum na tej wersji maja blade pojecie o optymalizacji i o tym jak zasobozerny jest ten skrypt. Wystarczy porownac kod i zobaczyc ile rzeczy jest napakowanych do srodka.

    Poza tym dlaczego tak „profesjonalny” skrypt korzysta z captcha zamiast chociazby wspomnianego Sblam!

    I nie probuj wmowic mi, ze wersja przema jest szybsza anizeli odpowiednik w wersji bez jego modyfikacji :-)

  6. Ja Ci nic nie wmawiam, ja tylko wyrażam swoje odczucia z użytkowania. Nie wiem jak jest teraz, ponoć phpBB 3.06 dostało kopa jeżeli chodzi o prędkość. Tak czy inaczej kilka modów (np. Sblam) dodałem, serwer nie muli, hosting nie ma zastrzeżeń, żadni hakerzy z Turcji mi forum jeszcze nie rozsypali. Czego jeszcze potrzebuję?

Zostaw komentarz