In der letzten Zeit durfte ich mehrmals ungepflegte WordPress Websites auf den neuesten Stand bringen. Der Fall sieht oft so aus, dass dem Kunden von einer Agentur, einem Freelancer, einem Mitglied der Familie oder des Freundeskreises eine Website eingerichtet wurde, ein irgendwie ausgestalteter Wartungsvertrag aber nicht besteht. In so einer Situation werden Updates nicht mehr eingespielt, Verträge für kostenpflichtige Plugins werden nicht verlängert und die Website unterliegt nach kurzer Zeit der Theorie der zerbrochenen Scheiben. Die gilt zwar eigentlich nur für Stadtviertel, passt aber meiner Meinung nach auch gut für Websites. Als „Helfer in der Not“ erhalte ich dann oft handbeschriebene Zettel mit Passworten, Account-, Datenbank- , User- und Hostnamen, gern auch durchgestrichen und verbessert. Die moderne Variante sind in einer Textdatei (gern auch Microsoft Word oder ein Tool das vor 4 Jahren aktuell war) zusammenkopierte E-Mail Fragmente. Manchmal sind die Daten, genau wie Website, nicht mehr aktuell und ein Zugang zur Website ist schwierig.
Ich beschreibe hier den häufig von mir beschrittenen Weg um Admin Zugriff auf eine WordPress Site zu erhalten.
So prinzipiell gibt es zwei Grundzustände:
- Die Beziehung zwischen Kunde und Lieferant ist intakt
Das ist der einfachste Fall. Vielleicht sind Jahre nach der Erstellung der Site vergangen. Der Lieferant ist aber ansprechbar, freundlich und hat noch Zugriff auf die Site. Man kann nachfragen und erhält meistens eine Antwort (und den Zugang). - Die Beziehung zwischen Kunde und Lieferant ist durchwachsen oder beendet.
Auch in diesem Fall kann freundlich gefragt werden, oft erhält man aber keine Antwort oder eine horrende Honorarforderung. Beides ist nicht wirklich hilfreich.
Admin Passwort verändern
Wenn man in WordPress beispielsweise Updates einspielen will, benötigt man ein Benutzerkonto mit Administratorrechten. Wenn man beides nicht hat, lohnt es sich nach dem FTP Zugang zu fragen. Diese naive Frage ist recht erfolgreich, da FTP-Zugänge meist sehr grosszügig verteilt werden.
Dateien lokal sichern
Ist man im Besitz der FTP-Zugangsdaten, bietet es sich an, die Dateien der Site zunächst zu sichern. Das kann man auf unterschiedliche Art und Weise machen, die mit Abstand sicherste und überschaubare Massnahme ist das Kopieren aller Dateien in einen lokalen Ordner. Das können auch bei einer kleineren Website durchaus mal 10.000 Dateien in 3 GigaByte Grösse sein.
Hinweis: Plugins, die deine WordPress Website ganz einfach exportieren und importieren nutzen dir nichts, wenn sie nicht installiert sind und/oder du keinen Zugriff darauf hast.
Datenbank exportieren
Mit den FTP Daten hast du natürlich keine Berechtigung zum Zugriff auf die Datenbank, aber …
In der Datei wp-config.php stehen die notwendigen Zugangsdaten und mit dem Adminer Projekt lässt sich ein sehr einfacher Zugriff auf die Datenbank erreichen (siehe auch Datenbankverwaltung in einer Datei – Adminer).
Lokale Umgebung oder Shared Hosting
Wenn du alle Dateien und die exportierten Datenbank Daten hast, kannst du die WordPress Site entweder
- auf deinem lokalen PC mit Umgebungen wie XAMPP oder MAMP
- oder auf einem zweiten Webhosting Account installieren.
In beiden Fällen musst die die Dateien in das Document Root Verzeichnis (meistens public_html oder htdocs) kopieren und die Datenbankdaten über phpMyAdmin oder Adminer importieren.
Anschliessend muss du in der existierenden wp-config.php Datei die Datenbankdaten, die jetzt vermutlich anders sind, anpassen. Bei XAMPP heisst der Datenbank-User root und hat kein Passwort, bei MAMP heisst er ebenfalls root und das Passwort ist auch root. Wenn du ein Webhosting benutzt, kennst du die Daten, weil du die Datenbank angelegt hast.
/** The name of the database for WordPress */
define('DB_NAME', '__________');
/** MySQL database username */
define('DB_USER', '__________');
/** MySQL database password */
define('DB_PASSWORD', '_________');
/** MySQL hostname */
define('DB_HOST', '________');
Parameter anpassen
Damit alle Seiten der WordPress Site unter der richtigen URL erreichbar sind, musst du in der Tabelle wp_options die Parameter siteurl und home anpassen.
Hinweis: Es kann sein, dass die Tabelle nicht mit wp_ anfängt, sondern mit einer anderen Buchstabenkombination. Wichtig ist das _options im Namen. Der Anfang des Namens kann bei der Installation von WordPress individuell vergeben werden.
Nun müsste die Kopie deiner WordPress Site in der neuen Umgebung im Browser aufruf- und bedienbar sein.
Passwort ändern
Du kannst in der Datenbank entweder ein neues Benutzerkonto mit Administrationsrechten per SQL Befehl anlegen oder das Passwort eines vorhandenen Benutzers ändern. Die zweite Variante ist meistens einfacher, da normalerweise mindestens ein Administrator-Konto mit der ID 1 vorhanden ist.
Suche dazu in der wp_user Tabelle nach einem geeigneten Kandidaten und ändere das Passwort (und die E-Mail Adresse). Achte darauf, beim user_pass Feld die Funktion MD5 auszuwählen, damit das im Klartext eingegebene Passwort beim anschliessenden Speichern „gehasht“ wird. Klicke zum speichern auf den Ok Button.
Das neue Passwort wird gespeichert …
… und du kannst dich über http://deindomainname.tld/wp-login.php mit diesen neuem Passwort einloggen.
Herzlichen Glückwunsch.
Fazit
Wer die FTP Zugangsdaten kennt, hat selbstverständlich den vollen Zugriff auf eine WordPress Website und deren Datenbank. Alles kann verändert werden, selbst die Passworte! Das ist manchmal ein Sicherheitsproblem, manchmal aber auch ganz praktisch, wie in diesem Fall.
FTP Zugangsdaten werden immer noch gern im geschäftlichen E-Mail Verkehr oder über Messenger Konten verschickt, wenn danach gefragt wird. Den Versendern ist oft nicht klar ist, wie sensibel diese Daten sind.
tl;dr: Passwörter lassen sich ganz einfach verändern
Schreibe einen Kommentar