Publikasikan log aliran ke CloudWatch Log - Amazon Virtual Private Cloud

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Publikasikan log aliran ke CloudWatch Log

Log aliran dapat mempublikasikan data log aliran langsung ke Amazon CloudWatch.

Saat memublikasikan ke CloudWatch Log, data log aliran dipublikasikan ke grup log, dan setiap antarmuka jaringan memiliki aliran log unik di grup log. Pengaliran log berisi catatan log alur. Anda dapat membuat beberapa log alur yang menerbitkan data ke grup log yang sama. Jika antarmuka jaringan yang sama hadir dalam satu atau lebih pengaliran log dalam grup log yang sama, maka akan memiliki satu pengaliran log gabungan. Jika Anda telah menetapkan bahwa satu log alur harus menangkap lalu lintas yang ditolak, dan log alur lainnya harus menangkap lalu lintas yang diterima, maka pengaliran log gabungan menangkap semua lalu lintas.

Di CloudWatch Log, bidang stempel waktu sesuai dengan waktu mulai yang ditangkap dalam catatan log aliran. Bidang ingestionTime menunjukkan tanggal dan waktu ketika catatan log aliran diterima oleh Log. CloudWatch Stempel waktu ini lebih lambat dari waktu akhir yang ditangkap dalam catatan log alur.

Untuk informasi selengkapnya tentang CloudWatch Log, lihat Log yang dikirim ke CloudWatch Log di Panduan Pengguna CloudWatch Log Amazon.

Harga

Biaya konsumsi data dan arsip untuk log vended berlaku saat Anda memublikasikan log aliran ke Log. CloudWatch Untuk informasi selengkapnya, buka CloudWatch Harga Amazon, pilih Log dan temukan Log Terjual.

Peran IAM untuk menerbitkan log alur ke CloudWatch Log

Peran IAM yang terkait dengan log alur Anda harus memiliki izin yang cukup untuk mempublikasikan log aliran ke grup log yang ditentukan di CloudWatch Log. Peran IAM harus menjadi milik AWS akun Anda.

Kebijakan IAM yang dilampirkan ke IAM role Anda harus menyertakan setidaknya izin berikut.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents", "logs:DescribeLogGroups", "logs:DescribeLogStreams" ], "Resource": "*" } ] }

Pastikan peran Anda memiliki kebijakan kepercayaan berikut, yang memungkinkan layanan flow logs untuk mengambil peran tersebut.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "vpc-flow-logs.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

Kami menyarankan Anda menggunakan kunci syarat aws:SourceAccount dan aws:SourceArn untuk melindungi diri Anda dari masalah wakil yang membingungkan. Misalnya, Anda dapat menambahkan blok kondisi berikut ke kebijakan kepercayaan sebelumnya. Akun sumber adalah pemilik log aliran dan sumber ARN adalah ARN log aliran. Jika Anda tidak mengetahui ID log alur, Anda dapat mengganti bagian ARN tersebut dengan wildcard (*) dan kemudian memperbarui kebijakan setelah Anda membuat log alur.

"Condition": { "StringEquals": { "aws:SourceAccount": "account_id" }, "ArnLike": { "aws:SourceArn": "arn:aws:ec2:region:account_id:vpc-flow-log/flow-log-id" } }

Buat peran IAM untuk log aliran

Anda dapat memperbarui peran yang ada seperti dijelaskan di atas. Atau, Anda dapat menggunakan prosedur berikut untuk membuat peran baru untuk digunakan dengan log aliran. Anda akan menentukan peran ini saat membuat log alur.

Untuk membuat IAM role untuk log alur
  1. Buka konsol IAM di https://console.aws.amazon.com/iam/.

  2. Di panel navigasi, pilih Kebijakan.

  3. Pilih Buat kebijakan.

  4. Pada halaman Buat kebijakan, lakukan hal berikut:

    1. PilihJSON.

    2. Ganti isi jendela ini dengan kebijakan izin di awal bagian ini.

    3. Pilih Berikutnya.

    4. Masukkan nama untuk kebijakan Anda serta deskripsi dan tag opsional, lalu pilih Buat kebijakan.

  5. Di panel navigasi, pilih Peran.

  6. Pilih Buat peran.

  7. Untuk jenis entitas Tepercaya, pilih Kebijakan kepercayaan khusus. Untuk kebijakan kepercayaan kustom, ganti "Principal": {}, dengan yang berikut ini, lalu pilih Berikutnya.

    "Principal": { "Service": "vpc-flow-logs.amazonaws.com" },
  8. Pada halaman Tambahkan izin, pilih kotak centang untuk kebijakan yang Anda buat sebelumnya dalam prosedur ini, lalu pilih Berikutnya.

  9. Masukkan nama untuk peran Anda dan berikan deskripsi secara opsional.

  10. Pilih Buat peran.

