DokuWiki

It's better when it's simple

Narzędzia użytkownika

Narzędzia witryny


pl:blacklist

Czarne listy

Internet nie jest już tym samym miejscem, co kiedyś. Wszystko co dobre zostało zepsute i tak też stało się z systemami Wiki. WikiSpam, jak Spam na blogach i w mailach ciągle rośnie. Jeśli używasz DokuWiki w intranecie, to nie jest twój problem. Jednak jeśli masz zamiar wykorzystać ją w otwartym internecie możesz chcieć dodać do listy blokowanych pewne znane słowa Spamu.

Aby korzystać z czarnej listy w DokuWiki włącz opcję $conf['usewordblock'] = 1; w conf/local.php (domyślnie jest ona ustawiona na 1) i zmień plik conf/wordblock.local.conf. Możesz przejrzeć zawartość pliku conf/wordblock.conf by sprawdzić istniejącą listę blokowanych słów. Plik zawiera wyrażenia regularne (zgodne z Perl), jeśli dopasowane zostaje któreś z nich zapis jest zabroniony.

Blokowanie bazujące na IP może być wprowadzone przy użyciu dyrektyw Apache deny from lub wtyczki ipban.

By zrozumieć, dlaczego pewne treści są banowane za spam, możesz skorzystać z wtyczki whyspam by zanalizować tekst.

Źródła czarnych list

Zalecana jest aktualizacja czarnych list ze źródeł publicznych poprzez codzienne zadanie cron. Oto lista źródeł, których możesz użyć w tym celu.

Chongqed

Czarna lista utrzymywana przez ludzi na chongqed.org wydaje się być już niedostępna

$> wget http://blacklist.chongqed.org/ -O conf/wordblock.conf

Wikipedia

Dobrzy ludzie z Wikipedii utrzymują podobną czarną listę. Możesz użyć następującego polecenia by zaktualizować swoją czarną listę z tego źródła:

$> curl http://meta.wikimedia.org/wiki/Spam_blacklist?action=raw |grep -v '<pre>' > conf/wordblock.conf

Logowanie zablokowanych ataków

Ta mała zmiana umożliwi logowanie blokowanych ataków w \DATA\meta\wordblock.log i może również służyć do kontrolowania listy blokad.
Wymaga jednak modyfikacji oryginalnego pliku DokuWiki.

Plik: \inc\common.php

Poszukiwana linia:

    if(preg_match('#('.join('|',$re).')#si',$text, $match=array())) {
      return true;
    }

Zmiana:

    if(preg_match('#('.join('|',$re).')#si',$text, $match=array())) {
 
      preg_match('#('.join('|',$re).')#si',$text, $match);
      io_saveFile($conf['metadir'].'/wordblock.log', date($conf['dformat'])."\t".$match[0]."\t".$ID.$_SERVER['REMOTE_USER']."\t".$_SERVER['REMOTE_ADDR'].":".$_SERVER['SERVER_PORT']."\t".gethostbyaddr($_SERVER['REMOTE_ADDR'])."\t".$_SERVER['HTTP_USER_AGENT']."\n",true);
 
      return true;
    }
pl/blacklist.txt · ostatnio zmienione: 2012-01-13 01:09 przez 78.8.195.48

Wszystkie treści w tym wiki, którym nie przyporządkowano licencji, podlegają licencji: CC Attribution-Share Alike 4.0 International
CC Attribution-Share Alike 4.0 International Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki