So konfigurieren Sie Serverzugriffsprotokolle auf S3

So konfigurieren Sie Serverzugriffsprotokolle auf S3
Wenn jemand auf einem Server eine Operation initiiert, wird im Backend eine Anfrage generiert, um diesen Vorgang zu erfüllen. Die auf den Servern ausgeführten Vorgänge sind in der Regel CRUD -Operationen (erstellen, lesen, aktualisieren, löschen). Die für die Operationen generierten Anforderungen können vom Server protokolliert oder gespeichert werden. Wir nennen sie Zugriffsprotokolle oder Serverzugriffsprotokolle.

Diese Protokolle können verwendet werden, um Leistung zu überwachen, den Ausfallpunkten nachzuverfolgen, die Sicherheit zu verbessern, Kosten und viele andere Zwecke zu analysieren. Anfang.

Mit AWS können Sie Zugriffsprotokolle für S3 -Eimer aktivieren und die Details zu den Operationen und Aktionen an diesem S3 -Eimer zur Verfügung stellen. Sie müssen nur die Protokollierung am Eimer aktivieren und einen Ort bereitstellen, an dem diese Protokolle gespeichert werden, normalerweise ein weiterer S3 -Eimer. Der Prozess ist nicht in Echtzeit, da diese Protokolle in ein oder zwei Stunden aktualisiert werden.

In diesem Artikel werden wir sehen, wie wir in unseren AWS -Konten leicht Serverzugriffsprotokolle für S3 -Eimer aktivieren können.

Erstellen von S3 -Eimer

Zu Beginn müssen wir zwei S3 -Eimer erstellen. Einer wird der tatsächliche Eimer sein, den wir für unsere Daten verwenden möchten, und der andere wird verwendet, um die Protokolle unseres Datenbuckers zu speichern. Melden Sie sich also einfach in Ihrem AWS -Konto an und suchen Sie nach dem S3 -Dienst mit der Suchleiste oben in Ihrer Verwaltungskonsole.

Klicken Sie nun in der S3 -Konsole auf den Bucket erstellen.

Im Abschnitt Eimer -Erstellung müssen Sie einen Bucket -Namen angeben. Der Bucket -Name muss universell eindeutig sein und darf in keinem anderen AWS -Konto vorhanden sein. Als nächstes müssen Sie die AWS -Region angeben, in der Ihr S3 -Eimer platziert werden soll. Obwohl S3 ein globaler Service ist, was bedeutet, dass er in jeder Region zugänglich sein kann, müssen Sie dennoch definieren, in welcher Region Ihre Daten gespeichert werden. Sie können viele andere Einstellungen wie Versioning, Verschlüsselung, öffentlichen Zugriff usw. verwalten., Aber Sie können sie einfach als Standard lassen.

Scrollen Sie nun nach unten und klicken Sie in der unteren rechten Ecke auf den Eimer erstellen.

Erstellen Sie in ähnlicher Weise einen anderen S3 -Bucket als Zielbucket für die Serverzugriffsprotokolle.

Deshalb haben wir unsere S3 -Buckets erfolgreich zum Hochladen von Daten und Speichern von Protokollen erstellt.

Aktivieren Sie Zugriffsprotokolle mithilfe der AWS -Konsole

Wählen Sie nun aus der S3 -Bucket -Liste den Bucket aus, für den Sie die Serverzugriffsprotokolle aktivieren möchten.

Gehen Sie zur Registerkarte Eigenschaften in der oberen Menüleiste.

Scrollen Sie im Abschnitt Eigenschaften von S3 zum Abschnitt zur Protokollierung des Serverzugriffs und klicken Sie auf die Option Bearbeiten bearbeiten.

Hier wählen Sie die Option aktivieren. Dadurch wird die Access Control List (ACL) Ihres S3 -Bucket automatisch aktualisiert, sodass Sie die Berechtigungen nicht selbst verwalten müssen.

Jetzt müssen Sie den Ziel -Eimer bereitstellen, an dem Ihre Protokolle gespeichert werden. Klicken Sie einfach auf S3 durchsuchen.

Wählen Sie den Eimer aus, den Sie für Zugriffsprotokolle konfigurieren möchten, und klicken Sie auf Wählen Sie Pfad Taste.

NOTIZ: Verwenden Sie niemals denselben Eimer zum Speichern von Serverzugriffsprotokollen wie jedes Protokoll, wenn im Eimer ein anderes Protokoll hinzugefügt wird, und es erzeugt eine unendliche Protokollierungsschleife, die dazu führt Riesige Menge an Rechnung auf Ihrem AWS -Konto.

Sobald der Ziel -Bucket ausgewählt ist, klicken.

Die Zugriffsprotokolle sind jetzt aktiviert und wir können sie im Eimer anzeigen, den wir als Zielbuckel konfiguriert haben. Sie können diese Protokolldateien im Textformat herunterladen und anzeigen.

