Englisch: |
PmWikiDe /
Blockadeliste
Administratoren
Die Blockadeliste ist eine von mehreren Sicherheits-Maßnahmen, die unternommen werden können, um Ihr Wiki vor Spam und anderen unwillkommenen Beiträgen zu schützen. Unglücklicherweise macht die offene Editierbarkeit vieler Wikisysteme sie zu attraktiven Zielen von "Link-Spam" oder "Wiki-Spam", in denen Verweise auf Seiten hinzugefügt werden mit dem Bestreben, Suchmaschinen-Rankings zu verbessern oder die Zugriffszahlen auf andere Seiten zu erhöhen. Viele Linkspammer haben sogar automatisierte Systeme entwickelt, die Sites finden, welche Besuchern Eingaben erlauben und die dann diese Sites mit unerwünschten Links zu überfluten versuchen. Dazu kommt, und damit ist noch schwerer umzugehen, nakter Wiki-Vandalismus, wo unsinnige Veränderungen vorgenommen werden oder sogar ganze Seiten ausgetauscht werden. Die bei weitem beste Gegenmaßnahme gegen Wiki-Spam ist, die Bearbeitbarkeit durch Passwörter einzuschränken (siehe Passwörter und Passwörter verwalten). Erfahrungen haben gezeigt, dass Passwörter effektiv sein können, sogar, wenn das Passwort vielen bekannt ist, und sogar, wenn das Passwort in der Site veröffentlicht wird. Allerdings gibt es viele Fälle, in denen der Einsatz von Passwörtern eine Behinderung darstellen würden, in diesen Fällen wird lieber eine Form von blockierenden Listen eingesetzt. BlockadelistengrundlagenEine Blockadeliste ist eine Liste von IP-Adressen, Wendungen und regulären Ausdrücken, die davon abgehalten werden, in Wikiseiten eingefügt zu werden. PmWiki wird mit einer eingebauten Blocklist-Fähigkeit ausgeliefert; Blocksisten können eingeschaltet werden durch das Einfügen der folgenden Zeile in die local/config.php: $EnableBlocklist = 1;
Das weist PmWiki an, die SiteAdmin.Blocklist-Seite? und die "SiteAdmin.Blocklist-Farm"-Seite zu scannen (und möglicherweise noch andere Seiten — siehe unten), um nach Wendungen und IP-Adressen zu suchen, die vom Veröffentlichen in der Site ausgeschlossen werden sollen. Blockieren über Wörtern oder WendungenDie einfachste Form etwas zu blockieren ist einfach eine Zeile einzufügen, die "block:" enthält, gefolgt von einem Wort oder einer Wendung, das oder die von der Veröffentlichung ausgeschlossen werden soll. Zum Beispiel würde eine Zeile wie block:spam.com
in SiteAdmin.Blocklist jegliche Veröffentlichung, die den String "spam.com" (groß- oder kleingeschrieben) irgendwo im Text enthält, blockieren. Blockieren über IP-AdressenManchmal möchten wir Veröffentlichungen einschränken, die von bestimmten IP-Adressen oder -Adressbereichen kommen, die als Quelle von Wiki-Spam bekannt sind. Wenn eine Blocklist-Seite eine IP-Adresse der Form "a.b.c.d" oder "a.b.c.*" enthält, werden jegliche Veröffentlichungen, die von dieser Adresse oder diesen Adressen kommen, blockiert. Versuche die Maus über den Autorennamen in der "Versionen"-Seite zu halten, um die IP-Adresse eines Autors herauszufinden.
Blockieren über reguläre AusdrückeBlockieren von einfachen Wörtern kann manchmal Schwierigkeiten erzeugen, ein einfaches "block:zial" beispielsweise würde auch das Wort "Spezialist" blockieren. Für diese Fälle ist es oft hilfreich, reguläre Ausdrücke zu benutzen, wie in: block:/\bcial\b/
Das heißt, blockiere "zial" nur, wenn es nicht mitten in einem längeren Wort steht. Der einleitende Schägstrich (/) nach "block:" weist PmWiki an, einen regulägen Ausdruck auszuwerten, anstatt einen einfachen Stringabgleich zu machen. (Blocklist benutzt PCRE oder "Perl Compatible Regular Expressions"; siehe http://php.net/manual/en/ref.pcre.php wegen weiterer Informationen.) Regulärer Ausdruch zum blockieren von 'href'Wenn man ' block:/[^\w\\]href\b/
welches ' Der reguläre Ausdruck kann folgendermaßen interpretiert werden: er passt auf jedes Zeichen, das weder ein Wortzeichen noch ein '\' ist, gefolgt von 'href', das mit einer Wortgrenze endet. Autoren wissen lassen, warum sie blockiert wurdenIn der Standardeinstellung sagt Blocklist den Autoren nur, dass eine bestimme Bearbeitung blockiert wurde, gibt aber keinen konkreten Grund für die Blockade an (z. B. die mißbilligte Wendung). Setzt man das Folgende in eine lokale Anpassungsdatei, wird auch der Grund für die Blockade angegeben: $EnableWhyBlocked = 1;
Mehrere Blockadelisten verwaltenPmWiki gestattet die Berücksichtigung von Blocklist-Einträgen aus mehreren Seiten, indem die $BlocklistPages-Variable gesetzt wird. Im Standard ist $BlocklistPages auf "SiteAdmin.Blocklist" gesetzt, auch auf die automatisch herunterladbaren Blockadelisten wie unten beschrieben. PmWiki nutzt alle Einträge in allen Blockadelisten, um Wiki-Spam zu filtern. Setzt man einen Wert für $BlocklistPages, ändert das den Standard: $BlocklistPages = array('Main.Blocklist', 'PmWikiDe.Blocklist');
Die Reihenfolge der Blockadelisten spielt keine Rolle — schlussendlich werden alle Blockadelisten-Seiten benutzt und die Automatisch bezogene BlockadelistenBlockadelisten zu verwalten ist eine relativ einfache Angelegenheit, kann aber mit der Zeit ziemlich lästig werden. Mehrere Gruppen haben sich gebildet und verwalten "shared block lists", wo eine gemeinsame Blockadeliste für alle erreichbar gemacht wird. PmWikis Blockadelistenfähigkeit hat eingebaute Features, um solche gemeinsamen Listen automatisch herunterzuladen und upzudaten. Wenn man ganz schnell mal Blockadelisten braucht, macht man die folgende Einstellung in local/config.php: $EnableBlocklist = 10;
Das weist PmWiki an, nicht nur Blockadelisten auf der Site einzurichten, sondern sich auch selbst so zu konfigurieren, dass gut bekannte Blockadelisten wie MoinMaster automatisch empfangen und verwaltet werden. Diese lokalen Kopien werden in SiteAdmin.Blocklist-Chongqed und SiteAdmin.Blocklist-MoinMaster gespeichert und einmal pro Tag aufgefrischt (wie vom Wert von $BlocklistDownloadRefresh vorgegeben). Um automatisch die SiteAdmin.Blocklist-Seite? zu erhalten, die auf pmwiki.org benutzt wird, fügt man die folgende Einstellung zu local/config.php hinzu: $BlocklistDownload["$SiteAdminGroup.Blocklist-PmWiki"] = array('format' => 'pmwiki');
Ignorieren bestimmer Einträge in einer Blockadeliste (unblock:)Wenn man eine große Blockadeliste hat oder Blockadelisten, die von externen Sites automatisch aufgefrischt werden, kann es sein, dass manche Einträge unangemessen oder überempfindlich sind und legitimen Inhalt blockieren. In dem Fall kann ein Wiki-Administrator "unblock:" in einer Blockadelistenseite benutzen, um einen Eintrag zu ignorieren. Um "spam.com" zu erlauben, auch wenn eine andere Blockadeliste einen Blockadeeintrag dafür enthält, setze beispielsweise: unblock:spam.com
Damit das funktioniert, muss das Wort oder die Wendung exakt die gleich sein wie in dem Original. Rechte für BlockadelistenseitenGenerell möchte ein Administrator die SiteAdmin.Blocklist-Seite und alle anderen Blocklist-Seiten gegen Bearbeiten schützen, um unliebsame Änderungen an den Blockadelisten zu verhindern (siehe Passwörter). Da die meisten Seiten in der SiteAdmin-Gruppe standardmäßig gegen Bearbeiten geschützt sind, ist das kein Problem. Administratoren möchten die Blockadelistenseiten vielleicht auch gegen Lesen schützen, damit der präzise Wortlaut der Wendungen und Worte bzw. die IP-Adressen nicht öffentlich bekannt werden. (Es liegt in der Natur der Blockadelisten, dass sie Ausdrücke oder Wendungen enthalten, die unangemessen oder offensive gegen Manchen sind.) Alle automatisch bezogenen Seiten (s. o.) werden gegen Lesen geschützt außer vorm Administrator. Detailierte Konfiguration automatisch heruntergeladener BlockadelistenAutomatisches herunterladen von Blockadelisteninformationen wird von dem $BlocklistDownload-Array kontrolliert. Ein Eintrag für MoinMaster könnte darin so aussehen: $BlocklistDownload[" $SiteAdminGroup .Blocklist-MoinMaster"] = array(
'format' => 'regex',
'refresh' => 86400);
Das heißt, die Blockadelistendaten werden von dem gegebenen Url in die SiteAdmin.Blocklist-MoinMaster-seite geladen, die Einträge sind reguläre Ausdrücke, und die Information wird alle 86.400 Sekunden (ein Tag) aufgefrischt. Wenn 'refresh' weggelassen wird, wird die Seite in dem Zeitintervall aufgefrischt, das durch $BlocklistDownloadRefresh gegeben ist. Wenn 'format' weggelassen wird, wird angenommen, dass die Seite PmWiki-formatierte Einträge (wie oben beschrieben) enthält. Wenn 'url' weggelassen wird, wird die Information von einem Standardort auf der pmwiki.org-Site besorgt. Um ein Auffrischen einer automatisch bezogenen Blockadeliste zu erzwingen, löscht man sie einfach — eine neue Version wird beim nächsten Blockadelistenscan installiert. Blockadelistenseiten werden bei jedem ?action=edit-Request auf Download geprüft. Wenn man die Blockadelistenseiten in der config.php angibt, muss man auch die automatisch aufgefrischten Seiten aufführen, sonst werden sie nicht aufgefrischt oder erzeugt, selbst wenn man Farmweite BlockadelistenEine Blockadeliste kann farmweit angewendet werden (siehe SharedPages). Nachdem die Seiten angelegt wurden, können sie in das Verzeichnis der Farm, shared.d, verschoben werden. BlockadelistenvariablenDie folgenden Variablen helfen, die Konfiguration von und Operationen auf Blockadelisten zu kontrollieren.
# Download the MoinMaster blocklist every twelve hours $BlocklistDownload["$SiteAdminGroup.Blocklist-MoinMaster"] = array( 'url' => 'http://moinmaster.wikiwikiweb.de/BadContent?action=raw', 'format' => 'regex', 'refresh' => 43200); # Download a shared blocklist from pmwiki.org every day $BlocklistDownload["$SiteAdminGroup.Blocklist-Shared"] = array( 'format' => 'pmwiki');
Übersetzung von PmWiki.Blocklist
Originalseite auf PmWikiDe.Blocklist - Rückverweise |