AWS CloudTrail
Management Cloud Practitioner Solutions Architect Associate

AWS CloudTrail

AWS CloudTrail

Logowanie i audyt kazdego wywolania API na Twoim koncie AWS. Dowiedz sie kto, co, kiedy i skad zrobil - kluczowy serwis do bezpieczenstwa i compliance.

AWS CloudTrail to usluga, ktora rejestruje kazde wywolanie API na Twoim koncie AWS. Kazda akcja - czy to przez konsole, CLI, SDK czy inny serwis AWS - jest logowana jako event z informacja o tym kto ja wykonal, co zrobil, kiedy i skad (adres IP).

CloudTrail to fundament bezpieczenstwa i compliance w AWS. Bez niego nie wiesz kto utworzyl instancje EC2, kto zmienil polityki IAM ani kto skasowal bucket S3. Domyslnie CloudTrail rejestruje management events z ostatnich 90 dni za darmo. Dla pelnego audytu mozesz skonfigurowac trail zapisujacy logi do S3 i analizowac je za pomoca CloudTrail Lake z zapytaniami SQL.

Czy wiesz, ze...

CloudTrail rejestruje ponad 300 typow zdarzen. W 2019 roku AWS ujawnil, ze CloudTrail byl kluczowy w wykryciu Capital One breach - jednego z najwiekszych wyciekow danych w historii. Trail domyslny jest darmowy i przechowuje 90 dni historii bez konfiguracji.

Pro Tip

Stworz Organization Trail z management events + wyslij logi do centralnego bucketa S3 z Object Lock (WORM). Nawet jesli atakujacy przejmie konto, nie usunie logow. Wlacz CloudTrail Lake tylko jesli potrzebujesz SQL queries - jest drogi. Dla wiekszosci przypadkow wystarczy Athena na logach w S3.

Uwaga

CloudTrail domyslnie loguje tylko management events (kto stworzyl/usunql zasob). Data events (kto czytal obiekt z S3, kto wywowal Lambda) wymagaja osobnej konfiguracji i generuja znacznie wyzsze koszty. Dla aktywnego bucketa S3 data events moga kosztowac setki dolarow miesiecznie.

CloudTrail rejestruje kazde wywolanie API w Twoim koncie AWS - kto, co, kiedy i skad zrobil. Kazda akcja w konsoli, CLI, SDK czy innym serwisie AWS generuje zdarzenie (event), ktore CloudTrail zapisuje. To fundamentalny serwis audytu i bezpieczenstwa - bez CloudTrail nie masz zadnego wgladu w to, co dzieje sie w Twoim koncie.

1

Wlaczenie trail - management events

Trail to konfiguracja okreslajaca, ktore zdarzenia sa rejestrowane i gdzie sa dostarczane. Domyslnie CloudTrail rejestruje management events (zdarzenia zarzadzania) - tworzenie, modyfikowanie i usuwanie zasobow AWS (np. CreateBucket, RunInstances, AttachRolePolicy). Kazde konto AWS ma darmowy Event History (90 dni, tylko management events, bez dostarczania do S3). Dla pelnego audytu stworz trail dostarczajacy do S3.

2

Konfiguracja S3 bucket na logi

Trail dostarczy logi jako pliki JSON (skompresowane gzip) do wskazanego S3 bucket. Bucket musi miec odpowiednia policy pozwalajaca CloudTrail na zapis. Wlacz szyfrowanie SSE-KMS (Customer Managed Key) dla pelnej kontroli dostepu do logow. Struktura plikow: s3://bucket/AWSLogs/account-id/CloudTrail/region/yyyy/mm/dd/. Ustaw lifecycle policy - przenies stare logi do S3 Glacier po 90 dniach, usun po roku (zalezne od wymagan compliance).

3

Integracja z CloudWatch Logs

CloudTrail moze wysylac zdarzenia do CloudWatch Logs w czasie niemal rzeczywistym (opoznienie 5-15 minut). To kluczowe dla alertowania - w S3 logi sa dostarczane co kilka minut, ale CloudWatch Logs pozwala tworzyc Metric Filters i Alarms reagujace natychmiast. Typowe alerty: root account login, zmiany Security Groups, usuniecie CloudTrail trail, failed console login. CloudWatch Logs sa dodatkowym kosztem - filtruj tylko istotne zdarzenia.

4

Data events - operacje na danych

Data events rejestruja operacje na poziomie danych (data plane): GetObject/PutObject w S3, Invoke w Lambda, GetItem/PutItem w DynamoDB. Sa wylaczone domyslnie, bo generuja ogromna ilosc zdarzen (i kosztow). Wlaczaj je selektywnie - np. S3 data events tylko dla bucketow z danymi wrażliwymi, Lambda Invoke events dla krytycznych funkcji. Mozesz filtrowac po konkretnych ARN zasobow, zeby ograniczyc wolumen.

5

CloudTrail Insights - wykrywanie anomalii

Insights automatycznie analizuje wzorce wywolan API i wykrywa anomalie - nietypowy wzrost lub spadek liczby wywolan w porownaniu do normalnego poziomu (baseline). Przyklady: nagly wzrost DeleteObject (mozliwy atak lub bledny skrypt), wzmozony ruch RunInstances (crypto mining), spike w AuthorizeSecurityGroupIngress. Insights generuje zdarzenia, ktore mozesz przekierowac do SNS lub EventBridge. Wlacz Insights tylko na trailach z management events.

6

Organization Trail - centralny audyt

Organization Trail zbiera zdarzenia ze wszystkich kont w AWS Organizations do jednego centralnego S3 bucket. Tworzysz go z management account lub delegated administrator account. Wszystkie konta czlonkowskie automatycznie otrzymuja trail - nie moga go usunac ani zmodyfikowac. To jedyny sposob na pelny, tamper-proof audyt calej organizacji. Logi z kazdego konta sa zapisywane w oddzielnym prefixie: AWSLogs/org-id/account-id/.

Praktyczne strategie wykorzystania CloudTrail do audytu bezpieczenstwa, analizy incydentow i optymalizacji kosztow w srodowiskach produkcyjnych.

Organization Trail - obowiazkowy w multi-account

W srodowisku multi-account zawsze uzywaj Organization Trail zamiast oddzielnych trail per konto. Centralny trail zapewnia: jeden S3 bucket z logami calej organizacji, brak mozliwosci wylaczenia trail przez konta czlonkowskie, spatna analize cross-account w Athena. Bucket umiec w dedykowanym koncie Log Archive (zgodnie z AWS Landing Zone). Dodaj S3 Object Lock (compliance mode) dla ochrony przed usunieciem logow.

Zaawansowany

S3 Data Events dla audytu bezpieczenstwa

Wlacz S3 data events na bucketach z danymi wrazliwymi (dane osobowe, finansowe, medyczne). Rejestruj GetObject - pozwala wykryc nieautoryzowany dostep do danych. Nie wlaczaj data events na wszystkich bucketach - koszty rosna liniowo z liczba operacji. Typowe zastosowanie: audyt dostepu do bucket z backupami RDS, monitoring pobrania plikow z danymi klientow. Lacz z Athena do analizy: kto pobral jaki plik i kiedy.

Zaawansowany

CloudTrail Lake - zapytania SQL na zdarzeniach

CloudTrail Lake to managed data lake pozwalajacy odpytywac zdarzenia CloudTrail za pomoca SQL. Nie wymaga konfiguracji Athena, Glue Catalog ani partycjonowania S3 - dane sa automatycznie zindeksowane. Idealny do dochodzen bezpieczenstwa: "pokaz wszystkie dzialania uzytkownika X w ciagu ostatnich 30 dni" albo "kto zmienial Security Groups w produkcji". Retencja do 7 lat. Koszt zalezy od wolumenu zdarzen - drogi przy duzym ruchu.

Zaawansowany

Insights - automatyczne wykrywanie anomalii

CloudTrail Insights buduje baseline normalnej aktywnosci API i alarmuje przy odchyleniach. Nie wymaga definiowania progow - uczy sie wzorcow automatycznie. Polacz Insights z EventBridge rule kierujacym do SNS (Slack notification) lub Lambda (automatyczna reakcja). Typowe wykrycia: spike w CreateAccessKey (mozliwy credential stuffing), nagly wzrost DescribeInstances (rekonesans), nietypowy wolumen DeleteObject (ransomware).

