GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So blockieren Sie den Zugriff auf wp-admin und wp-login in Nginx/Apache

Trotz des guten Rufs des WordPress Content Management Systems Es übertrifft alle Erwartungen in Bezug auf eine fehlerfreie Inhaltsveröffentlichung und eine nahtlose Benutzerzugriffskontrolle, aber es gibt immer noch einige besorgniserregende Sicherheitsverletzungen, die priorisiert behandelt werden müssen.

Zwei wichtige Zugangspunkte auf einer WordPress-Website sollten unbedingt geschützt werden. Die erste ist die wp-login.php Seite, die für die Unterbringung von normalen und privilegierten Benutzern verantwortlich ist.

[Das könnte Ihnen auch gefallen:So setzen Sie das WordPress-Admin-Passwort über MySQL zurück]

Der zweite ist der wp-admin/ Seite, die für die Unterbringung der Admin-Benutzer der Website verantwortlich ist. Der Schutz dieser beiden Seiten der WordPress-Site verhindert Brute-Force-Angriffe.

Zugriff auf wp-admin und wp-login in Apache blockieren

Konfigurieren des Apache-Webservers Umgebung, um mit Ihrem WordPress zu kommunizieren Die Site benötigt zunächst Zugriff auf die Hauptkonfigurationsdatei des Hosts.

Öffnen Sie Ihre WordPress-vhost-Apache-Konfigurationsdatei.

Auf meiner Seite ist dies die benutzerdefinierte Konfigurationsdatei, die mit meiner WordPress-Site verknüpft ist. Wir werden den <location></location> verwenden Tags in dieser Datei, um den Zugriff auf wp-admin zu blockieren und wp-login.php WordPress-Seiten.

<location /wp-admin>
deny from all
</location>
<location /wp-login.php>
deny from all
</location>

Starten Sie nun den Apache-Server neu.

$ sudo systemctl restart apache2   [On Ubuntu, Debian & Mint]
$ sudo systemctl restart httpd     [On RHEL/CentOS/Fedora & Rocky Linux/AlmaLinux]

Ein Neuladen der Seite nach dem Neustart von Apache führte zu folgender Anzeige.

Zugriff auf WordPress Admin über IP-Adresse zulassen

Wenn Sie sich nur Zugriff auf diese beiden Seiten gewähren möchten, können Sie die IP-Adresse, die Sie verwenden werden, über die Allow-From-Klausel angeben, wie im folgenden Screenshot gezeigt.

<location /wp-admin>
allow from 127.0.0.1
allow from 192.168.2.9
allow from 10.32.15.7
deny from all
</location>
<location /wp-login.php>
allow from 127.0.0.1
allow from 192.168.2.9
allow from 10.32.15.7
deny from all
</location>

Zugriff auf WordPress Admin nach IP-Adresse verweigern

<location /wp-admin>
deny from 192.168.2.9
deny from 10.32.15.7
allow from all
</location>
<location /wp-login.php>
deny from 192.168.2.9
deny from 10.32.15.7
allow from all
</location>

Stellen Sie sicher, dass Sie den Apache-Server neu starten, nachdem Sie Änderungen an der Konfiguration vorgenommen haben.

Zugriff auf wp-admin und wp-login in Nginx blockieren

Mit Nginx , der Ansatz zum Blockieren des Benutzerzugriffs auf wp-admin und wp-login.php WordPress-Seiten ähneln fast der Technik von Apache. Greifen Sie zunächst auf die zugehörige Nginx-Konfigurationsdatei für Ihre WordPress-Site zu.

Der location Tags, die mit Nginx verwendet werden sollen, haben eine etwas andere Syntax, wie unten dargestellt:

location {
	}

So blockieren Sie den gesamten Zugriff auf die beiden WordPress-Seiten:

location /wp-admin {
deny all;
}
location = /wp-login.php {
deny all;
}

Nachdem Sie Änderungen vorgenommen haben, starten Sie den Nginx-Server neu.

$ sudo systemctl restart nginx

Das Neuladen der Seite nach dem Neustart von Nginx führte zu folgendem Anzeigefehler.

Einschränken des Zugriffs auf WordPress Admin nach IP-Adresse

location /wp-admin {
allow 192.168.2.9;
allow 10.32.15.7;
deny all;
}
location = /wp-login.php {
allow 192.168.2.9;
allow 10.32.15.7;
deny all;
}

Blockieren des Zugriffs auf WordPress Admin nach IP-Adresse

location /wp-admin {
deny 192.168.2.9;
deny 10.32.15.7;
allow all;
}
location = /wp-login.php {
deny 192.168.2.9;
deny 10.32.15.7;
allow all;
}

Stellen Sie sicher, dass Sie den Nginx-Server neu starten, nachdem Sie Änderungen an der Konfiguration vorgenommen haben.

[Das könnte Ihnen auch gefallen:So blockieren Sie XML-RPC in WordPress mit Nginx/Apache ]

Wenn Sie als WordPress-Administrator entscheiden können, wer Zugriff auf welchen Bereich Ihrer WordPress-Site hat, wird der Ruf der Site vor riskanten Benutzern oder Zugriffen geschützt, die ihre Integrität und ihren Ruf für immer gefährden können.


Linux
  1. Blockieren des Zugriffs über eine .htaccess-Datei

  2. Was ist NGINX? Wie funktioniert es?

  3. So erstellen Sie einen virtuellen Nginx-Host (Serverblock)

  4. Wie blockiere ich IP-Adressen und schütze Dateien und Ordner mit Apache und .htaccess in Ubuntu?

  5. Wie kann der Zugriff auf eine Datei blockiert werden, die von Tomcat bereitgestellt wird?

So deaktivieren Sie das Durchsuchen von Verzeichnissen auf Apache und Nginx

So beschränken Sie den Zugriff auf Verzeichnisse und Unterverzeichnisse auf Nginx

So aktivieren Sie TLS 1.3 auf Apache und Nginx

So installieren Sie WordPress auf CentOS 7.1 mit Apache

So fügen Sie PHP-FPM-Unterstützung auf Apache und Nginx-Webserver auf Ubuntu 18.04 hinzu

So sichern und wiederherstellen Sie eine WordPress-Website