Missglückte Anmeldeversuche von IP 72.233.119.245

Zu meiner großen Überraschung bekam ich heut Abend eine E-Mail mit folgendem Inhalt:

3 ungültige Anmeldeversuche (1 Sperrung(en)) von IP: 72.233.119.245
Letzter Anmeldeversuch erfolgte mit dem Benutzernamen: username

Ich benutze für meine WordPress-Installationen grundsätzlich das Plugin Limit Login Attempts, dass nach drei missglückten Anmeldeversuchen die IP des sich Einloggenden für eine bestimmte Zeit sperrt. Daher hätte ich mich erst einmal nicht groß wundern müssen, denn solche Versuche sich mit Standard-Nutzernamen-Passwort-Kombinationen einzuloggen und das Blog zu kapern sind nicht unbedingt selten.

Nein, was mich zum wundern brachte war der Umstand dass ich nach der großen Angriffswelle gegen WordPress-Installation im Frühjahr dieses Jahres einen zusätzlichen .htaccess-Schutz für mein Backend eingerichtet hatte. Daher stellte ich mir leicht nervös die Frage: Hatte jemand meine Login-Daten abgegriffen und machte sich nun daran, auch die WordPress-Loginmaske zu knacken?
Nach einer kurzen Suche dann aber die erlösende Antwort: Nein, falscher Alarm. Der Loginversuch von der IP 72.233.119.245 stammt im etwas weiteren Sinne von WordPress selbst. Dahinter steckt nämlich ein Crawler von Automattic, also der Firma die hinter WordPress steckt.

Nichtsdestotrotz kam mir das Spanisch vor: Wieso sollte sich ein Crawler mit dem Benutzernamen username bei mir einloggen wollen? Etwas aufschlussreicher war dann ein Thread in einem der WordPress-Supportforen. Dort meldeten sich auf die Frage eines Users, was es mit diesem Crawler auf sich hat, Automattic- bzw. WordPress-Entwickler zu Wort und erklärten, dass dies wohl die Server des Jetpack-Plugins sind, die mit meiner Seite kommunizieren:

When you combine how most XML-RPC endpoints work with how WordPress handles authentication, though, it turns out that, even though Jetpack uses it’s own OAuth-based authentication, we still have to send a username and password with the request. The Jetpack plugin tells WordPress to completely ignore that username and password, but we still have to send it to get things in WordPress working correctly.

Michael Adams (mdawaffe)

Kein Grund zur Beunruhigung also: Mein .htaccess-Schutz ist nicht ausgehebelt worden.

Automatisches WordPress-Upgrade bei lokalen Installationen nutzen

Möchte man bei lokalen WordPress-Installationen beim Upgrade die Abfrage der FTP-Zugangsdaten umgehen, genügt es folgende Zeile in die wp-config.php einzufügen:

define( 'FS_METHOD', 'direct' );

Hintergrund

Beim Upgrade überprüft WordPress, ob es Dateien schreiben/ verändern kann, ohne den Owner zu verändern. Falls dies nicht möglich ist, fragt WordPress nach den FTP-Daten, um die Dateien als Nutzer zu verändern. WordPress führt also indirekt Änderungen durch. Wenn es gezwungen wird, die direkte Methode zu verwenden, darf WordPress die Dateien selbst ändern/ überschreiben.

Gut zu wissen

Natürlich funktioniert die direkte Methode nicht nur lokal, sondern auch auf Live-Webservern und kann bei Upgrade-Problemen aktiviert werden.

Links

Editing wp-config.php: WordPress Upgrade Constants
Tutorial: Using the WP_Filesystem

Compass und das WordPress-eigene style.css

In WordPress-Themes muss innerhalb des Theme-Root-Verzeichnis‘ ein Stylesheet namens style.css liegen, ansonsten wird das entsprechende Theme nicht erkannt. Dies ist innerhalb meines normalen Compass-Setups nicht ganz unproblematisch, da ich normalerweise alle Stylesheets im Ordner css/ lagere, also auch das normale style.css. Meine bisherige Lösung sah so aus, dass ich im Theme-Root ein Stylesheet hatte dass das von Compass kompilierte Css importiert. Wirklich schön war das allerdings nicht, da so für die Einbindung zwei Requests von Nöten waren.

Umso erfreuter war ich, als ich bei Chris Coyier ein äußerst hilfreiches Snippet fand.

require 'fileutils'
on_stylesheet_saved do |file|
  if File.exists?(file) && File.basename(file) == "style.css"
    puts "Moving: #{file}"
    FileUtils.mv(file, File.dirname(file) + "/../" + File.basename(file))
  end
end

Das Snippet sucht nach dem Kompilieren die Datei style.css und schiebt sie innerhalb der Verzeichnisstruktur eine Ebene höher, in meinem Fall also ins Root-Verzeichnis des Themes.

Links

Compass Compiling and WordPress Themes