Poczatkujacy

Log file validation - integralnosc logow

Wlacz log file validation na kazdym trail. CloudTrail generuje hash digest co godzine, podpisany cyfrowo - pozwala zweryfikowac, ze pliki logow nie zostaly zmodyfikowane, usuniete ani podrobione po dostarczeniu do S3. Kluczowe dla compliance (PCI-DSS, SOC 2) i dochodzen forensycznych - bez walidacji logi nie sa wiarygodnym dowodem. Uzyj AWS CLI: aws cloudtrail validate-logs do weryfikacji.

Poczatkujacy

Optymalizacja kosztow - wylaczenie zdarzen KMS

Serwisy AWS uzywajace szyfrowania KMS (S3, EBS, RDS, DynamoDB) generuja ogromna liczbe zdarzen KMS (Encrypt, Decrypt, GenerateDataKey). Te zdarzenia stanowia nawet 80-90% calkowitego wolumenu CloudTrail i znaczaco podnosza koszty S3 storage i CloudTrail Lake. Wyklucz zdarzenia KMS z trail uzywajac event selector z ExcludeManagementEventSources: ["kms.amazonaws.com"]. Zachowaj je tylko jesli masz konkretny wymog audytu KMS.

Poczatkujacy

Screenshoty z AWS Console

Wkrotce pojawia sie tu zrzuty ekranu pokazujace jak korzystac z AWS CloudTrail bezposrednio w konsoli AWS.

Do czego sluzy AWS CloudTrail?

01

Audyt bezpieczenstwa

Sprawdz kto zmodyfikowal Security Groups, kto logowal sie do konsoli, kto zmienil polityki IAM. Kluczowe dla analizy incydentow bezpieczenstwa.

02

Compliance i regulacje

Spelniaj wymagania regulacyjne (SOC 2, HIPAA, PCI DSS) dzieki pelnej sciezce audytu. Przechowuj logi przez wymagany okres w S3.

03

Rozwiazywanie problemow

Szukaj przyczyny problemow operacyjnych. Kto skasowal baze danych? Kto zmienil konfiguracje load balancera? CloudTrail ma odpowiedz.

04

Monitoring organizacji

Organization Trail loguje eventy ze wszystkich kont w AWS Organization. Centralny widok aktywnosci calej organizacji.

Co musisz wiedziec?

Management Events

Eventy dotyczace zarzadzania zasobami AWS: tworzenie instancji EC2, zmiana polityk IAM, konfiguracja VPC. Domyslnie logowane za darmo (90 dni).

Data Events

Eventy dotyczace operacji na danych: odczyt/zapis obiektow S3, wywolania funkcji Lambda, zapytania DynamoDB. Nie sa logowane domyslnie - trzeba je jawnie wlaczyc.

Trail

Konfiguracja okresla jacy eventy maja byc logowane i gdzie zapisywane (bucket S3). Trail moze obejmowac jeden region, wszystkie regiony lub cala organizacje.

CloudTrail Lake

Zarzadzany data lake do przechowywania i analizowania eventow CloudTrail za pomoca zapytan SQL. Alternatywa dla przeszukiwania plikow JSON w S3.

Event History

Domyslny widok w konsoli pokazujacy management events z ostatnich 90 dni. Dostepny za darmo, bez koniecznosci konfigurowania trail.

Insights Events

Automatyczne wykrywanie nietypowej aktywnosci API. Np. nagly wzrost liczby wywolan TerminateInstances moze wskazywac na atak lub blad w skrypcie.

Architektura: Centralny audyt z CloudTrail

Architektura centralnego logowania i analizy zdarzen API. CloudTrail zbiera zdarzenia ze wszystkich kont, dostarcza do S3 i CloudWatch Logs, a Athena i EventBridge umozliwiaja analize i automatyczne reagowanie na incydenty.

AWS API Calls Kazde wywolanie API w koncie: konsola, CLI, SDK, serwisy
rejestracja zdarzen
CloudTrail
CloudTrail Rejestruje zdarzenia, waliduje integralnosc, wykrywa anomalie (Insights)
dostarczanie logow
S3 (Log Archive)
S3 (Log Archive) Centralny bucket z logami, szyfrowanie KMS, Object Lock
streaming
CloudWatch Logs
CloudWatch Logs Logi w czasie rzeczywistym, Metric Filters, alarmy bezpieczenstwa
analiza SQL
Athena
Athena Zapytania SQL na logach S3 - analiza incydentow i audyt
alerty
EventBridge
EventBridge Reguly reagujace na zdarzenia: root login, zmiana SG, usuniecie trail
Organization Trail zbiera zdarzenia ze wszystkich kont - konta czlonkowskie nie moga go wylaczc ani zmodyfikowac.
Log file validation z hashami digest potwierdza, ze logi nie zostaly zmodyfikowane po dostarczeniu.
Wylaczenie zdarzen KMS z trail moze zredukowac wolumen (i koszty) nawet o 80-90%.

Porownanie CloudTrail vs CloudWatch vs Config

Serwis Co sledzi Glowne pytanie Dane Retencja domyslna Koszt bazowy Najlepszy dla
CloudTrail Kto co zrobil (API calls) Kto usunql ten bucket? Zdarzenia API (management/data) 90 dni (darmowa) Darmowy (1 trail, management events) Audyt bezpieczenstwa, compliance
CloudWatch Jak dziala (metryki, logi) Dlaczego CPU jest na 100%? Metryki, logi, alarmy 15 mies. metryki, custom logi Darmowy (basic metrics) Monitoring wydajnosci, alerty
AWS Config Jak wyglada (konfiguracja) Czy security group sie zmienila? Snapshoty konfiguracji zasobow Brak limitu (platne) $0.003/recorded item Compliance, change tracking

Ile kosztuje AWS CloudTrail?

Event History (darmowe)

Management events z ostatnich 90 dni sa dostepne za darmo w konsoli i przez API.

90 dni management events - $0

Trail - Management Events

Pierwsza kopia management events do S3 jest darmowa. Dodatkowe kopie sa platne.

Pierwszy trail: darmowy. Dodatkowe: $2.00 za 100 000 eventow

Trail - Data Events

Data events (S3, Lambda, DynamoDB) sa zawsze platne i generuja znacznie wiecej logow.

$0.10 za 100 000 data events

CloudTrail Lake

Platisz za ingest (zapisywanie) i zapytania SQL. Dane moga byc przechowywane do 7 lat.

Ingest: $2.50/GB. Zapytania: $0.005/GB skanowanych danych

Przyklady AWS CLI

Sprawdz ostatnie eventy

Wyswietla ostatnie management events z Event History

aws cloudtrail lookup-events \
 --lookup-attributes AttributeKey=EventName,AttributeValue=ConsoleLogin \
 --query "Events[].{Czas:EventTime,Kto:Username,Event:EventName,IP:SourceIPAddress}" \
 --output table

Utworz trail

Tworzy trail logujacy eventy ze wszystkich regionow do bucketa S3

aws cloudtrail create-trail \
 --name moj-trail-audyt \
 --s3-bucket-name moj-bucket-cloudtrail-logi \
 --is-multi-region-trail \
 --enable-log-file-validation \
 --include-global-service-events

Wlacz trail

Uruchamia logowanie eventow dla trail

aws cloudtrail start-logging \
 --name moj-trail-audyt

Sprawdz status trail

Wyswietla informacje o skonfigurowanych trails

aws cloudtrail describe-trails \
 --query "trailList[].{Nazwa:Name,S3Bucket:S3BucketName,MultiRegion:IsMultiRegionTrail,LogValidation:LogFileValidationEnabled}" \
 --output table

Quiz: AWS CloudTrail

Sprawdz czy dobrze rozumiesz podstawy. Kliknij odpowiedz — feedback pojawi sie od razu.

Twoj wynik: 0 / 4

1. Jak dlugo CloudTrail przechowuje management events za darmo w Event History?

2. Jaka jest roznica miedzy management events a data events?

3. Co to jest CloudTrail Lake?

4. Co rejestruje CloudTrail dla kazdego eventu?

Chcesz poznac AWS CloudTrail w praktyce?

Darmowy kurs "AWS od podstaw" pokazuje jak uzywac AWS CloudTrail krok po kroku. Teoria + praktyka od zera.

Zacznij darmowy kurs Wszystkie serwisy