Wie sichere ich eine neue Joomla-Installation?

34

Welche Maßnahmen sollte man nach einer neuen Joomla-Installation ergreifen, um die Sicherheit zu gewährleisten? Sowohl auf gemeinsam genutzten als auch auf dedizierten Hosting-Servern.

ilias
quelle
1
@ Admins: was ist mit einem Community-Wiki für diese Frage?
MattAllegro

Antworten:

36

Eine Joomla-Website sicher halten

  1. Verwenden Sie sichere Passwörter.
  2. Minimieren Sie die Anzahl der Administratorkonten.
  3. Deaktivieren oder entfernen Sie nicht verwendete Benutzerkonten.
  4. Minimieren Sie die Anzahl der Erweiterungen von Drittanbietern, und verwenden Sie, wenn Erweiterungen von Drittanbietern erforderlich sind, gut unterstützte Erweiterungen von etablierten Entwicklern, denen Sie vertrauen.
  5. Wenden Sie regelmäßig die neuesten Updates für Joomla und Erweiterungen von Drittanbietern an, einschließlich Sicherheits-Hotfixes für Joomla EOL-Versionen, sofern zutreffend.
  6. Abonnieren Sie den Joomla Security News- Feed, um über die wichtigsten Sicherheitsupdates von Joomla informiert zu werden
  7. Abonnieren Sie die Joomla Vulnerable Extensions List (VEL), damit neue Sicherheitslücken schnell behoben werden können. Scrollen Sie zum Ende der Seite, um den Abonnement-Link zu erhalten. Sie können den VEL auch auf Twitter verfolgen .
  8. Verwenden Sie sicheres Webhosting von guter Qualität, einschließlich eines geeigneten PHP-Datei-Handlers wie suPHP oder FastCGI und Sicherheitserweiterungen wie mod_security. Verwenden Sie eine unterstützte Version von PHP .
  9. Anstatt sich ausschließlich auf die Sicherungen Ihres Webhosting-Unternehmens zu verlassen, führen Sie regelmäßig eigene Sicherungen der Website durch, kopieren Sie die Sicherungsdateien außerhalb des Standorts und führen Sie regelmäßig Testwiederherstellungen an einem Testspeicherort durch, um die Qualität Ihrer Sicherungen zu überprüfen.
  10. Aktivieren Sie https.
  11. Implementieren Sie eine Webanwendungs-Firewall, wie sie in der Professional-Version der Akeeba Admin Tools enthalten ist.
  12. Verwenden Sie nicht das Standardtabellenpräfix.
  13. Ändern Sie den Standardbenutzernamen und die ID des Superadministrators in etwas anderes. Die professionelle Version von Akeeba Admin Tools verfügt über ein Tool zum Ändern der Super Administrator-ID.
  14. Beschränken Sie den Zugriff auf den Joomla Admin per IP. Erlaube nur vertrauenswürdige IPs.
  15. Aktivieren Sie die 2-Faktor-Authentifizierung für Administratorkonten (gilt für Joomla 3.2 und höher).
  16. Wiederholen Sie die obigen Schritte für andere Websites, die dasselbe Hosting-Konto haben, oder trennen Sie Websites im Idealfall von ihren eigenen Webhosting-Konten, um eine Kreuzkontamination zu vermeiden.
  17. Stellen Sie sicher, dass die PCs der Website-Administratoren auf ähnliche Weise gesichert sind. Implementieren Sie beispielsweise einen qualitativ hochwertigen Viren- und Malware-Scanner. Dies trägt zum Schutz von Website-Anmeldeinformationen bei, die auf PCs gespeichert sind. Verwenden Sie idealerweise ein Verschlüsselungstool oder eine Verschlüsselungsanwendung, um Website- und andere Anmeldeinformationen zu speichern.
  18. Lesen Sie die 10 dümmsten Administrator-Tricks, um zu erfahren, was Sie nicht tun sollten.

Detaillierte Anweisungen finden Sie in der offiziellen Sicherheits-Checkliste .

Neil Robertson
quelle
Diese Liste kann wahrscheinlich hinzugefügt werden (zögern Sie nicht zu bearbeiten). :)
Neil Robertson
2
Vielleicht könnten Sie auf die "Liste der anfälligen Erweiterungen" verlinken? (Ich kann Ihre Antwort aus irgendeinem Grund nicht bearbeiten; ich kann andere bearbeiten?)
MrWhite
Thanks @ w3d - Ich habe einen Link zur VEL-Abonnementseite und auch zum Joomla Security News-Feed hinzugefügt.
Neil Robertson
14