Izin untuk prinsipal IAM yang menerbitkan log aliran ke Log CloudWatch

Pengguna harus memiliki izin untuk menggunakan iam:PassRole tindakan untuk peran IAM yang terkait dengan log alur.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": ["iam:PassRole"], "Resource": "arn:aws:iam::account-id:role/flow-log-role-name" } ] }

Buat log alur yang diterbitkan ke CloudWatch Log

Anda dapat membuat log alur untuk VPC, subnet, atau antarmuka jaringan. Jika Anda melakukan langkah-langkah ini sebagai pengguna menggunakan peran IAM tertentu, pastikan peran tersebut memiliki izin untuk menggunakan tindakan tersebutiam:PassRole. Untuk informasi selengkapnya, lihat Izin untuk prinsipal IAM yang menerbitkan log aliran ke Log CloudWatch .

Prasyarat
Untuk membuat log aliran menggunakan konsol
  1. Lakukan salah satu hal berikut:

  2. Pilih Tindakan, Buat log alur.

  3. Untuk Filter, tentukan jenis lalu lintas ke log. Pilih Semua ke log lalu lintas diterima dan ditolak, Tolak ke log hanya lalu lintas yang ditolak, atau Terima ke log hanya lalu lintas yang diterima.

  4. Untuk Interval agregasi maksimum, pilih periode waktu maksimum selama aliran ditangkap dan dikumpulkan ke dalam satu catatan log alur.

  5. Untuk Tujuan, pilih Kirim ke CloudWatch Log.

  6. Untuk grup log Tujuan, pilih nama grup log yang ada atau masukkan nama grup log baru yang akan dibuat saat Anda membuat log alur ini.

  7. Untuk peran IAM, tentukan nama peran yang memiliki izin untuk menerbitkan log ke CloudWatch Log.

  8. Untuk Format catatan log, pilih format untuk catatan log alur.

    • Untuk menggunakan format default, pilih format default AWS .

    • Untuk menggunakan format kustom, pilih Format kustom dan kemudian pilih bidang dari Format log.

  9. (Opsional) Pilih Tambahkan tag baru untuk menerapkan tag ke log alur.

  10. Pilih Buat log alur.

Untuk membuat log alur menggunakan baris perintah

Gunakan salah satu perintah berikut ini.

AWS CLI Contoh berikut membuat log aliran yang menangkap semua lalu lintas yang diterima untuk subnet yang ditentukan. Log aliran dikirim ke grup log yang ditentukan. --deliver-logs-permission-arnParameter menentukan peran IAM yang diperlukan untuk mempublikasikan ke CloudWatch Log.

aws ec2 create-flow-logs --resource-type Subnet --resource-ids subnet-1a2b3c4d --traffic-type ACCEPT --log-group-name my-flow-logs --deliver-logs-permission-arn arn:aws:iam::123456789101:role/publishFlowLogs

Melihat catatan log alur

Anda dapat melihat catatan log alur menggunakan konsol CloudWatch Log. Setelah Anda membuat log alur, mungkin perlu beberapa menit agar dapat terlihat di konsol.

Untuk melihat catatan log alur yang dipublikasikan ke CloudWatch Log menggunakan konsol
  1. Buka CloudWatch konsol di https://console.aws.amazon.com/cloudwatch/.

  2. Di panel navigasi, pilih Log, Grup log.

  3. Pilih nama grup log yang berisi log aliran Anda untuk membuka halaman detailnya.

  4. Pilih nama aliran log yang berisi catatan log aliran. Untuk informasi selengkapnya, lihat Catatan log alur.

Untuk melihat catatan log alur yang diterbitkan ke CloudWatch Log menggunakan baris perintah

Cari catatan log alur

Anda dapat mencari catatan log alur yang dipublikasikan ke CloudWatch Log menggunakan konsol CloudWatch Log. Anda dapat menggunakan filter metrik untuk menyaring catatan log alur. Catatan log alur adalah ruang yang dibatasi.

