KakapoWPKakapoWP
LoginKostenlos testen
Hilfe-Center/Security/Anmelde-Adresse verlegen: einrichten, prüfen, zurückstellen

Anmelde-Adresse verlegen: einrichten, prüfen, zurückstellen

Gilt für: Kakapo Security·4 Min. Lesezeit

Was vorher stimmen muss

Ab Werk ist die Funktion aus, und sie schaltet sich nie von allein ein. Drei Dinge verhindern das Verlegen ganz — der Schalter bleibt dann gesperrt und nennt den Grund: (1) In der wp-config.php steht die Notbremse define( 'KWPSEC_LOGIN_SLUG_OFF', true );. (2) Die Installation ist ein Multisite-Netzwerk; dort teilen sich alle Seiten eine Anmeldung, das Verlegen müsste netzwerkweit geschehen. (3) Die Permalinks stehen auf „Einfach". Dann erreicht ein Pfad wie /gartentor gar kein PHP, der Webserver antwortet vorher mit 404. Stell unter Einstellungen › Permalinks auf eine andere Struktur um, bevor du weitermachst.

Einen Pfad wählen

Erlaubt sind 3 bis 40 Zeichen: Kleinbuchstaben, Ziffern, Bindestrich und Unterstrich. Keine Schrägstriche, keine Umlaute, kein Punkt; Großbuchstaben werden kleingeschrieben. Vier Prüfungen laufen beim Speichern: Namen von den üblichen Bot-Listen (login, wp-login, admin, wp-admin, anmelden, dashboard und ähnliche) werden abgelehnt, weil sie in Minuten wieder gefunden wären. Existiert in der WordPress-Installation bereits eine Datei oder ein Verzeichnis dieses Namens, wird abgelehnt — der Webserver würde die ausliefern, bevor PHP gefragt wird. Reservierte Routen wie wp-json, feed, author, category, sitemap oder favicon sind gesperrt. Und liegt unter dem Pfad schon ein Beitrag oder eine Seite, wird abgelehnt, weil die danach nicht mehr erreichbar wäre. Ein gespeicherter Pfad gilt noch nicht — er wird erst wirksam, wenn du das Verlegen zusätzlich einschaltest.

Einschalten: was dabei automatisch passiert

Beim Umlegen des Schalters wird die Einstellung gespeichert und der Server ruft danach zwei echte HTTP-Anfragen gegen die eigene Installation ab: einmal die neue, einmal die alte Adresse. Jeder Abruf hat 8 Sekunden Zeitlimit, folgt keinen Weiterleitungen und schickt keine Cookies mit. Als Nachweis, dass wirklich die Anmeldeseite geantwortet hat, wird im Rückgabetext nach id="loginform" und name="log" gesucht. Antwortet die neue Adresse mit HTTP 404 und ohne Anmeldeformular, wird die Änderung sofort zurückgenommen und der alte Zustand wiederhergestellt — bei nginx fehlt in dem Fall meist die try_files-Zeile, bei Apache die .htaccess. Läuft die Prüfung durch, schickt das Plugin die neue Adresse als Nur-Text-Mail an die hinterlegte Benachrichtigungsadresse (ersatzweise an die Admin-E-Mail); in der Mail steht auch die Notbremsen-Zeile für die wp-config.php. Die Rückmeldung sagt ungeschönt, ob wp_mail() die Nachricht angenommen hat — wenn nicht, notier dir die Adresse jetzt. Ein Eintrag im Aktivitäts-Protokoll wird ebenfalls geschrieben.

Was sich im Betrieb ändert

Unter dem neuen Pfad wird die Original-Datei wp-login.php eingebunden, nicht nachgebaut — Sicherheits-Updates von WordPress wirken dort sofort. /wp-login.php verhält sich für Abgemeldete wie jede Adresse, die es nicht gibt: Die Anfrage wird auf einen unbelegten Pfad umgeschrieben und ganz normal vom Theme als 404 gerendert, ohne eigene Fehlermeldung — eine eigene Meldung wäre der Hinweis, dass hier etwas verborgen ist. Wer angemeldet ist, kommt weiterhin durch; das ist Absicht. Ruft ein Abgemeldeter /wp-admin/ auf, geht es per 302 zur Startseite statt zur Anmeldung, sonst stünde die neue Adresse in der Location-Kopfzeile. admin-ajax.php, admin-post.php, load-styles.php und load-scripts.php bleiben erreichbar, damit Kontaktformulare, Warenkörbe und Bewertungen weiterlaufen. Alle Adressen, die WordPress über site_url(), network_site_url() oder wp_redirect() erzeugt — wp_login_url(), wp_logout_url(), wp_lostpassword_url(), das action-Attribut des Formulars —, zeigen automatisch auf den neuen Pfad.

Wenn du dich aussperrst oder etwas klemmt

Erster Weg: Solange in deinem Browser ein gültiges Anmeldecookie liegt, erreichst du /wp-login.php und /wp-admin/ unverändert. Zweiter Weg: Die Adresse steht in der E-Mail vom Umstellen. Dritter Weg: Trag define( 'KWPSEC_LOGIN_SLUG_OFF', true ); in die wp-config.php ein — damit gilt sofort wieder wp-login.php, und der Schalter bleibt gesperrt, bis du die Zeile entfernst. Im Adminbereich gibt es außerdem zwei Knöpfe: einen, der den Prüfabruf wiederholt und HTTP-Code, Antwortzeit und den Status der alten Adresse ausgibt, und einen, der die Zugangs-Mail erneut verschickt. Meldet der Prüfabruf einen Netzwerkfehler statt eines HTTP-Codes, ist meist der Loopback beim Hoster gesperrt — das heißt nicht, dass die Adresse nicht funktioniert; ruf sie einmal selbst auf. Bleibt ein Link eines anderen Plugins auf wp-login.php stehen, ist er dort fest verdrahtet und läuft nicht über site_url(); umgeschrieben werden kann nur, was durch diese Filter geht. Zurückstellen geht jederzeit über denselben Schalter.

War dieser Artikel hilfreich?