<html>
  <head>
    <meta content="text/html; charset=windows-1252"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    Lieber Jogi, liebes mur.at-team,<br>
    großes Danke für eure Mühe und toll, dass ihr die Ursache des
    Mysql-Supergaus gefunden habt !!!!<br>
    <br>
    Villeicht können wir/ihr uns für die Zukunft noch was überlegen, wie
    wir solche Zwischenfälle im Ausmaß eingrenzen können. - Denn dieses
    punktuelle Wordpress-Problem, eines zu schwachen Schutzes bei einem
    Blog, hat alle datenbankbasierten Webpräsenzen von mur.at mit in den
    Abgrund gerissen. -<br>
    <br>
    Ohne mich da jetzt großartig auszukennen und was das an
    Wartungsaufwand für mur.at bedeutet, würde ich eine Art Teilung der
    Datenbankstruktur vorschlagen. Mit einem Bereich Wordpress, Drupal
    und was sonst noch and Instanzenarten gibt.  - Denn mir ist klar,
    dass jemand der ab und zu einen Blogeintrag auf seiner Seite
    verfasst, ein anderes Bewusstsein für Sicherheitsprobleme hat. Und
    zusätzlichen Aufwand zur Optimierung seiner Seite eher scheut, als
    Seiten mit den täglich grössere UserInnen-Gruppen (hauptberuflich)
    arbeiten und auf die Verfügbarkeit der Instanzen angewiesen sind.<br>
    <br>
    Wie gesagt dies nur als Anregung und Reflexionsbeitrag.<br>
    Und danke nochmal.<br>
    <br>
    vg, fränk<br>
    <br>
    <br>
    <br>
    <div class="moz-cite-prefix">Am 15.04.2015 um 11:13 schrieb Jogi
      Hofmüller - NOC:<br>
    </div>
    <blockquote cite="mid:552E2BB0.2070505@mur.at" type="cite">
      <pre wrap="">Liebe_r Benutzer_in,

Mehr als eine Woche hat es uns gekostet, das Problem der dauernden
Ausfälle des MySql-Servers 1) zu erkennen und 2) eine Lösung zu finden.
 Wir können jetzt aber berichten, dass wir die Situation vorerst im
Griff haben.

Ursache
=======

Verursacht wurden die häufigen Ausfälle durch brute force Angriffe auf
die Wordpress-Instanzen die bei uns laufen.  Dabei haben irgendwelche
Bösen auf diesem Planeten versucht Zugang zu Euren Wordpress-Seiten zu
bekommen.  Die vorläufige Auswertung zeigte mehr als 1000 Login-Versuche
innerhalb einer Minute, und das führt zu Verbindungsproblemen zwischen
dem Webserver und dem Datenbankserver.

Gegenmaßnahme
=============

Wie gestern schon auf der Wordpress-Liste berichtet haben wir nun auf
den betroffenen Servern fail2ban [1] installiert.  Damit beschränken wir
den POST-Aufruf der Seite wp-login.php (also einen Loginversuch) auf 5
pro Minute.  Wenn von einer IP-Adresse 5 oder mehr Aufrufe kommen, wird
diese IP-Adresse für 24 Stunden blockiert.  Seit wir diese Gegenmaßnahme
in Betrieb haben (also seit gestern Mittag) hat es keine Ausfälle der
Datenbankverbindung mehr gegeben.

In manchen Fällen (wenn z.B. mehrere Menschen, die alle hinter derselben
Firewall sitzen gleichzeitig am selben Blog arbeiten) kann das zwar dazu
führen, das auch legitime Login-Versuche zu einer Blockierung einer
IP-Adresse führen, jedoch halten wir dieses Risiko für vertretbar.

Nebeneffekte
============

Im Zuge der Fehlersuche fanden wir einige Blogs, deren Moderator_innen
sich nicht (mehr) um die Bearbeitung der eintreffenden Kommentare
kümmerten.  Die Kommentare landen aber alle in der Datenbank und
verbrauchen unnötigerweise Speicherplatz.  Der Rekordwert an
unbearbeiteten Kommentaren lag bei 392.000
(Dreihundertzweiundneunzigtausend).

Wir empfehlen den Betreiber_innen von Blogs, die Kommentarfunktion nur
wenn wirklich nötig zu aktivieren.  Zusätzlich ist es sinnvoll, eines
der vielen Captcha-Plugins zu verwenden.  Die sind zwar kein 100%iger
Schutz vor automatisiertem Spam, aber einiges wird doch abgefangen.

Für ein kollegiales Miteinander auf unseren Servern ist es außerdem
wünschenswert, wenn Moderationsaufforderungen auch bearbeitet werden.

[1]  <a class="moz-txt-link-freetext" href="http://www.fail2ban.org/wiki/index.php/Main_Page">http://www.fail2ban.org/wiki/index.php/Main_Page</a>

Besten Gruß + schönen Frühlingstag vom NOC,
</pre>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
Drupal mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Drupal@mur.at">Drupal@mur.at</a>
<a class="moz-txt-link-freetext" href="http://lists.mur.at/mailman/listinfo/drupal">http://lists.mur.at/mailman/listinfo/drupal</a>
</pre>
    </blockquote>
    <br>
  </body>
</html>