Sicherheitsempfehlungen für deinen Managed Server
Die Integrität und Vertraulichkeit von Daten ist für jede Anwendung und jede Umgebung entscheidend. Daher möchten wir dir einen Überblick über Empfehlungen und bewährte Verfahren geben, die sich leicht in die üblichen Arbeitsabläufe einfügen lassen, ohne grossen Aufwand zu etablieren sind, aber dennoch die Sicherheit deiner Umgebung deutlich erhöhen können.
Passwortlose Authentifikation
Eine bewährte Methode für den Zugriff mittels ssh und sftp ist die Verwendung des
public / private key Verfahrens.
Nachdem du deine ssh- und sftp-Umgebung für die schlüsselbasierte Authentifizierung vorbereitet hast,
schaltet Nine gerne die passwortbasierte Authentifizierung ab. Dies wird auch alle ssh- und sftp-Brute-Force-Angriffe
auf dein System verhindern, was eine Verbesserung gegenüber dem Brute-Force-Schutz
darstellt, der bereits für alle Managed Systeme aktiv ist.
Verwendung unterschiedlicher SSH-Benutzer für Projekte und Umgebungen
Wir stellen dir den Benutzer www-data zur Verfügung, der für administrative Zwecke verwendet wird.
Für eine einzelne Projektumgebung ist es völlig in Ordnung, diesen Benutzer als einzigen Benutzer zu verwenden.
Wenn du planst, verschiedene Projekte oder Projektversionen zu betreiben oder Auftragnehmern Zugang zu gewähren,
empfehlen wir, für jedes Projekt oder jede Umgebung zusätzliche Benutzer anzulegen, z.B. separate "Staging"-
oder "Test"-Benutzer.
Das Anlegen zusätzlicher Benutzerkonten ist in diesem Support-Artikel dokumentiert.
Verwendung unterschiedlicher Datenbanken und Datenbankbenutzer für jede Umgebung
Eines der risikoreichsten Angriffsziele ist dein Anwendungs-Frontend. Um zu verhindern, dass ein erfolgreicher Angriff schädliche Auswirkungen auf andere Umgebungen hat, ist es sehr empfehlenswert, für jede Umgebung unterschiedliche Datenbanken und Datenbankbenutzer zu verwenden.
Es gelten die selben Grundsätze wie bei den zuvor beschriebenen SSH-Benutzern, wobei das übergeordnete Ziel darin besteht, so wenige Privilegien wie möglich zu gewähren.
Beschränkung des Zugriffs auf bestimmte IP-Adressen
Wenn du einen eigenen IP-Adressbereich oder ein VPN verwendest, können wir den Zugang zu bestimmten Diensten oder deiner gesamten Umgebung auf deine dedizierte(n) IP-Adresse(n) beschränken.
Vermeide die Verwendung von unsicheren Verbindungen und Protokollen
Die Vertraulichkeit von Daten kann nur gewährleistet werden, wenn eine sichere Datenübertragung gewährleistet ist. Daher sollten stets TLS-gesicherte Verbindungen zum Einsatz kommen.
Eines der am weitesten verbreiteten unsicheren Protokolle ist FTP. Ohne Protokoll-Erweiterungen überträgt FTP Anmeldedaten und Daten im Klartext, was es Dritten ermöglicht, diese Informationen auszuspähen. Wir empfehlen dringend, die TLS-Erweiterungen FTPS oder FTPES anstelle des Klartextprotokolls FTP zu verwenden.
Wenn du unseren Managed Service FTPAdmin2 nutzt, deaktivieren wir das Klartextprotkoll FTP gerne für dich.
Verwende TLS-Zertifikate für alle deine Webprojekte
Wir empfehlen die Verwendung von TLS-Verbindungen für alle Webprojekte, einschliesslich Testumgebungen. Wir decken die grosse Mehrheit der Anwendungsfälle mit der kostenlosen Let's Encrypt-Integration ab und bieten eine Vielzahl von TLS-Zertifikaten für spezifischere Anwendungsfälle.
HTTP-Header für deine Anwendung
Origin / Access-Control-Allow-Origin
Der Origin und Access-Control-Allow-Origin gehen Hand in Hand und ermöglichen die Kontrolle darüber, welche Quellen deine Webanwendung einbinden und darauf zugreifen können.
Content-Security-Policy
Die Content-Security-Policy steuert die Ressourcen, die der Benutzer-Agent für eine bestimmte Seite laden darf, was als Schutz gegen Cross-Site-Scripting (XSS)-Angriffe eingesetzt werden kann.
Strict-Transport-Security (HSTS)
Die Strict-Transport-Security weist Web-Browser an, deine Webseite ausschliesslich über das https-Protokoll aufzurufen.
Yelp hat einen interessanten Blogpost zu diesem Thema veröffentlicht. Wir empfehlen die Lektüre des Artikels für grössere Implementierungen und insbesondere, wenn du planst, Subdomains in die Richtlinie aufzunehmen.
Cloudflare - Angriffserkennung und -vermeidung, Leistungsverbesserungen
Das wichtigste Angriffsziel, dein Web-Frontend / deine Webanwendung, kann durch ein CDN geschützt werden. Neben der automatischen Angriffserkennung und -abwehr einer Vielzahl von Angriffsvektoren, verbessert ein weltweit operierendes CDN die Auslieferungszeiten deiner Inhalte in der ganzen Welt. Caching-Mechanismen ermöglichen es dem CDN, Inhalte direkt auszuliefern, ohne dass Anfragen vom Webserver verarbeitet werden, was die Ladezeiten und die Systemlast effektiv reduziert.
Cloudflare erkennt eine breite Palette von Angriffsvektoren und implementiert Abwehrmechanismen für weit verbreitete CMS / CRM wie Wordpress, Drupal, Joomla, Typo3 oder Magento.
Nine als Cloudflare-Partner berät dich gerne und unterstützt dich bei der Einrichtung des weltweit meistgenutzten CDN.