Daher haben wir erfolgreich Serverzugriffsprotokolle in unserem S3 -Bucket aktiviert. Wenn eine Operation im Eimer durchgeführt wird.

Aktivieren Sie Zugriffsprotokolle mit CLI

Wir haben uns mit AWS Management Console zu tun, um unsere Aufgabe bis jetzt auszuführen. Wir haben es erfolgreich gemacht, aber AWS bietet den Benutzern auch eine weitere Möglichkeit, Dienste und Ressourcen im Konto mithilfe der Befehlszeilenschnittstelle zu verwalten. Einige Leute, die wenig Erfahrung in der Verwendung von CLI haben. Die AWS-Befehlszeilenschnittstelle kann für jede Umgebung eingerichtet werden, entweder Windows, Mac oder Linux, und Sie können auch einfach die AWS-Cloud-Shell in Ihrem Browser öffnen.

Der erste Schritt besteht darin, einfach die Eimer in unserem AWS -Konto zu erstellen, für die wir einfach den folgenden Befehl verwenden müssen.

$: AWS S3API CREATE-BUCKET-BUCKET --Region

Ein Eimer wird unser tatsächlicher Datenbucker sein, bei dem wir unsere Dateien einsetzen, und wir müssen Protokolle auf diesem Eimer aktivieren.

Als nächstes benötigen wir einen weiteren Eimer, bei dem Serverzugriffsprotokolle gespeichert werden.

Um die verfügbaren S3 -Eimer in Ihrem Konto anzuzeigen, können Sie den folgenden Befehl verwenden.

$: AWS S3API LIST-BICKETS

Wenn wir die Protokollierung mithilfe der Konsole aktivieren, weist AWS selbst dem Protokollierungsmechanismus die Erlaubnis zu, Objekte in den Zielbuckel zu setzen. Aber für CLI müssen Sie die Richtlinie selbst beibringen. Wir müssen eine JSON -Datei erstellen und die folgende Richtlinie hinzufügen.

Ersetze das Data_Bucket_Name Und SCRECT_ACCOUNT_ID Mit dem S3 -Bucket -Namen, für den Serverzugriffsprotokolle konfiguriert werden, und die AWS -Konto -ID, in der Quelle S3 Bucket existiert.


"Version": "2012-10-17",
"Stellungnahme": [

"Sid": "S3serveraccessLogspolicy",
"Effekt": "erlauben",
"Principal": "Service": "Protokollierung.S3.Amazonawen.com ",
"Aktion": "S3: PutObject",
"Ressource": "ARN: AWS: S3 ::: Data_Bucket_Name/*",
"Zustand":
"Arnlike": "AWS: Sourcearn": "ARN: AWS: S3 ::: DATA_BUCKET_NAME",
"StringEquals": "AWS: SourceAccount": "Source_Account_id"


]

Wir müssen diese Richtlinie an unseren Ziel -S3 -Bucket anhängen, in dem die Serverzugriffsprotokolle gespeichert werden. Führen Sie den folgenden AWS CLI -Befehl aus, um die Richtlinie mit dem Ziel S3 -Bucket zu konfigurieren.

$: AWS S3API Put-Bucket-Policy-Bucket --Richtliniendatei: // s3_logging_policy.JSON

Unsere Richtlinie ist dem Zielbucket beigefügt, so.

Aktivieren Sie nach dem Anhängen der Richtlinie an den Ziel S3 Bucket nun die Serverzugriffsprotokolle im S3 -Bucket (Daten) der Quelle (Data). Erstellen Sie zuerst eine JSON -Datei mit dem folgenden Inhalt.


"LoggingEnabled":
"TargetBucket": "target_s3_bucket",
"TargetPrefix": "target_prefix"

Um schließlich die S3 -Serverzugriffsprotokollierung für unseren ursprünglichen Bucket zu aktivieren, führen Sie einfach den folgenden Befehl aus.

$: AWS S3API Put-Bucket-Logging-Bucket --Bucket-Logging-Status-Datei: // enable_logging.JSON

Daher haben wir mit der AWS-Befehlszeilenschnittstelle erfolgreich Serverzugriffsprotokolle in unserem S3-Bucket aktiviert.

Abschluss

AWS bietet Ihnen die Möglichkeit, Serverzugriffsprotokolle in Ihren S3 -Eimer einfach zu aktivieren. Die Protokolle geben dem Benutzer IP an, der diese bestimmte Betriebsanforderung, das Datum und die Uhrzeit der Anforderung, die ausgeführte Operationsart und die Frage, ob diese Anfrage erfolgreich war. Die Datenausgabe erfolgt in der Textdatei in Rohform. Sie können jedoch auch Analysen mit erweiterten Tools wie AWS Athena ausführen, um ausgereiftere Ergebnisse dieser Daten zu erhalten.