Sicherheit und .htaccess


8

Vor ungefähr einem Monat habe ich ein WordPress-Blog auf einem gehosteten Server gestartet, der sich auf ein Hobby bezieht. Daher bin ich derzeit neu in diesem Bereich.

Da ich mir Sorgen um die Sicherheit mache, habe ich das Plugin WP Security Scan installiert. Gemäß den Plugin-Ergebnissen wird meine Site ausgecheckt, außer dass ich dies in den Ergebnissen als rote Fahne erhalte:

Die Datei .htaccess existiert nicht in wp-admin / (ich habe dort ssh'd und es existiert nicht)

Ok, also habe ich eine beträchtliche Suche zu diesem Thema durchgeführt und zu viele Informationen zu .htaccess gefunden. Ich habe WordPress auf der WordPress.org-Website usw. gehärtet und bin auch auf diesen Artikel gestoßen : http://digwp.com/2010/07/wordpress-security-lockdown/

Wie auch immer, ich bin im Grunde genommen verwirrt mit der Fülle der verfügbaren Informationen.

Was sollte die .htaccess-Datei in wp-admin enthalten? Ich habe gelesen, dass diese .htaccess-Datei das Verzeichnis wp-admin mit einem Kennwort schützen soll, und ich habe auch gelesen, dass dies zu Funktionsproblemen führen kann.

Hilfe dabei wird sehr geschätzt.

Vielen Dank. -wdypdx22

Update OK, daher bin ich nicht in meinem Blog angemeldet und verwende einen anderen Computer als gewöhnlich. Ich gebe die URL www.mysite.com/wordpress/wp-admin/ ein und es gibt eine Weiterleitung zum Anmelden. Wenn das passiert, wird dann überhaupt eine htaccess-Datei im Verzeichnis wp-admin benötigt?


Haben Sie versucht, den Entwickler von WP Security Scan zu fragen?
Doug

@Doug - Ja, der Entwickler hat ein Forum mit mindestens 2 anderen Personen, die genau dieselbe Frage stellen und keine Antwort erhalten. Außerdem habe ich auf wordpress.org gepostet und dort auch keine Antwort erhalten. Vielleicht spielt das gar keine Rolle?
wdypdx22

Antworten:


8

UPDATE : Als ich meine Antwort zum ersten Mal veröffentlichte, habe ich den Kern der Frage verpasst. Meine Antwort betraf die.htaccessSicherheit im Allgemeinen und ist jetzt unter der doppelten Zeile aufgeführt (schauen Sie nach unten, wenn es Sie interessiert). Leider habe ich keine besonderen Erfahrungen mit der Sicherung der/wp-admin/Verwendung,.htaccessdaher werde ich einfach die beiden Ressourcenauflisten, dieich wann und wenn verfolgen werde Ich brauche es:

Der erste empfiehlt Folgendes (und hier ist eine Diskussion darüber .)

<Files ~ "\.(php)$">
AuthUserFile /etc/httpd/htpasswd
AuthType Basic
AuthName "restricted"
Order Deny,Allow
Deny from all
Require valid-user
Satisfy any
</Files>

Letzteres enthält viele Informationen, insbesondere in den Kommentaren, aber es ist zugegebenermaßen nicht die Antwort, nach der Sie gesucht haben, Ihnen eine Liste zum Lesen zur Verfügung zu stellen.

Entschuldigung, ich hätte in diesem Fall nicht hilfreicher sein können.

=======================================

Normalerweise hat WordPress nur Folgendes, das die Permalink-Verarbeitung handhabt und nicht mit der Sicherheit zusammenhängt:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

Kürzlich habe ich das WP htacess Control Plugin gefunden, das viel .htaccessfür Sie verwaltet, und es gefällt mir sehr gut. Nach dem Ändern der Einstellungen wurden die folgenden Optionen hinzugefügt:

# WPhtC: Disable ServerSignature on generated error pages
ServerSignature Off

# WPhtC: Disable directory browsing
Options All -Indexes

# WPhtC: Protect WP-config.php
<files wp-config.php>
order allow,deny
deny from all
</files>

# WPhtC: Protect .htaccess file
<files ~ "^.*\.([Hh][Tt][Aa])">
order allow,deny
deny from all
</files>

Außerdem wurden die folgenden Optionen hinzugefügt, bei denen es um Leistung statt um Sicherheit geht:

# WPhtC: Setting mod_gzip
<ifModule mod_gzip.c>
mod_gzip_on Yes
mod_gzip_dechunk Yes
mod_gzip_item_include file \.(html?|txt|css|js|php|pl)$
mod_gzip_item_include handler ^cgi-script$
mod_gzip_item_include mime ^text/.*
mod_gzip_item_include mime ^application/x-javascript.*
mod_gzip_item_exclude mime ^image/.*
mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*
</ifModule>

# WPhtC: Setting mod_deflate
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html text/plain text/xml application/xml application/xhtml+xml text/javascript text/css application/x-javascript
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4.0[678] no-gzip
BrowserMatch bMSIE !no-gzip !gzip-only-text/html
Header append Vary User-Agent env=!dont-vary
</IfModule>

Darüber hinaus gibt es einige Plugins, die ich nicht ausprobiert habe, die sich jedoch auf die Sicherheit konzentrieren und mit denen sie interagieren. .htaccessSie können sie jeweils ausprobieren, um zu sehen, was sie mit der .htaccessDatei tun :

Wenn Sie darüber hinaus die Expertenressource (IMO) Nr. 1 zur Apache-Sicherheit in Bezug auf WordPress kennen möchten, finden Sie sie auf AskApache.com . Alter ist Hardcore! Sein Blog wird Ihr Problem mit " zu vielen Informationen " nicht lösen, aber zumindest können Sie es als maßgebliche Ressource ansehen!

Hier sind einige Beispiele (obwohl nicht alle direkt mit WordPress zusammenhängen, sind sie alle anwendbar):

Wie auch immer, hoffe das hilft.


Tolle Informationen für die allgemeine Sicherheit, aber keine Antwort zu / wp-admin / folder
Ryan Gibbons

Dies mag alles nützliche Informationen sein, aber nichts davon hat etwas mit der Frage zu tun. Dies alles bezieht sich auf .htaccess im Stammverzeichnis. Die ursprüngliche Frage betraf .htaccess im Unterverzeichnis wp-admin.
Doug

@ Insanity5902 @Doug: Mein schlechtes. Das habe ich einfach nicht gesehen, als ich es gelesen habe.
MikeSchinkel

2
Ich habe Ihre Antwort grundsätzlich akzeptiert, weil unter dem Strich die allgemeine Sicherheit mein Ziel ist. Mein Blog ist sehr neu, aber mein Verkehr wächst. Grundsätzlich möchte ich nur Sicherheitsmaßnahmen, wenn ich tatsächlich viel Verkehr bekomme. -Danke
wdypdx22

1
@wdypdx - Vielen Dank. Es war mir wirklich peinlich, als mir klar wurde, dass ich Ihre Kernfrage in Fettdruck verpasst hatte. Ich bin froh, dass es positiv ausgefallen ist.
MikeSchinkel

4

Die Idee dahinter: Wenn Sie erwürgende Dateien von früheren Upgrades oder für Zero-Day-Angriffe haben, könnte Ihr System gehackt werden. Auch das Sichern des wp-admin durch eine andere Methode hilft gegen Brute-Force-Angriffe.

Eine Idee) Wenn Sie nur die Site bearbeiten, können Sie den Zugriff auf den Ordner durch IP-Aktionen einschränken

