Professionelle Sicherung Ihrer Webanwendung mit der .htaccess-Datei
Wir legen großen Wert darauf, ausschließlich die neuesten Standards der Codierungspraktiken einzusetzen. Diese entsprechen mindestens dem Standard von Apache 2.4, der wesentliche Verbesserungen in Leistung und Sicherheit bietet.
7G-Firewall Absicherung
Die 7G Absicherung ist ein cleverer Code von Filtern zum Einfügen in die Konfigurationsdatei .htaccess. 7G ist eine leistungsstarke Firewall, die leicht und superschnell ist. Sie strebt die optimale Balance zwischen Sicherheit und Leistung an, um vor einer Vielzahl von Angriffen zu schützen, einschließlich Hacking-Versuchen, SQL-Injections, Cross-Site-Scripting (XSS), unerwünschte Bots und anderen bösartigen Aktivitäten.
Das ultimative Tool für die flexible und sichere Konfiguration des Apache-Webservers.
Die Konfigurationsdatei .htaccess
(en: hypertext access „Hypertext-Zugriff“) spielt eine Schlüsselrolle in der Verwaltung von Apache Webservern. Sie steuert ergänzend die Hauptkonfigurationsdatei httpd.conf
.
Das Schweizer Taschenmesser für die Webseiten-Konfiguration!
.htaccess
Datei hat eine bedeutende Wirkung auf die Funktionalität und Sicherheit einer Website. Sie ermöglicht individuelle Konfigurationen auf Verzeichnisebene, was besonders in Shared-Hosting-Umgebungen nützlich ist, wo der Zugriff auf die Hauptserverkonfigurationsdatei httpd.conf
eingeschränkt ist.
Da die .htaccess-
Datei ein reines Textdokument ist, lässt sie sich mit einem beliebigen Texteditor wie Notepad++ erstellen und bearbeiten.
Testen Sie Änderungen nach Möglichkeit immer zuerst in einer Staging-Umgebung. Falsche Regeln oder Zeichensetzungen können den legitimen Datenverkehr blockieren und zu Funktionsstörungen auf Ihrer Website führen. Erstellen Sie mindestens eine funktionierende Sicherheitskopie, um bei einer Fehlkonfiguration (Error 500) die Einstellungen sofort wiederherstellen zu können.
In diesem Abschnitt konzentrieren wir uns primär auf die wichtigsten Maßnahmen zur Erhöhung der Sicherheit Ihrer Webseite. Diese Maßnahmen können oft von Ihnen als technisch versiertem Webmaster selbst umgesetzt werden.
TIPP: Durch die direkte Verwendung des Flags [F] in den Regeln wird sichergestellt, dass der Server die Verarbeitung der Anforderung sofort stoppt (403 Forbidden), wenn die Bedingung erkannt wird. Dies reduziert die Belastung für den PHP-Interpreter, da ungültige Anfragen bereits abgewehrt werden, bevor sie die Anwendungsebene erreichen.
Sicherheitsvorkehrungen auf der Server-Ebene:
- Blockieren von XSS-Angriffen: Durch die Überprüfung der Abfragezeichenfolgen (Query Strings) auf Muster, die typisch für XSS-Angriffe sind, wie z.B. Einbindungen von
<script>
-Tags oder verdächtige Verwendungen von globalen PHP-Variablen wieGLOBALS
und_REQUEST
, hilft diese Regel, solche Angriffsversuche effektiv zu blockieren. - Blockieren unnötiger HTTP-Anfragen: Diese Einstellung sorgt dafür, dass nur Anfragen mit den Methoden GET, POST und HEAD akzeptiert werden. Dieses reduziert die Angriffsebene und kann die Geschwindigkeit der Seite erhöhen.
- Zugriff auf vertrauliche Dateien blockieren: Die
<FilesMatch>
-Direktive ist besonders geeignet zum Einschränken des Zugriffs auf vertrauliche Dateien. Mit dieser Anweisung können Sie den Zugriff auf Konfigurationsdateien wie die.htaccess
blockieren.
# XSS-Angriffe blockieren durch Filtern von Abfragezeichenfolgen
RewriteCond %{QUERY_STRING} (\<|%3C).*script.*(\>|%3E) [NC,OR]
RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-F]{0,2}) [OR]
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-F]{0,2})
RewriteRule .* - [F,L]
# Blockieren unnötiger HTTP-Anfragen
RewriteCond %{REQUEST_METHOD} !^(GET|POST|HEAD)
RewriteRule .* - [F,L];
# Zugriff auf vertrauliche Dateien blockieren
<FilesMatch "(\\.ini|\\.log|\\.conf|config\\.php|\\.bak|\\.swp|\\.svn|error_log|wp-config\\.php|php\\.ini|\\.[hH][tT][aApP].*)$">
Require all denied
</FilesMatch>
Optimieren Sie die Sicherheit Ihrer WordPress-Site mit der .htaccess-Datei
Spezifische WordPress Sicherheitseinstellungen können Sie in der dedizierten Konfigurationsdatei wp-config.php
vornehmen. Für eine optimale Sicherheitskonfiguration ist es empfehlenswert, beide Methoden zu kombinieren: Serverseitige Sicherheitsregeln für grundlegende Einschränkungen und WordPress-Hooks für anwendungsspezifische Logik und benutzerdefinierte Fehlerseiten.
WordPress-Installationen absichern:
- Deaktivieren Sie xmlrpc.php: Die Datei xmlrpc.php wurde ursprünglich in WordPress implementiert, um die Kommunikation zwischen WordPress und anderen Systemen zu ermöglichen. Seit der Einführung der REST API ist XML-RPC oft nicht mehr notwendig. Jedoch ist xmlrpc.php zunehmend ein Ziel für Brute-Force und Distributed Denial of Service (DDoS) Angriffe. Daher besteht kein Grund mehr, xmlrpc.php aktiviert zu lassen.
- Zugriffsschutz bei fehlendem Referrer: Blockiert POST-Anfragen ohne gültige Referrer-Information, damit keine Interaktion mit den kritischen Funktionen im Admin- und Kommentarbereich sowie benutzerdefinierter Skripte, z.B. auf der Kontaktseite, stattfinden kann. Ersetzen Sie mein-domain.de mit Ihrer eigenen Domain.
- Autoreninformationen verbergen: Diese Regel wird dringend empfohlen, wenn Sie Ihre WordPress-Site vor Benutzeraufzählungsangriffen (user enumeration attacks) schützen möchten, die den Zugriff auf Autorenseiten ausnutzen.
- Verzeichnisschutz für WordPress-Admin: Für die Umsetzung ist zusätzlich zur
.htaccess
auch eine Datei mit Namen.htpasswd
erforderlich. Diese enthält den Benutzernamen und das Passwort. Jetzt sind zwei unterschiedliche Logins notwendig, um den WordPress-Admin aufzurufen.
# Deaktivieren xmlrpc
<FilesMatch "^xmlrpc\.php$">
Require all denied
</FilesMatch>
# Zugriffsschutz bei fehlendem Referrer
RewriteCond %{REQUEST_METHOD} POST
RewriteCond %{REQUEST_URI} .(wp-comments-post\.php|wp-login\.php|kontakt\.php)$
RewriteCond %{HTTP_REFERER} !.*mein-domain.de.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^$
RewriteRule .* - [F,L]
# Autoreninformation verbergen
RewriteRule ^author/ - [F]
RewriteCond %{QUERY_STRING} ^author=([0-9]*)
RewriteRule .* - [F]
# Adminbereich absichern
AuthType Basic
AuthName "Bereich Gesperrt - No Entry"
AuthUserFile /homepages/xx/xxxxxxxxx/htdocs/[Ordner]/wp-admin/.htpasswd
require user [Username]
# Adminbereich User/Passwort
[Username]:[EncryptedPasswort]
Weiterführende Links und Informationen
IONOS: WordPress Admin-Login mit htaccess schützen
.htaccess
-Verzeichnisschutz effektiv vor Hackern und Brute-Force-Angriffen schützen.
IONOS Hosting Digital Guide: www.ionos.de/digitalguide/hosting/blogs/wordpress-admin-login-mit-htaccess-schuetzen
Hostinger: 22 Methoden zum Schutz Ihrer Website
Der Artikel enthält bewährte Verfahren und Tipps – mit oder ohne WordPress-Plugins. Einige Methoden sind auch auf andere Plattformen als WordPress anwendbar.
Hostinger Tutorial: hostinger.de/tutorials/wordpress-sicherheit-verbessern
Leistungsauswirkungen von .htaccess-Regeln
Verwendung einer .htaccess-Datei mit umfangreichen Regeln, wie sie in der 7G-Firewall zu finden sind, führt zu einigen Leistungserwägungen aufgrund der Art und Weise, wie Apache Anfragen verarbeitet und reguläre Ausdrücke verwendet.
Wo möglich, besonders in kontrollierten Umgebungen, wird empfohlen, notwendige Anpassungen direkt in der httpd.conf vorzunehmen, um Leistung und Sicherheit zu optimieren.
- Anfrageverarbeitungsaufwand: Jede Anfrage an Ihren Apache-Server wird von der .htaccess-Datei verarbeitet, wenn sie sich in einem Verzeichnis befindet, auf das zugegriffen wird. Dies umfasst das Parsen der Datei und das Anwenden der Regeln auf die eingehende Anfrage. Je mehr Regeln und je komplexer diese sind (insbesondere mit regulären Ausdrücken), desto länger dauert es.
- Komplexität der regulären Ausdrücke: Reguläre Ausdrücke können ziemlich komplex und rechenintensiv sein. Gut optimierte Regex-Muster sind in der Regel keine erhebliche Belastung. Schlecht geschriebene oder übermäßig komplexe Regex können jedoch die Anfrageverarbeitung erheblich verlangsamen.
- Anzahl der Regeln: Je mehr Regeln Sie haben, desto mehr Verarbeitung ist erforderlich. Wenn jede Anfrage durch 150 Zeilen .htaccess-Code gehen muss, hat dies einen Einfluss auf die Leistung. Dieser Einfluss hängt jedoch stark davon ab, wie die Regeln strukturiert sind und wie oft sie angewendet werden.
Serverkonfiguration: httpd.conf vs. htaccess
Die .htaccess-Datei ist ein mächtiges Werkzeug, um die Basiseinstellungen des Servers auf lokalisierter Basis zu erweitern oder zu überschreiben. Sie ermöglicht eine detaillierte Verwaltung des Websiteverhaltens ohne Änderung der serverweiten Einstellungen und ist unverzichtbar in Umgebungen, in denen Benutzer keinen Root-Zugriff auf den Server haben.
Wo möglich, besonders in kontrollierten Umgebungen, wird empfohlen, notwendige Anpassungen direkt in der httpd.conf vorzunehmen, um Leistung und Sicherheit zu optimieren.
-
httpd.conf
: Die Hauptkonfigurationsdatei für den Apache HTTP-Server. Änderungen hier beeinflussen den gesamten Server und alle darauf gehosteten Seiten. -
.htaccess
: Ermöglicht Veränderungen auf Verzeichnisebene. Dies ist besonders nützlich in Shared-Hosting-Umgebungen, wo der Zugriff auf serverweite Konfigurationsdateien eingeschränkt ist. Administratoren können das Verhalten spezifischer Verzeichnisse steuern, ohne auf die Hauptserverkonfigurationsdateien zugreifen zu müssen.
Einsatzbereich: httpd.conf vs. htaccess
-
httpd.conf
: Wird für serverweite Einstellungen verwendet, z.B. das Laden von Modulen, serverweite Sicherheitseinstellungen, Behandlung von Clientanfragen und Standard-Einstellungen für Webverzeichnisse. -
.htaccess
: Wird häufig genutzt, um URLs umzuschreiben, benutzerdefinierte Fehlerseiten einzustellen, Umleitungen zu konfigurieren, Zugriffe zu beschränken und festzulegen, wie bestimmte Dateien bereitgestellt werden. Beliebt bei Anwendungen wie WordPress, wo Benutzer Konfigurationen vornehmen müssen, ohne Server-Admin-Rechte zu haben.
Performance: httpd.conf vs. htaccess
-
httpd.conf
: Änderungen in der httpd.conf sind performanter, da die Konfiguration beim Serverstart in den Speicher geladen wird und Apache nicht ständig nach Änderungen suchen muss wie bei .htaccess. -
.htaccess
: Obwohl .htaccess-Dateien große Flexibilität bieten, können sie die Serverleistung beeinträchtigen. Apache prüft bei jedem Verzeichnis auf dem Pfad einer Anfrage, ob eine .htaccess-Datei vorhanden ist, was die Antwortzeiten verlangsamen kann.
Zugriffsschutz bei fehlendem Referrer
Diese Konfigurationseinstellung in der .htaccess-Datei verbessert die Sicherheit, indem sie den Zugriff auf wichtige WordPress-Dateien blockiert, wenn keine gültige Referrer-Information vorliegt oder wenn die HTTP-User-Agent-Anfrage leer ist. Solche Zugriffe könnten auf automatisierte Angriffe oder Versuche hinweisen, Sicherheitslücken zu missbrauchen.
Konkret werden POST-Anfragen zu den Dateien wp-comments-post.php (für Kommentare) und wp-login.php (für das Login) blockiert, wenn die Anfrage nicht von einer Seite Ihrer eigenen Domain (getsafe360.de) stammt oder wenn kein User-Agent übermittelt wird. Diese Maßnahme soll folgende Risiken minimieren:
- Cross-Site Request Forgery (CSRF): Indem nur Anfragen mit korrektem Referrer akzeptiert werden, wird das Risiko von CSRF-Attacken, bei denen Benutzer unwissentlich schädliche Aktionen auf einer von ihnen bereits authentifizierten Webseite ausführen, verringert.
- Spam und automatisierte Angriffe: Viele Bots und skriptgesteuerte Angriffe senden keine legitimen Referrer-Informationen, was diese Methode effektiv blockiert.
- Brute-Force-Angriffe: Beschränkung der Anmeldeversuche auf solche, die von Ihrer Website initiiert wurden, verhindert Brute-Force-Versuche über automatisierte Skripte.
Durch die Umleitung unberechtigter Anfragen zurück zur IP-Adresse des Anfragenden wird zudem sichergestellt, dass keine Interaktion mit den kritischen Funktionen Ihrer WordPress-Site stattfinden kann. Dies stärkt die Sicherheit Ihrer Webseite signifikant gegen spezifische Online-Bedrohungen.
Blockieren unsicherer HTTP-Anfragen
Diese Einstellung in der Apache-Konfigurationsdatei sorgt dafür, dass nur Anfragen mit den Methoden GET, POST und HEAD akzeptiert werden. Andere Methoden, wie PUT, DELETE oder TRACE, werden mit einem 405-Statuscode (Methode nicht erlaubt) abgelehnt.
Dies reduziert die Angriffsfläche Ihrer Website, da weniger Methoden von Angreifern ausgenutzt werden können. Es verhindert spezifische Angriffsarten, die auf den Einsatz unüblicher oder seltener verwendeter HTTP-Methoden angewiesen sind. Zum Beispiel kann das Deaktivieren der TRACE-Methode Cross-Site Tracing-Angriffe verhindern und das Blockieren von PUT und DELETE kann verhindern, dass Angreifer unautorisiert Inhalte ändern oder löschen.
Die Beschränkung auf notwendige Anfragearten trägt daher signifikant zur Stärkung der Sicherheitsarchitektur Ihrer Website bei und vermindert das Risiko von Web-Angriffen, die sich HTTP-Methoden zunutze machen.
Benutzerdefinierte PHP-Skripte schützen
- Admin-Verzeichnisse: Wenn Sie benutzerdefinierte Admin-Panels oder Verzeichnisse haben, ist es entscheidend, diese vor unbefugten Zugriffsversuchen zu schützen.
- API-Endpunkte: Wenn Ihre Website über spezifische Skripte oder Endpunkte mit APIs kommuniziert, kann deren Sicherung Missbrauch verhindern.
- Upload-Mechanismen: Jedes Skript, das Datei-Uploads handhabt, sollte gesichert werden, um das unbefugte Hochladen von schädlichen Dateien zu verhindern.
- Andere sensible Skripte: Fügen Sie Skripte hinzu, die Aktionen wie Passwort-Resets, Benutzerregistrierungen oder andere Operationen ausführen, die Benutzer- oder Systemdaten ändern.
Diese Erweiterungen sollen Ihnen dabei helfen, die Sicherheit Ihrer Website durch gezielten Schutz spezifischer Dateien und Endpunkte zu verbessern. Kombinieren Sie .htaccess-Regeln mit sicherheitsrelevanten Maßnahmen auf Anwendungsebene, um eine robuste Verteidigung gegen verschiedene Arten von webbasierten Angriffen zu bieten.
Wir arbeiten mit allen gängigen Hosting-Providern und Betriebssystemen
Diskutieren Sie mit: Ihre Kommentare sind willkommen!
Ihre Ideen, Anregungen, Hinweise und Kritik sind gefragt! Nehmen Sie am Expertenaustausch teil und teilen Sie Ihre Gedanken in den Kommentaren mit. Wir freuen uns auf Ihre Beiträge!
Website–TuneUp
Inhaltsicherheitsrichtlinie (CSP)
XSS-Absicherung
100% Geld-zurück-Garantie
Keine monatlichen Kosten
Wir schützen, was Ihnen wichtig ist.
Schlüsselfertige Ausführung:
Unsere Experten erledigen die Optimierung komplett für Sie.
Jetzt zum Vorzugspreis von nur 195,- €
0 Kommentare