WordPress: xmlrpc.php mittels BrowserMatch absichern

.htaccess-Datei im WordPress-Root-Verzeichnis um folgende Zeilen ergänzen:

<IfModule mod_setenvif.c>
  <Files xmlrpc.php>
    BrowserMatch "WordPress" allowed
    BrowserMatch "wp-iphone" allowed
    BrowserMatch "Jetpack by WordPress.com" allowed
    Order Deny,Allow
    Deny from All
    Allow from env=allowed
  </Files>
</IfModule>

Anderslautende User-Agents werden vom Server abgewiesen.

WordPress: Verzeichnis wp-admin mit Jetpack-Whitelist absichern

.htaccess-Datei mit folgendem Inhalt generieren und unter /wp-admin/ speichern:

order deny,allow
deny from all
allow from 122.248.245.244/32
allow from 54.217.201.243/32
allow from 54.232.116.4/32
allow from 192.0.80.0/20
allow from 192.0.96.0/20
allow from 192.0.112.0/20
allow from 195.234.108.0/22
allow from 192.0.96.202/32
allow from 192.0.98.138/32
allow from 192.0.102.71/32
allow from 192.0.102.95/32
### EIGENE IP ###
allow from 127.0.0.1
### EIGENE IP ###

127.0.0.1 ist durch die eigene, externe IP-Adresse zu ersetzen.

Über die oben dargestellten IPv4-Ranges ist sichergestellt, dass Jetpack auf das Verzeichnis zugreifen kann. Dies ist erforderlich, wenn die Website in einem WordPress.com-Konto registriert ist und das Posten neuer Beiträge über die WordPress-App auf einem mobilen Endgerät erfolgen soll.

Die Liste wird regelmäßig aktualisiert und kann hier abgerufen werden.

Domain-Root auf HTTPS umleiten

Folgender Code gilt nur für den direkten Aufruf von domain.tld und nicht für domain.tld/index.php oder Unterordner:

RewriteCond %{HTTPS} off
RewriteCond %{REQUEST_URI} ^/$
Rewriterule ^(.*)$ https://domain.tld/ [L,R=302]

302 = Temporärer Redirect, um Browser-Caching zu vermeiden

MD5-Hashwert aus Passwort erzeugen

Message-Digest Algorithm 5

Datei md5hash.php mit folgendem Inhalt erzeugen:

<?php
$password = 'MyPassword';
$salt = mt_rand( 10000, 99999 );
$encrypted = 'salt:' . $salt . ' md5:' . md5( $salt . $password );
echo $encrypted;
?>

Verzeichnis-Spiegelung/-Synchronisation mit Robocopy inkl. Logfile

Datei SYNC.cmd mit folgendem Inhalt anlegen und anpassen:

echo on
robocopy "C:\Origin" "Y:\Destination" /mir /r:3 /Unilog:"C:\Users\xyz\Desktop\Backup.log" /v /FP
cmd

/mir
= Spiegelung unter Berücksichtigung geänderter und gelöschter Dateien/Ordner

/r:3
= Anzahl der Wiederholungsversuche bei Zugriffsproblemen

/Unilog
= Ausgabe des Logfiles im Unicode-Format für die korrekte Darstellung von bspw. Umlauten

/v /FP
= Ausführliche Ausgabe inkl. Pfade und Dateinamen

Es handelt sich um eine reine Verzeichnis-Spiegelung/-Synchronisation und nicht um ein inkrementelles bzw. differentielles Backup. Für Letzteres sind andere Parameter erforderlich.