<Files *>
Order deny,allow
Deny from All
Allow from 1.2.3.4
</Files>

Um es für dynamische IP-Systeme etwas erträglicher zu machen; Sie sollten in der Lage sein, von einem Unterblock aus zuzulassen. Wenn Ihr IP-Pool also immer zwischen 1.2.3.128 und 1.2.3.255 liegt, können Sie beispielsweise 1.2.3.128/25 ausführen

Eine andere Idee) erfordern HTTPS, geben Sie eine Berechtigung verweigert, wenn sie es über http versuchen. Leiten Sie sie jedoch nicht an https weiter. Sie können ein selbstsigniertes Zertifikat oder ein Zertifikat von CA Cert verwenden, um auszukommen, ohne eines zu kaufen.


0

Ich füge immer eine .htaccess-Datei in wp-admin ein, auch wenn ich nie etwas darin abgelegt habe, da dadurch die Datei des Stammverzeichnisses negiert wird. Einige Benutzer verwenden die Datei wp-admin .htaccess, um das gesamte Verzeichnis vor allen bis auf eine IP-Adresse zu verbergen, andere verwenden sie, um das Verzeichnis mit einem Kennwort zu schützen.

Durch das Kennwort, das den Administratorbereich mit .htaccess schützt, wird die Ajax-Kommunikation jedoch deaktiviert, da sie mit wp-admin / admin-ajax.php interagieren.

Im Allgemeinen sehe ich keinen Grund, der admin .htaccess-Datei etwas hinzuzufügen, es sei denn, Sie sind extrem paranoid. Angriffe zielen normalerweise sowieso auf wp-Inhalte ab.


1
Eine .htaccess-Datei in einem Unterverzeichnis kann Anweisungen im Stammverzeichnis überschreiben, ein leerer .htaccess negiert jedoch nichts.
Doug

Dann bin ich falsch informiert worden. Hmmmm ...
John P Bloch

Was Sie tun müssen, ist umzukehren, was sich in der Wurzel befindet, wenn überhaupt. Die Antwort von Insanity ist jedoch besser als die als die beste gekennzeichnete, obwohl es am besten wäre, wenn die Informationen von Insanity darin enthalten wären.
Arlen Beiler

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.