Es ist sehr wichtig, Backups auf einem separaten Server zu speichern. Ich sehe viele Leute, die Akeeba Backups treu ausführen ... und die auf demselben Server im selben Stammverzeichnis gespeichert sind. Nicht so hilfreich, wenn Sie ernsthaft gehackt werden, und sicherlich nicht hilfreich, um sich von einem Hosting-Fehler zu erholen.

Mit Akeeba Backup Pro können Sie Sicherungsdateien in einem externen Speicher wie der Amazon Cloud speichern und verwalten.

Deb Cinkus
quelle
4
Es ist auch wichtig, dass Sie Ihre Backups nach der Übertragung von Ihrem Hosting-Verzeichnis auf beschädigte Komprimierung überprüfen. Eine beschädigte Sicherung ist keine Sicherung. Dies gilt für alle Backup-Systeme, Akeeba, CPanel und so weiter.
UhlBelk
7

Alternativ zur .htaccess-Datei oder zum Sperren per IP können Sie auch jSecure verwenden, um Ihr Administrator-Login zu sichern.

Eine Sache, die nicht erwähnt wurde, ist die Verwendung eines seriösen Hosting-Anbieters. Sie möchten eine, die nicht nur mit der Sicherheit Schritt hält, sondern auch mit Ihnen zusammenarbeitet, wenn Sie gehackt werden oder ein Problem vorliegt (z. B. wenn die Datenbank beschädigt wird). Die Idee ist, den Schaden zu begrenzen, den Ihre Site anrichtet, und gleichzeitig zu ermöglichen, dass Sie sie bereinigen.

Die Grundidee, Sie wollen jemanden, der ..

  • wird da sein
  • ist kein nächtlicher Flugbetrieb
  • wird mit dir arbeiten
  • und bietet eine solide Umgebung.

Wenn Sie möchten, dass eine Liste mit Fragen einem Gastgeber ein besseres Gefühl vermittelt, lassen Sie es mich einfach wissen.

Hoffe das hilft.

Donald Champion
quelle
6

Versuchen Sie das auch,

  • Halten Sie Ihr Joomla mit seinen Erweiterungen auf dem neuesten Stand.
  • Bewahren Sie regelmäßig Backups Ihrer Site in Clouds auf .
  • Nicht robots.txtfür gesicherte Ordner öffnen .
  • Bei den neuesten Joomla-Versionen ist die Verwendung der Zwei-Faktor-Authentifizierung sicherer.
  • Stellen Sie sicher, dass Ordner und Dateien die richtigen Berechtigungen haben.
  • Benutze Cloudfare für Joomla .

Hoffe, es hilft ..

Jobin Jose
quelle
5

Grundsätzlich gibt es meiner Erfahrung nach bei der Größe von Joomla keine Möglichkeit, dies wirklich vollständig abzusichern. Also lieber als eine perfekte Sicherheitsrichtlinie, die alles verhindert. Es ist das Beste, Ihre Erwartungen zu senken, um den Gesamtschaden zu verringern.

Dies kann mit einer extrem häufigen Sicherungsrichtlinie geschehen, sodass bei jedem Eindringen ein Rollback der Site sowie Malware-Scans durchgeführt werden können. Bisher gab es keinen einzigen Hack, der darauf zurückzuführen war, dass unser Admin-Panel brutal gezwungen wurde.

Die meisten Hacks, die wir sehen, stammen von Komponenten von Drittanbietern oder dem Joomla-Kern. Wir haben sogar gesehen, dass Hacks es schaffen, auch in die neuesten Versionen von Joomla zu gelangen. Dies liegt daran, dass der Hack in der Regel wie eine normale Anforderung aussehen kann, bei der eine Datei mit einer schlechten Filterung auf den Server verschoben wird. Sobald sich eine Datei auf dem Server befindet, ist alles ein faires Spiel. Sie kann sich auf JEDER Site auf einem gesamten freigegebenen Server befinden und sich weiterhin auf Ihre auswirken. Wenn also eine Person auf einem freigegebenen Server nicht auf dem neuesten Stand ist, kann dies sich auf Sie auswirken.

