Jak zablokować ruch spamowy z odwołaniem za pomocą Apache Webserver

Jak zablokować ruch spamowy z odwołaniem za pomocą Apache Webserver

W tej konfiguracji dowiesz się, jaki jest ruch spamowy, w jaki sposób jest on generowany, a co najważniejsze, jak blokować spam referencyjny w serwisie serwisowym Linux Apache.

Co to jest spam polecający?

Spam referencyjny to kolejna uciążliwość wymyślona przez spamerów, powodując, że nieś świadomi administratorów systemów, marketerów lub właścicieli witryn nieumyślnie odwiedzają lub powiązane z witryną spamera za pośrednictwem publicznie opublikowanego dostępu lub referencji na stronie internetowej ofiary. Może to w konsekwencji prowadzić do niższego rankingu wyszukiwarki, a także do wyczerpania zasobów serwera.

Ponieważ czytasz ten artykuł, są szanse, że być może zauważyłeś dziwny ruch polecający trafił do serwera, podczas gdy podążając linkiem, który wylądował na całkowicie niezwiązanej stronie internetowej.

Jak to działa

Wszystkie trafienia generowane przy użyciu techniki spamu referencyjnego nie są prawdziwymi odwiedzającymi, ale raczej wynikają z automatycznego skryptu składającego żądanie HTTP, jednocześnie celowo zmieniając nagłówek HTTP za pomocą skierowania spam. Poniżej można znaleźć próbkę dziennika dostępu Apache:

10.1.1.8 - - [10/Mar/2015: 11: 56: 55 +1100] "GET/HTTP/1.1 "200 10543" http: // Przykład.com/"" Mozilla/5.0 (x11; Linux x86_64) AppleWebkit/537.36 (KHTML, jak gecko) Chrome/40.0.2214.111 Safari/537.36 " 

Z powyższego możemy odczytać, że jakiś formularz użytkownika 10.1.1.8 Korzystanie z przeglądarki Chrome odwiedził stronę głównego naszego serwera WWW, skąd pochodzi link polecający przykład.com domena. Taki wpis dziennika może być generowany przez każdy, kto ma dostęp do odpowiednich narzędzi. Użyjmy kędzior polecenie wygenerowania fałszywego skierowania z MyDomain.lokalny:

$ curl -s -e mydomain.lokalny http: // mysite.lokalny> /dev /null 

Teraz, kiedy badamy dzienniki Apache, możemy znaleźć następujący wpis:

10.1.1.8 - - [10/Mar/2015: 12: 26: 20 +1100] "GET/HTTP/1.1 "200 433" http: // mydomain.lokalny „” curl/7.32.0 " 

Dodatkowo, przy użyciu kędzior polecenie możemy również zmienić typ agenta:

 $ curl -a "Mozilla/5.0 (x11; Linux x86_64) AppleWebkit/537.36 (KHTML, jak gecko) Chrome/40.0.2214.111 Safari/537.36 "-s -e http: // mydomain.lokalny http: // mysite.lokalny> /dev /null 

co spowoduje, że Twój serwer WWW do rejestrowania:

10.1.1.8 - - [10/Mar/2015: 12: 31: 17 +1100] „Get/http/1.1 "200 433" http: // mydomain.Lokalny „” Mozilla/5.0 (x11; Linux x86_64) AppleWebkit/537.36 (KHTML, jak gecko) Chrome/40.0.2214.111 Safari/537.36 " 

Powyższe jest spamem polecającym i może oszukać Twoje narzędzia statystyki internetowej, takie jak Google Analytics, a także drenaż zasobów serwerowych.

Jak zablokować spam polecający

Chcielibyśmy tutaj osiągnąć po prostu blokowanie ruchu z wszelkich podejrzanych skierowań. Na przykład zablokujemy każdy ruch z przykład.com domena polecająca, a także blokowanie ruchu z linku do polecania zawierającego słowo kluczowe spam w dowolnym miejscu w adresie URL.

Do tego będziemy potrzebować Apache's przepisać Moduł do włączenia. Aby sprawdzić, czy przepisać Moduł jest włączony na serwerze Enter:

# Apache2ctl -m | GREP REWrite Rewrite_module (udostępniony) Składnia OK 

Jeśli nie widzisz wyjścia, przepisać moduł nie jest włączony. Aby włączyć moduł przepisywania:

# A2EnMod Rewrite Włączanie modułu przepisanie. Aby aktywować nową konfigurację, musisz uruchomić: Service Apache2 restart # Service Apache2 restart […] restartowanie serwera WWW: Apache2apache2: . OK 

Następnie zmień swój wirtualny hostUpewnienie Ustawienia. Na przykład:

Od: indeksy opcji obserwuje Symlinks multivistls zezwolenie na zezwolenie na zamówienie, odmawiaj zezwolenie na wszystkie do: indeksy opcji obserwuje sięSymlinks multiViews Zezwalaj  

Po dokonaniu powyższych zmian uruchom ponownie swój serwer WWW:

# Service Apache2 restart 

Na tym etapie będziemy mieli dwie opcje, w jaki sposób korzystać z naszych przepisań, aby zablokować spam referencyjny.

Pierwszą opcją jest włożenie naszych instrukcji przepisywania do plik konfiguracji naszej witryny. To podejście jest zalecane, ponieważ nie wywiera dużej presji na zasoby serwera, ponieważ wszystkie instrukcje przepisywania są odczytywane tylko raz podczas sekwencji uruchamiania Apache. Aby to zrobić, wprowadź następujące linie przepisywania w pliku konfiguracyjnym witryny:

  Indeksy opcji obserwuje się, że MultiView Aldoverride Brak Zakup, odmowa zezwolić z całej reriteEngine na Przykład RewriteCond http_referer.com |.*Rewriterule spam [NC] .* - [F]  

Po przeprowadzeniu powyższych zmian ponownie uruchom swój serwer WWW Apache. Wadą powyższej konfiguracji jest to, że musisz mieć dostęp do serwera. Jeśli nie masz dostępu administracyjnego serwera, masz opcję wstawienia .Htaccess Zastosuj w katalogu głównym swojej witryny z następującą zawartością:

RewriteEngine na przykład przepisu %http_referer.com |.*Rewriterule spam [NC] .* - [F] 

Wada powyższego .Metoda HTACCESS polega na tym, że może znacznie zmniejszyć wydajność twojego serwera WWW jako .Htaccess Plik należy odczytać za każdym razem, gdy składa się żądanie HTTP.

Tak czy inaczej Twój serwer powinien teraz odmówić ruchu od referenatora przykład.com lub jeśli adres URL polecający zawiera słowo kluczowe spam. Aby przetestować poprawność lub przebieg filtra spamu polecającego kędzior polecenie podczas udawania źródła polecenia. Twoje żądanie powinno teraz spowodować zakazany dostęp (błąd Apache 403) spowodowany przez .* - [F] Przepis.

Powiązane samouczki Linux:

  • Wprowadzenie do silników magazynowych MySQL
  • Analizator logów Linux Apache
  • Ubuntu 20.04 WordPress z instalacją Apache
  • Rzeczy do zainstalowania na Ubuntu 20.04
  • Jak zarządzać i rozwiązywać problemy z dziennikami Kubernetes
  • Jak skonfigurować Linux Apache MySQL Python Server
  • Hung Linux System? Jak uciec do wiersza poleceń i…
  • GNU/Linux Ogólne Przewodnik po rozwiązywaniu problemów dla początkujących
  • Rzeczy do zrobienia po zainstalowaniu Ubuntu 20.04 Focal Fossa Linux
  • Wykorzystanie polecenia dziennika i przykłady w Linux