Untuk mencari catatan log alur menggunakan konsol CloudWatch Log
  1. Buka CloudWatch konsol di https://console.aws.amazon.com/cloudwatch/.

  2. Di panel navigasi, pilih Log, Grup log.

  3. Pilih grup log yang berisi log aliran Anda, lalu pilih aliran log, jika Anda tahu antarmuka jaringan yang Anda cari. Atau, pilih Cari grup log. Tindakan ini mungkin membutuhkan waktu lama jika ada banyak antarmuka jaringan di grup log Anda, atau tergantung pada rentang waktu yang Anda pilih.

  4. Di bawah Filter peristiwa, masukkan string di bawah ini. Ini mengasumsikan bahwa catatan log alur menggunakan format default.

    [version, accountid, interfaceid, srcaddr, dstaddr, srcport, dstport, protocol, packets, bytes, start, end, action, logstatus]
  5. Ubah filter sesuai kebutuhan dengan menentukan nilai untuk bidang. Contoh berikut adalah filter berdasarkan alamat IP sumber tertentu.

    [version, accountid, interfaceid, srcaddr = 10.0.0.1, dstaddr, srcport, dstport, protocol, packets, bytes, start, end, action, logstatus] [version, accountid, interfaceid, srcaddr = 10.0.2.*, dstaddr, srcport, dstport, protocol, packets, bytes, start, end, action, logstatus]

    Contoh berikut adalah filter berdasarkan port tujuan, jumlah byte, dan apakah lalu lintas ditolak.

    [version, accountid, interfaceid, srcaddr, dstaddr, srcport, dstport = 80 || dstport = 8080, protocol, packets, bytes, start, end, action, logstatus] [version, accountid, interfaceid, srcaddr, dstaddr, srcport, dstport = 80 || dstport = 8080, protocol, packets, bytes >= 400, start, end, action = REJECT, logstatus]

Proses catatan log alur di CloudWatch Log

Anda dapat bekerja dengan catatan log alur seperti yang Anda lakukan dengan peristiwa log lainnya yang dikumpulkan oleh CloudWatch Log. Untuk informasi selengkapnya tentang memantau data log dan filter metrik, lihat Mencari dan Memfilter Data Log di Panduan CloudWatch Pengguna Amazon.

Contoh: Membuat filter CloudWatch metrik dan alarm untuk log aliran

Dalam contoh ini, Anda memiliki log alur untuk eni-1a2b3c4d. Anda ingin membuat alarm yang memperingatkan Anda jika ada 10 percobaan penolakan atau lebih untuk terkoneksi ke instans Anda melalui TCP port 22 (SSH) dalam jangka waktu 1 jam. Pertama, Anda harus membuat filter metrik yang sesuai dengan pola lalu lintas yang untuknya harus membuat alarm. Setelah itu, Anda dapat membuat alarm untuk filter metrik.

Untuk membuat filter metrik untuk lalu lintas SSH yang ditolak dan membuat alarm untuk filter
  1. Buka CloudWatch konsol di https://console.aws.amazon.com/cloudwatch/.

  2. Di panel navigasi, pilih Log, Grup log.

  3. Pilih kotak centang untuk grup log, lalu pilih Tindakan, Buat filter metrik.

  4. Untuk pola Filter, masukkan string berikut.

    [version, account, eni, source, destination, srcport, destport="22", protocol="6", packets, bytes, windowstart, windowend, action="REJECT", flowlogstatus]
  5. Untuk Pilih data log yang akan diuji, pilih aliran log untuk antarmuka jaringan Anda. (Opsional) Untuk melihat baris data log yang cocok dengan pola filter, pilih Pola uji.

  6. Saat Anda siap, pilih Berikutnya.

  7. Masukkan nama filter, namespace metrik, dan nama metrik. Tetapkan nilai metrik ke 1. Setelah selesai, pilih Berikutnya dan kemudian pilih Buat filter metrik.

  8. Pada panel navigasi, pilih Alarm, Semua alarm.

  9. Pilih Buat alarm.

  10. Pilih nama metrik yang Anda buat lalu pilih Pilih metrik.

  11. Konfigurasikan alarm sebagai berikut, lalu pilih Next (Selanjutnya):

    • Untuk Statistik pilih Jumlah. Ini memastikan bahwa Anda menangkap jumlah total titik data untuk periode waktu yang ditentukan.

    • Untuk Periode, pilih 1 jam.

    • Untuk Kapan TimeSinceLastActive pun... , pilih Greater/Equal dan masukkan 10 untuk ambang batas.

    • Untuk konfigurasi Tambahan, Datapoint ke alarm, biarkan default 1.

  12. Pilih Berikutnya.

  13. Untuk Pemberitahuan, pilih topik SNS yang ada atau pilih Buat topik baru untuk membuat topik baru. Pilih Berikutnya.

  14. Masukkan nama dan deskripsi untuk alarm dan pilih Berikutnya.

  15. Setelah selesai melihat pratinjau alarm, pilih Buat alarm.