Dies mag ein wenig extrem sein, aber basierend auf persönlichen Erfahrungen ist es am besten, auf das Schlimmste vorbereitet zu sein, und dann zu zuversichtlich, dass Ihre Politik alles verhindern wird.

Der beste Weg, um eine neue Joomla-Installation zu sichern, besteht darin, häufig zu sichern und Malware-Scans zu aktivieren. Wenn der Malware-Scanner eine E-Mail an Sie sendet, sobald er etwas findet, können Sie innerhalb kürzester Zeit ein Rollback auf die neueste Sicherung durchführen.

Jordan Ramstad
quelle
"Bring deine Standards runter" ??? Sollte das vielleicht gewesen sein, "verbessern Sie Ihre Standards?
Chesedo
Ich bin mir sicher, dass dies zu einer Ablehnung führen würde. Ich möchte nur nicht, dass jemand denkt, dass er sicher ist, wenn er die Richtlinien befolgt. Dies bedeutet, dass Sie Ihre Standards senken müssen, um nicht gehackt zu werden, sondern sich darauf vorzubereiten. Die meisten Leute, die ich kenne, sichern vielleicht einmal pro Woche oder einmal im Monat, weil sie das Gefühl haben, gehackt zu werden, sind selten, aber es ist nicht so.
Jordan Ramstad
Dann sollten Sie wahrscheinlich verwendet haben "Bringen Sie Ihre Erwartungen nach unten" (von nicht gehackt werden) :)
Chesedo
Gute Notiz, habe das bearbeitet, danke. Ich versuche nicht, etwas Schlechtes über Joomla zu sagen, ich liebe es, es wird niemals enden, wenn man nur mit Hacks kämpft, also ist es am besten, darauf vorbereitet zu sein :).
Jordan Ramstad
Ganz richtig - manchmal ist der beste Weg zu helfen, ehrlich zu sein :).
Chesedo
4
  1. Ändern Sie den Benutzernamen und halten Sie das Administratorkennwort fest. Verwenden Sie die Zwei-Faktor-Authentifizierung (eingebaut für 3.3+, für andere http://www.readybytes.net/labs/two-factor-authentication.html ).

  2. Installieren Sie kSecure ( http://extensions.joomla.org/extensions/access-a-security/site-security/login-protection/12271 )

  3. Schützen Sie Ihre Website vor verschiedenen Angriffen, indem Sie diesen htaccess ( http://docs.joomla.org/Htaccess_examples_(security) verwenden.

Shyam
quelle
3

Diese Liste aus einem Whitepaper zu "Pen-testing a Joomla site" im Blog ausleihen. Ich denke, diese Liste ist eine gründliche Richtlinie für die Grundlagen der Joomla-Sicherheit.

  1. Halten Sie Joomla immer auf dem Laufenden. Installieren Sie das neueste Upgrade, sobald das Upgrade veröffentlicht wurde.
  2. Unabhängig davon, welche Erweiterungen verwendet werden, müssen sie ordnungsgemäß mit den neuesten Upgrade-Versionen gepatcht werden. Mit jeder alten Erweiterung kann der Angreifer die Site angreifen.
  3. Verwenden Sie keine Erweiterungen, die nicht von oder nicht ordnungsgemäß getestet wurden.
  4. Alle Benutzereingaben müssen ordnungsgemäß validiert werden. Diese Eingaben können Eingaben in Formularen, URIs, Hochladen von Bildern usw. sein. Wenn der Benutzer das Hochladen des Bildes über eine Schaltfläche DURCHSUCHEN ermöglicht, darf er nur ein Bild und keine PHP-Shell hochladen, die später möglicherweise wie eine Hintertür funktioniert der Server.
  5. Verwenden Sie für alle Anmeldungen sichere Kennwörter. Mindestens 8 Zeichen, ein Sonderzeichen, eine Ziffer und ein Buchstabe, bei dem die Groß- und Kleinschreibung beachtet wird. Es schützt Ihre Installation vor brutaler Gewalt.

  6. Behalten Sie in den Protokolldateien des Webservers immer den Überblick über "Letzte Besucher", um mögliche Angriffe abzufangen. Betrachten Sie Ihre Protokolldateien niemals nur als Information. Es ist sehr nützlich bei der Verfolgung und Überwachung der Benutzer.

  7. Setzen Sie etwas Stress ein, um mehr Sicherheit für den gesamten Server zu implementieren, auf dem Ihre Joomla-basierte Site gehostet wird. Es wird auf einem gemeinsam genutzten oder einem dedizierten Server gehostet.

  8. Erstellen Sie eine Liste aller von Ihnen verwendeten Erweiterungen und überwachen Sie diese weiterhin.

  9. Halten Sie sich über die neuesten Sicherheitslücken und -meldungen bei verschiedenen Sicherheitshinweisen auf dem Laufenden. Exploit-db, osvdb, CVE usw. sind einige der guten Ressourcen.

  10. Ändern Sie die Berechtigung für Ihre .htaccess-Datei, da sie standardmäßig Schreibberechtigungen verwendet (da Joomla sie aktualisieren muss). Es wird empfohlen, 444 (r-xr-xr-x) zu verwenden.

  11. Die entsprechenden Dateiberechtigungen für die öffentlichen Verzeichnisse müssen erteilt werden, damit schädliche Dateien nicht hochgeladen oder ausgeführt werden können. Die beste Vorgehensweise in diesem Zusammenhang ist 766 (rwxrw-rw-), dh nur der Eigentümer kann lesen, schreiben und ausführen. Andere können nur lesen und schreiben.

  12. Niemand muss die Berechtigung haben, in PHP-Dateien auf dem Server zu schreiben. Sie müssen alle mit 444 (r - r - r -) gesetzt sein, jeder kann nur lesen.

  13. Delegieren Sie die Rollen. Dadurch wird Ihr Administratorkonto sicher. Hackt jemand in Ihren Computer ein, darf dieser nur auf den jeweiligen Benutzer und nicht auf das Administratorkonto zugreifen.

  14. Die Datenbankbenutzer müssen nur die Berechtigung haben, Befehle wie INSERT-, UPDATE- und DELETE-Zeilen zu erteilen. Sie dürfen keine Tabellen DROPEN.

  15. Ändern Sie die Namen der Backend-Ordner, z. B. können Sie / administrator in / admin12345 ändern. 16. Last but not least, bleiben Sie über die neuesten Sicherheitslücken auf dem Laufenden.

FFrewin
quelle
Weiterer Vorschlag zu Punkt 12: Niemand außer dem Webserver muss die Berechtigung haben, die PHP-Dateien auch auf dem Server zu lesen. Setzen Sie den Benutzer auf den Benutzer des Webservers (www-data oder http) und setzen Sie ihn für bearbeitbare Dateien über das Backend (css, ...) auf 400 oder 600.
Tom Kuschel
3

Ihre erste Verteidigungslinie ist Ihr Hosting-Service

  • Mieten Sie einen dedizierten Server von einem zuverlässigen Hosting-Service
  • Stellen Sie sicher, dass Sie 2FA auf Ihrem Server aktivieren und ein SEHR STARKES Kennwort verwenden
  • Installieren Sie eine zuverlässige Firewall auf Ihrem Server - ich verwende ConfigServer
  • Installieren / Konfigurieren Sie ein Anti-Virus-Programm, ich benutze ClamAV
  • Stellen Sie sicher, dass der Benutzername jeder Website NICHT die ersten 8 Zeichen des Domainnamens enthält und ein SEHR STARKES Kennwort verwendet
  • Stellen Sie sicher, dass auf jeder Website ein SSL-Zertifikat installiert ist
  • Stellen Sie sicher, dass sich jede Website im Jail befindet. Dies bedeutet, dass sie keinen Root-Zugriff haben, es sei denn, Sie benötigen Zugriff auf den Server-Root. Stellen Sie in diesem Fall sicher, dass Secure Shell (SSH) installiert und konfiguriert ist. Ich benutze die Website meiner Serverdomäne, habe aber alle anderen Websites im Gefängnis.
  • Stellen Sie sicher, dass alle Server-Updates umgehend installiert werden !!!!

Ihre nächste Verteidigungslinie ist Ihr cPanel

  • Verwenden Sie ein "SEHR STARKES" Passwort
  • Konfigurieren Sie die Benutzerkennwortstärke für Benutzer
  • Richten Sie einen Cron-Job ein, um eine vollständige cPanel-Sicherung durchzuführen und auf einer externen Quelle zu speichern
  • Stellen Sie sicher, dass cPanel für die Verwendung von SSL für den Zugriff eingerichtet wurde
  • Führen Sie 'Site Security Check' aus, um festzustellen, welche weiteren Optimierungen möglicherweise erforderlich sind
  • Stellen Sie sicher, dass alle cPanel-Updates umgehend installiert werden !!!!

Ihre nächste Verteidigungslinie ist Ihr Administratorpanel

  • Bearbeiten Sie die Anforderungen für das Kennwortformat, um sichere Kennwörter (Groß- / Kleinbuchstaben, Zahlen und mindestens 1 Satzzeichen mit einer Mindestlänge von 18 Zeichen) sicherzustellen.
  • 2FA für Benutzer aktivieren - Für Superuser- und Administratorkonten verwenden
  • Begrenzen Sie die Anzahl der Super User-Konten (am besten nur eines)
  • Begrenzen Sie die Anzahl der Administratorkonten (je weniger desto besser)
  • Begrenzen Sie die Bereiche, auf die Administratoren zugreifen können
  • Beschränken Sie die Bereiche, auf die Herausgeber, Redakteure und Autoren zugreifen können
  • Installieren und konfigurieren Sie AdminTools
  • Richten Sie ein Administrator-URL-Passwort über AdminTools ein
  • Stellen Sie sicher, dass kritische Dateien (HTACCESS, ROBOTS.TXT, WEBCONFIG, INDEX.PHP (Root und Template)) auf 444 gesetzt sind. Sie können die Dateien weiterhin über den Dateimanager cPanel pr Plesk Control Panel bearbeiten
  • Installieren und konfigurieren Sie AkeebaBackup
  • Konfigurieren Sie AkeebaBackup so, dass Backups extern und extern gespeichert werden
  • Installieren Sie Add-Ons nur über die Joomla-Erweiterungsseiten. Installieren Sie niemals Add-Ons von Drittanbietern, die nicht auf der Joomla-Erweiterungsseite aufgeführt sind.
  • Deaktivieren und / oder deinstallieren Sie Add-Ons, die nicht verwendet werden und für die Joomla-Funktionalität nicht benötigt werden
  • Installieren Sie Joomla und Add-On-Updates umgehend !!!

Ich bin mir sicher, dass es noch andere Schritte gibt, aber dies sind die wichtigsten, die ich auf meinem Server verwende, auf dem über 70 Websites aus dem ganzen Land gehostet werden. Ich hatte kürzlich einen massiven Angriff ähnlich einem DDoS-Angriff und es wurde nicht auf eine Website zugegriffen. Ich fühlte mich ungefähr 3 Meter groß und kugelsicher, aber ich weiß, dass ich nicht selbstgefällig sein kann, da morgen ein anderer Tag ist! LOL

Luke Douglas
quelle
-4
  1. Ich bin kein Fan von Zwei-Faktor-Authentifizierung

  2. Installieren Sie die Akeeba Admin Tools, aktivieren Sie den erweiterten Zugriff, überprüfen Sie die Optionen und die Software-Firewall

https://www.akeebabackup.com/download/admin-tools.html

  1. Aktivieren Sie das URL-Passwort für das Backend
Anibal
quelle
1
Würde es Ihnen etwas ausmachen, mitzuteilen, warum Sie kein Fan von Zwei-Faktor-Authentifizierung sind?
Chesedo
2
Ich verstehe - das macht Sinn. Aber warum sollte man es nicht zu den Punkten zählen, die bei der Sicherheit helfen? Wenn Sie es in Ihrem Beitrag haben möchten, warum haben Sie es dann nicht als Randnotiz zusammen mit dem Grund?
Chesedo
1
Du hast recht. Ich lerne gerade, wie man hier Fragen beantwortet ;-) Übrigens
Anibal
4
Lassen wir es als erste naive Antwort auf das System dieses Autors. Es hat seinen eigenen Charme.
Anibal
1
Hehe! In der Tat geht es beim SE-System darum, die besten Antworten zu erhalten oder bessere Antworten zu finden. Ich würde vorschlagen, dass Ihre Antwort mit ihrer Erklärung gelöscht und als Kommentar hinzugefügt wird, da sie zusammen mit der Erklärung das Verständnis des Einzelnen verbessert die Auswirkung der 2-Faktor-Authentifizierung bei der Adressierung der Sicherheit.
NivF007