Härten Sie Ihre AWS-Einrichtung in 10 einfachen Schritten
Härten Sie Ihre AWS-Einrichtung in 10 einfachen Schritten
Schritt 1 - Härten von AWS-Organisationen
Der erste Schritt zur Absicherung Ihrer Bereitstellung ist das Verstehen und Aufteilen. Mit AWS Organizations, einem kostenlosen AWS-Service, können Sie die Konten Ihrer Organisation in Organisationseinheiten (OU) unterteilen. Für jede OU können die Berechtigungen so angepasst werden, dass sie von verschiedenen Personen und für verschiedene Zwecke mit Service Control Policies (SCP) genutzt werden können. Diese Art von Richtlinie fungiert als Rahmen, den die Berechtigung des Benutzers niemals überschreiten kann.
Darüber hinaus bietet die AWS-Organisation eine "konsolidierte Abrechnung" an, bei der die Nutzung all Ihrer Konten zusammengefasst wird, so dass Sie in den Genuss von Staffelrabatten kommen.
Schritt 2 - Root-Benutzer
Die erstmalige Anmeldung erfolgt immer als Root-Benutzer, da kein anderer Benutzer in IAM erstellt wurde. Die Härtung des Root-Benutzerkontos ist von entscheidender Bedeutung, da es über Administratorrechte für das Konto verfügt.
Gemäß den bewährten AWS-Sicherheitspraktiken darf dieses Konto keine Zugriffsschlüssel und somit keinen programmatischen Zugriff haben. Was bedeutet das?
Wenn Sie einen neuen Benutzer anlegen, können Sie wählen, wie er mit AWS interagieren kann: über die Konsole oder mit einer Zugriffsschlüssel-ID und einem geheimen Zugriffsschlüssel für die API, CLI, SDK oder andere Entwicklungstools. Um diesen Zugriffsschlüssel zu deaktivieren, gehen Sie zu IAM und klicken Sie unter "Security Credentials" auf "Make Inactive".
Dieser Benutzer sollte nur für die Erstellung unserer ersten Benutzer und Gruppen und für sehr detaillierte Verwaltungsaktivitäten verwendet werden. Das Passwort muss sicher sein und häufig geändert werden, und MFA muss aktiv sein. Gehen Sie weiter zu Schritt 3.
Schritt 3 - Multi-Faktor-Authentifizierung (MFA)
Identity Access Management (IAM) ist der Service, den AWS für die Verwaltung von Benutzern, Gruppen, Rollen und Richtlinien in AWS anbietet. Von hier aus können Sie Benutzer erstellen, löschen, in Gruppen einordnen und ihnen Rollen (Berechtigungen) zuweisen, neben vielen anderen Funktionen. Ein einzelnes Passwort gilt nicht mehr als gesichert. Daher bietet AWS die Aktivierung der Mehrfaktor-Authentifizierung an. Navigieren Sie dazu zum Benutzer und gehen Sie zu "Security Credentials". Dort klicken Sie auf MFA-Gerät verwalten. Diese Funktion ist mit Anwendungen wie Google Authenticator wirklich einfach zu verwenden und ein Muss, um Ihre Einrichtung zu sichern.
Schritt 4 - Private Teilnetze
Unabhängig davon, welche Art von Infrastruktur Sie in der Cloud aufbauen, wird diese in VPCs untergebracht sein. Eine VPC ist ein logisch isolierter Bereich der AWS-Cloud, in dem AWS-Ressourcen in einem virtuellen Netzwerk gestartet werden.
Innerhalb dieser VPC gibt es Subnetze. Subnetze sind ein Teil der VPC mit 2 verschiedenen Typen: öffentliche Subnetze und private Subnetze. Im Hinblick auf die Sicherheit ist es sehr wichtig, über private Subnetze zu sprechen. Auf die Komponenten, die innerhalb privater Subnetze eingesetzt werden, kann nur von innerhalb der VPC zugegriffen werden. (keine Internetverbindung)
Aus technischer Sicht bedeutet dies, dass die damit verbundene Routentabelle keine öffentliche Route nach 0.0.0.0/0 hat. Diese Eigenschaft macht diese Art von Subnetzen ideal für den Betrieb von Komponenten wie Datenbanken, auf die wir nicht vom Internet aus zugreifen wollen.
Was können wir jedoch tun, wenn zum Beispiel eine unserer Datenbanken ein Betriebssystem-Update benötigt, aber keine Verbindung zum Internet.... herstellen kann? Springen wir zu Schritt 3.
Schritt 5- NAT-Gateways
Ein NAT-Gateway ist ein virtuelles Gerät in einem öffentlichen Subnetz, das Ressourcen in privaten Subnetzen eine Verbindung zum Internet ermöglicht, aber keinen eingehenden Verkehr aus dem Internet zulässt.
Mit anderen Worten: Wenn Ihre Datenbank ein Betriebssystem-Update benötigt, kann sie sich mit dem Internet verbinden, um dieses Update herunterzuladen (Datenverkehr vom VPC nach außen), aber jemand, der mit dem Internet verbunden ist, kann nicht mit unserer Datenbank sprechen (aus dem Internet in unseren VPC).
Die Einrichtung eines NAT-Gateways ist kostenlos, und um es technisch zu konfigurieren, müssen Sie nur eine Route mit dem Ziel 0.0.0.0/0 anhängen und Ihr NAT-Gateway auf die Routentabelle Ihrer privaten VPC ausrichten.
Schritt 6 - Sicherheitsgruppen
Sicherheitsgruppen sind eine grundlegende Funktion, wenn Sie Ihre Architektur absichern möchten. Sie finden sie unter EC2 und sie sind mit dem Elastic Network Interface (eni) verbunden. Die häufigsten Anwendungen sind die Absicherung von EC2-Instanzen und Elastic Load Balancers.
Sie funktionieren wie eine klassische Firewall: Sie definieren Regeln, die angeben, welche Art von Datenverkehr, welches Protokoll und welchen Bereich Sie akzeptieren wollen und von welcher Quell-IP oder Sicherheitsgruppe (logische Referenzierung). Ein wichtiges Merkmal ist, dass sie zustandsorientiert sind, d. h. wenn Sie einen bestimmten eingehenden Datenverkehr als zulässig konfigurieren, wird auch der von ihm ausgehende Datenverkehr (die Antwort) automatisch zugelassen. Man kann sagen, dass sie auf ihre Weise intelligent sind.
Schritt 7 - Netzwerk-Zugangskontroll-Listen
Network Access Control Lists (NACLS) sind eine weitere kostenlose Funktion, die von AWS angeboten wird, um die Sicherheit unserer Infrastruktur zu erhöhen. Sie sind den Sicherheitsgruppen sehr ähnlich, mit 3 Hauptunterschieden:
-Anwendung auf Subnetzebene.
- Es sind 'Deny'-Regeln möglich (Sicherheitsgruppen akzeptieren nur 'Allow'-Regeln)
-Sie sind zustandslos: Wenn Sie eingehenden Datenverkehr zulassen, müssen Sie ihn auch auf der Registerkarte "Ausgehend" ausdrücklich zulassen. Andernfalls kann die Ressource, die den Datenverkehr empfängt, diesen zwar empfangen, aber das NACl wird die Antwort blockieren.
Sowohl in Sicherheitsgruppen als auch in NACLs wird alles verweigert, was nicht ausdrücklich erlaubt ist.
Schritt 8 - VPC-Endpunkte härten
Aus der Sicherheitsperspektive ist es wichtig zu wissen, dass bei jedem Zugriff auf einen AWS-Service von unserer VPC (S3, IAM, CloudWatch...) die Anfrage über das Internet läuft.
Dies kann zu Sicherheitsproblemen führen, da jemand unsere Kommunikation mithilfe von Hacking-Techniken wie "Man-in-the-Middle" abfangen könnte. Für diese Art von Szenario kommen VPC-Endpunkte zu unserer Rettung.
Ein VPC-Endpunkt ist eine Möglichkeit, eine Verbindung von Ihrer VPC zu einem beliebigen AWS-Service herzustellen, ohne das Amazon Backbone-Netzwerk zu verlassen, d. h. ohne das Internet zu durchqueren.
Um einen zu erstellen, navigieren Sie zu VPC und wählen Sie in der linken Spalte "Endpunkt". Wählen Sie dann den Dienst aus, für den Sie den Endpunkt erstellen möchten, und klicken Sie auf "Erstellen".
Sobald der Endpunkt erstellt ist, können Sie den Datenverkehr über ihn zu einem bestimmten Dienst leiten, indem Sie einfach eine neue Route in der entsprechenden Routentabelle mit dem DNS-Namen des Dienstes als Ziel und der vpce-id als Ziel hinzufügen.
H2 Schritt 9- S3 Cross Region Replication (CRR)
Da die meisten Daten in AWS in S3 gespeichert werden, wären alle zuvor erläuterten Härtungs- und Sicherungsschritte unsinnig, wenn wir sie alle verlieren würden.
Standardmäßig repliziert S3 (Standard) alle Ihre Daten, die in mindestens 3 Availability Zones gespeichert sind, um die Haltbarkeit zu gewährleisten. Bei einem Ausfall einer Region kann es jedoch zu einem Totalverlust der Daten in der Cloud kommen, was schlimme Folgen haben kann.
Die regionsübergreifende Replikation ist eine kostenlose S3-Funktion, die es uns ermöglicht, jedes in einen bestimmten Bucket hochgeladene Objekt automatisch in eine andere Region zu replizieren, um die Konsistenz der Daten zu gewährleisten.
Um sie zu aktivieren, wählen Sie den S3-Bucket aus, den Sie replizieren möchten, und klicken Sie auf "Verwaltung" -> "Replikation". Befolgen Sie die Schritte zur Auswahl des Ziel-Buckets in einer anderen Region, der Berechtigungen, der Verschlüsselung und der Änderung der Eigentümerschaft, falls erforderlich.
Auch wenn diese Funktion selbst kostenlos ist, müssen Sie natürlich auch für die Speicherkapazität in der anderen Region bezahlen.
Schritt 10- Härtet die AWS Web Application Firewall
Wenn alle zuvor genannten Schritte für Sie nicht sicher genug sind, dann machen Sie es richtig. Zum Abschluss dieser Liste werde ich über WAF sprechen, eine grundlegende Sicherheitsfunktion, die außerhalb Ihrer VPC platziert wird und es Ihnen ermöglicht, alle Arten von Datenverkehr zu filtern, bevor er Ihre VPC erreicht.
Mit AWS WAF können Sie benutzerdefinierte Regeln erstellen oder vordefinierte Regeln von Amazon erhalten, die internationalen Sicherheitsstandards entsprechen, IP-Sets definieren und entscheiden, ob Sie den Datenverkehr von ihnen zulassen oder blockieren möchten, Sie vor SQL-Injection schützen, verdächtige Header in Anfragen erkennen und vieles mehr.
Navigieren Sie dazu zur WAF und wählen Sie "Web-ACL erstellen". Geben Sie der Regel einen Namen, ordnen Sie sie den Ressourcen zu, vor denen sie geschützt werden soll, und lassen Sie uns mit der Konfiguration fortfahren.
Wählen Sie "Eigene Regel erstellen" und erkunden Sie alle möglichen Konfigurationen.
Es sollte nicht viel Zeit in Anspruch nehmen, spezifische und leistungsstarke Firewall-Regeln zu erstellen, was mit einer normalen Firewall eine harte Arbeit wäre.
Obwohl dieser Service nicht kostenlos ist, liegen die geschätzten Kosten für ein kleines bis mittleres Unternehmen bei ca. 40 $-50 $/Monat mit insgesamt ca. 19 von AWS verwalteten und angepassten Regeln.
Ich hoffe, Sie finden diese grundlegenden Schritte interessant und können sie nach und nach befolgen. Denken Sie daran, dass es keine erfolgreiche Infrastrukturbereitstellung ohne die richtigen Sicherheitsmaßnahmen gibt.
Wischen Sie nach links und genießen Sie.