Metrik sisi perangkat - AWSIoT Device Defender

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

Metrik sisi perangkat

Saat membuat Profil Keamanan, Anda dapat menentukan perilaku yang diharapkan perangkat IoT Anda dengan mengonfigurasi perilaku dan ambang batas untuk metrik yang dihasilkan oleh perangkat IoT. Berikut ini adalah metrik sisi perangkat, yang merupakan metrik dari agen yang Anda instal di perangkat Anda.

Byte keluar () aws:all-bytes-out

Jumlah byte keluar dari perangkat selama periode waktu tertentu.

Gunakan metrik ini untuk menentukan jumlah maksimum atau minimum lalu lintas keluar yang harus dikirim perangkat, diukur dalam byte, dalam periode waktu tertentu.

Kompatibel dengan: Aturan Deteksi | Deteksi Deteksi

Operator: kurang dari | | lebih besar-dari less-than-equals | greater-than-equals

Nilai: bilangan bulat non-negatif

Unit: byte

Durasi: bilangan bulat non-negatif. Nilai yang valid adalah 300, 600, 900, 1800, atau 3600 detik.

contoh
{ "name": "TCP outbound traffic", "metric": "aws:all-bytes-out", "criteria": { "comparisonOperator": "less-than-equals", "value": { "count": 4096 }, "durationSeconds": 300, "consecutiveDatapointsToAlarm": 1, "consecutiveDatapointsToClear": 1 }, "suppressAlerts": true }
contoh Contoh menggunakan statisticalThreshold
{ "name": "TCP outbound traffic", "metric": "aws:all-bytes-out", "criteria": { "comparisonOperator": "less-than-equals", "statisticalThreshold": { "statistic": "p50" }, "durationSeconds": 900, "consecutiveDatapointsToAlarm": 1, "consecutiveDatapointsToClear": 1 }, "suppressAlerts": true }
contoh Contoh menggunakan Detect Detect
{ "name": "Outbound traffic ML behavior", "metric": "aws:all-bytes-out", "criteria": { "consecutiveDatapointsToAlarm": 1, "consecutiveDatapointsToClear": 1, "mlDetectionConfig": { "confidenceLevel": "HIGH" } }, "suppressAlerts": true }

Byte di () aws:all-bytes-in

Jumlah byte masuk ke perangkat selama periode waktu tertentu.

Gunakan metrik ini untuk menentukan jumlah maksimum atau minimum lalu lintas masuk yang harus diterima perangkat, diukur dalam byte, dalam periode waktu tertentu.

Kompatibel dengan: Aturan Deteksi | Deteksi Deteksi

Operator: kurang dari | | lebih besar-dari less-than-equals | greater-than-equals

Nilai: bilangan bulat non-negatif

Unit: byte

Durasi: bilangan bulat non-negatif. Nilai yang valid adalah 300, 600, 900, 1800, atau 3600 detik.

contoh
{ "name": "TCP inbound traffic", "metric": "aws:all-bytes-in", "criteria": { "comparisonOperator": "less-than-equals", "value": { "count": 4096 }, "durationSeconds": 300, "consecutiveDatapointsToAlarm": 1, "consecutiveDatapointsToClear": 1 }, "suppressAlerts": true }
contoh Contoh menggunakan statisticalThreshold
{ "name": "TCP inbound traffic", "metric": "aws:all-bytes-in", "criteria": { "comparisonOperator": "less-than-equals", "statisticalThreshold": { "statistic": "p90" }, "durationSeconds": 300, "consecutiveDatapointsToAlarm": 1, "consecutiveDatapointsToClear": 1 }, "suppressAlerts": true }
contoh Contoh menggunakan Detect Detect
{ "name": "Inbound traffic ML behavior", "metric": "aws:all-bytes-in", "criteria": { "consecutiveDatapointsToAlarm": 1, "consecutiveDatapointsToClear": 1, "mlDetectionConfig": { "confidenceLevel": "HIGH" } }, "suppressAlerts": true }

Mendengarkan jumlah port TCP () aws:num-listening-tcp-ports

Jumlah port TCP yang didengarkan perangkat.

Gunakan metrik ini untuk menentukan jumlah maksimum port TCP yang harus dipantau setiap perangkat.

Kompatibel dengan: Aturan Deteksi | Deteksi Deteksi

Unit: kegagalan

Operator: kurang dari | | lebih besar-dari less-than-equals | greater-than-equals

Nilai: bilangan bulat non-negatif

Unit: kegagalan

Durasi: bilangan bulat non-negatif. Nilai yang valid adalah 300, 600, 900, 1800, atau 3600 detik.

contoh
{ "name": "Max TCP Ports", "metric": "aws:num-listening-tcp-ports", "criteria": { "comparisonOperator": "less-than-equals", "value": { "count": 5 }, "durationSeconds": 300, "consecutiveDatapointsToAlarm": 1, "consecutiveDatapointsToClear": 1 }, "suppressAlerts": true }
contoh Contoh menggunakan statisticalThreshold
{ "name": "Max TCP Ports", "metric": "aws:num-listening-tcp-ports", "criteria": { "comparisonOperator": "less-than-equals", "statisticalThreshold": { "statistic": "p50" }, "durationSeconds": 300, "consecutiveDatapointsToAlarm": 1, "consecutiveDatapointsToClear": 1 }, "suppressAlerts": true }
contoh Contoh menggunakan deteksi ML
{ "name": "Max TCP Port ML behavior", "metric": "aws:num-listening-tcp-ports", "criteria": { "consecutiveDatapointsToAlarm": 1, "consecutiveDatapointsToClear": 1, "mlDetectionConfig": { "confidenceLevel": "HIGH" } }, "suppressAlerts": true }

Mendengarkan jumlah port UDP () aws:num-listening-udp-ports

Jumlah port UDP yang didengarkan perangkat.

Gunakan metrik ini untuk menentukan jumlah maksimum port UDP yang harus dipantau setiap perangkat.

Kompatibel dengan: Aturan Deteksi | Deteksi Deteksi

Unit: kegagalan

Operator: kurang dari | | lebih besar-dari less-than-equals | greater-than-equals

Nilai: bilangan bulat non-negatif

Unit: kegagalan

Durasi: bilangan bulat non-negatif. Nilai yang valid adalah 300, 600, 900, 1800, atau 3600 detik.

contoh
{ "name": "Max UDP Ports", "metric": "aws:num-listening-udp-ports", "criteria": { "comparisonOperator": "less-than-equals", "value": { "count": 5 }, "durationSeconds": 300, "consecutiveDatapointsToAlarm": 1, "consecutiveDatapointsToClear": 1 }, "suppressAlerts": true }
contoh Contoh menggunakan statisticalThreshold
{ "name": "Max UDP Ports", "metric": "aws:num-listening-udp-ports", "criteria": { "comparisonOperator": "less-than-equals", "statisticalThreshold": { "statistic": "p50" }, "durationSeconds": 300, "consecutiveDatapointsToAlarm": 1, "consecutiveDatapointsToClear": 1 }, "suppressAlerts": true }
contoh Contoh menggunakan Detect Detect
{ "name": "Max UPD Port ML behavior", "metric": "aws:num-listening-tcp-ports", "criteria": { "consecutiveDatapointsToAlarm": 1, "consecutiveDatapointsToClear": 1, "mlDetectionConfig": { "confidenceLevel": "HIGH" } }, "suppressAlerts": true }

Paket keluar () aws:all-packets-out

Jumlah paket keluar dari perangkat selama periode waktu tertentu.

Gunakan metrik ini untuk menentukan jumlah maksimum atau minimum total lalu lintas keluar yang harus dikirim perangkat dalam periode waktu tertentu.

Kompatibel dengan: Aturan Deteksi | Deteksi Deteksi

Operator: kurang dari | | lebih besar-dari less-than-equals | greater-than-equals

Nilai: bilangan bulat non-negatif

Unit: paket

Durasi: bilangan bulat non-negatif. Nilai yang valid adalah 300, 600, 900, 1800, atau 3600 detik.

contoh
{ "name": "TCP outbound traffic", "metric": "aws:all-packets-out", "criteria": { "comparisonOperator": "less-than-equals", "value": { "count": 100 }, "durationSeconds": 300, "consecutiveDatapointsToAlarm": 1, "consecutiveDatapointsToClear": 1 }, "suppressAlerts": true }
contoh Contoh menggunakan statisticalThreshold
{ "name": "TCP outbound traffic", "metric": "aws:all-packets-out", "criteria": { "comparisonOperator": "less-than-equals", "statisticalThreshold": { "statistic": "p90" }, "durationSeconds": 300, "consecutiveDatapointsToAlarm": 1, "consecutiveDatapointsToClear": 1 }, "suppressAlerts": true }
contoh Contoh menggunakan Detect Detect
{ "name": "Outbound sent ML behavior", "metric": "aws:all-packets-out", "criteria": { "consecutiveDatapointsToAlarm": 1, "consecutiveDatapointsToClear": 1, "mlDetectionConfig": { "confidenceLevel": "HIGH" } }, "suppressAlerts": true }

Paket di () aws:all-packets-in

Jumlah paket inbound ke perangkat selama periode waktu tertentu.

Gunakan metrik ini untuk menentukan jumlah maksimum atau minimum total lalu lintas masuk yang harus diterima perangkat dalam periode waktu tertentu.

Kompatibel dengan: Rule Detect | Detect Detect

Operator: kurang dari | | lebih besar-dari less-than-equals | greater-than-equals

Nilai: bilangan bulat non-negatif

Unit: paket

Durasi: bilangan bulat non-negatif. Nilai yang valid adalah 300, 600, 900, 1800 atau 3600 detik.

contoh
{ "name": "TCP inbound traffic", "metric": "aws:all-packets-in", "criteria": { "comparisonOperator": "less-than-equals", "value": { "count": 100 }, "durationSeconds": 300, "consecutiveDatapointsToAlarm": 1, "consecutiveDatapointsToClear": 1 }, "suppressAlerts": true }

Contoh menggunakan statisticalThreshold

{ "name": "TCP inbound traffic", "metric": "aws:all-packets-in", "criteria": { "comparisonOperator": "less-than-equals", "statisticalThreshold": { "statistic": "p90" }, "durationSeconds": 300, "consecutiveDatapointsToAlarm": 1, "consecutiveDatapointsToClear": 1 }, "suppressAlerts": true }
contoh Contoh menggunakan Detect Detect
{ "name": "Inbound sent ML behavior", "metric": "aws:all-packets-in", "criteria": { "consecutiveDatapointsToAlarm": 1, "consecutiveDatapointsToClear": 1, "mlDetectionConfig": { "confidenceLevel": "HIGH" } }, "suppressAlerts": true }

IP Tujuan () aws:destination-ip-addresses

Satu set tujuan IP.

Gunakan metrik ini untuk menentukan satu set Routing Antar-Domain Tanpa Kelas (CIDR) yang diizinkan (sebelumnya disebut daftar putih) atau ditolak (sebelumnya disebut sebagai daftar hitam) Classless Inter-Domain Routing (CIDR) dari mana setiap perangkat harus atau tidak boleh terhubung. AWS IoT

Kompatibel dengan: Aturan Deteksi

Operator: in-cidr-set | not-in-cidr-set

Nilai: daftar CIDR

Satuan: n/a

contoh
{ "name": "Denied source IPs", "metric": "aws:destination-ip-address", "criteria": { "comparisonOperator": "not-in-cidr-set", "value": { "cidrs": [ "12.8.0.0/16", "15.102.16.0/24" ] } }, "suppressAlerts": true }

Mendengarkan port TCP () aws:listening-tcp-ports

Port TCP yang didengarkan perangkat.

Gunakan metrik ini untuk menentukan satu set port TCP yang diizinkan (sebelumnya disebut sebagai daftar putih) atau ditolak (sebelumnya disebut daftar hitam) port TCP di mana setiap perangkat harus atau tidak boleh mendengarkan.

Kompatibel dengan: Aturan Deteksi

Operator: in-port-set | not-in-port-set

Nilai: daftar port

Satuan: n/a

{ "name": "Listening TCP Ports", "metric": "aws:listening-tcp-ports", "criteria": { "comparisonOperator": "in-port-set", "value": { "ports": [ 443, 80 ] } }, "suppressAlerts": true }

Mendengarkan port UDP () aws:listening-udp-ports

Port UDP yang didengarkan perangkat.

Gunakan metrik ini untuk menentukan satu set port UDP yang diizinkan (sebelumnya disebut sebagai daftar putih) atau ditolak (sebelumnya disebut daftar hitam) port UDP di mana setiap perangkat harus atau tidak boleh mendengarkan.

Kompatibel dengan: Aturan Deteksi

Operator: in-port-set | not-in-port-set

Nilai: daftar port

Satuan: n/a

{ "name": "Listening UDP Ports", "metric": "aws:listening-udp-ports", "criteria": { "comparisonOperator": "in-port-set", "value": { "ports": [ 1025, 2000 ] } } }

Jumlah koneksi TCP yang mapan () aws:num-established-tcp-connections

Jumlah koneksi TCP untuk perangkat.

Gunakan metrik ini untuk menentukan jumlah maksimum atau minimum koneksi TCP aktif yang harus dimiliki setiap perangkat (Semua status TCP).

Kompatibel dengan: Aturan Deteksi | Deteksi Deteksi

Operator: kurang dari | | lebih besar-dari less-than-equals | greater-than-equals

Nilai: bilangan bulat non-negatif

Unit: koneksi

contoh
{ "name": "TCP Connection Count", "metric": "aws:num-established-tcp-connections", "criteria": { "comparisonOperator": "less-than-equals", "value": { "count": 3 }, "consecutiveDatapointsToAlarm": 1, "consecutiveDatapointsToClear": 1 }, "suppressAlerts": true }
contoh Contoh menggunakan statisticalThreshold
{ "name": "TCP Connection Count", "metric": "aws:num-established-tcp-connections", "criteria": { "comparisonOperator": "less-than-equals", "statisticalThreshold": { "statistic": "p90" }, "durationSeconds": 900, "consecutiveDatapointsToAlarm": 1, "consecutiveDatapointsToClear": 1 }, "suppressAlerts": true }
contoh Contoh menggunakan Detect Detect
{ "name": "Connection count ML behavior", "metric": "aws:num-established-tcp-connections", "criteria": { "consecutiveDatapointsToAlarm": 1, "consecutiveDatapointsToClear": 1, "mlDetectionConfig": { "confidenceLevel": "HIGH" } }, "suppressAlerts": true }

Spesifikasi dokumen metrik perangkat

Struktur keseluruhan

Nama panjang

Nama pendek

Wajib

Jenis

Batasan

Catatan

header

hed

Y

Objek

Blok lengkap diperlukan untuk laporan yang terbentuk dengan baik.

metrik

bertemu

Y

Objek

Sebuah laporan dapat memiliki keduanya atau setidaknya satu metrics atau custom_metrics blok.

custom_metrics

cmet

Y

Objek

Sebuah laporan dapat memiliki keduanya atau setidaknya satu metrics atau custom_metrics blok.

Blok header

Nama panjang

Nama pendek

Wajib

Jenis

Batasan

Catatan

report_id

menyingkirkan

Y

Bilangan Bulat

Nilai yang meningkat secara monoton. Stempel waktu epoch direkomendasikan.

versi

v

Y

String

Mayor.Minor

Peningkatan kecil dengan penambahan bidang. Peningkatan besar jika metrik dihapus.

Blok metrik:

Koneksi TCP

Nama panjang

Nama pendek

Elemen induk

Wajib

Jenis

Batasan

Catatan

tcp_connections

tc

metrik

T

Objek

membangunkan_koneksi

ec

tcp_connections

T

Objek

Status TCP yang didirikan

koneksi

cs

membangunkan_koneksi

T

Daftar <Object>

remote_addr

rad

koneksi

Y

Bilangan

ip: pelabuhan

IP bisa IPv6 atau IPv4

local_port

lp

koneksi

T

Bilangan

>= 0

local_interface

li

koneksi

T

String

Nama antarmuka

total

t

membangunkan_koneksi

T

Bilangan

>= 0

Jumlah koneksi yang mapan

Mendengarkan port TCP

Nama panjang

Nama pendek

Elemen induk

Wajib

Jenis

Batasan

Catatan

listening_tcp_ports

tp

metrik

T

Objek

pangkalan

poin

listening_tcp_ports

T

Daftar <Object>

> 0

port

pt

pangkalan

T

Bilangan

> 0

port harus angka lebih besar dari 0

antarmuka

jika

pangkalan

T

String

Nama antarmuka

total

t

listening_tcp_ports

T

Bilangan

>= 0

Mendengarkan port UDP

Nama panjang

Nama pendek

Elemen induk

Wajib

Jenis

Batasan

Catatan

listening_udp_ports

ke atas

metrik

T

Objek

pangkalan

poin

listening_udp_ports

T

Daftar <Port>

> 0

port

pt

pangkalan

T

Bilangan

> 0

Port harus angka lebih besar dari 0

antarmuka

jika

pangkalan

T

String

Nama antarmuka

total

t

listening_udp_ports

T

Bilangan

>= 0

Statistik jaringan

Nama panjang

Nama pendek

Elemen induk

Wajib

Jenis

Batasan

Catatan

network_stats

ns

metrik

T

Objek

bytes_in

bi

network_stats

T

Bilangan

Metrik Delta, >= 0

bytes_out

bo

network_stats

T

Bilangan

Metrik Delta, >= 0

paket_in

pi

network_stats

T

Bilangan

Metrik Delta, >= 0

paket_out

po

network_stats

T

Bilangan

Metrik Delta, >= 0

contoh

Struktur JSON berikut menggunakan nama panjang.

{ "header": { "report_id": 1530304554, "version": "1.0" }, "metrics": { "listening_tcp_ports": { "ports": [ { "interface": "eth0", "port": 24800 }, { "interface": "eth0", "port": 22 }, { "interface": "eth0", "port": 53 } ], "total": 3 }, "listening_udp_ports": { "ports": [ { "interface": "eth0", "port": 5353 }, { "interface": "eth0", "port": 67 } ], "total": 2 }, "network_stats": { "bytes_in": 29358693495, "bytes_out": 26485035, "packets_in": 10013573555, "packets_out": 11382615 }, "tcp_connections": { "established_connections": { "connections": [ { "local_interface": "eth0", "local_port": 80, "remote_addr": "192.168.0.1:8000" }, { "local_interface": "eth0", "local_port": 80, "remote_addr": "192.168.0.1:8000" } ], "total": 2 } } }, "custom_metrics": { "MyMetricOfType_Number": [ { "number": 1 } ], "MyMetricOfType_NumberList": [ { "number_list": [ 1, 2, 3 ] } ], "MyMetricOfType_StringList": [ { "string_list": [ "value_1", "value_2" ] } ], "MyMetricOfType_IpList": [ { "ip_list": [ "172.0.0.0", "172.0.0.10" ] } ] } }
contoh Contoh struktur JSON menggunakan nama pendek
{ "hed": { "rid": 1530305228, "v": "1.0" }, "met": { "tp": { "pts": [ { "if": "eth0", "pt": 24800 }, { "if": "eth0", "pt": 22 }, { "if": "eth0", "pt": 53 } ], "t": 3 }, "up": { "pts": [ { "if": "eth0", "pt": 5353 }, { "if": "eth0", "pt": 67 } ], "t": 2 }, "ns": { "bi": 29359307173, "bo": 26490711, "pi": 10014614051, "po": 11387620 }, "tc": { "ec": { "cs": [ { "li": "eth0", "lp": 80, "rad": "192.168.0.1:8000" }, { "li": "eth0", "lp": 80, "rad": "192.168.0.1:8000" } ], "t": 2 } } }, "cmet": { "MyMetricOfType_Number": [ { "number": 1 } ], "MyMetricOfType_NumberList": [ { "number_list": [ 1, 2, 3 ] } ], "MyMetricOfType_StringList": [ { "string_list": [ "value_1", "value_2" ] } ], "MyMetricOfType_IpList": [ { "ip_list": [ "172.0.0.0", "172.0.0.10" ] } ] } }

Mengirim metrik dari perangkat

AWS IoT Device Defender Detect dapat mengumpulkan, mengumpulkan, dan memantau data metrik yang dihasilkan oleh AWS IoT perangkat untuk mengidentifikasi perangkat yang menunjukkan perilaku abnormal. Bagian ini menunjukkan cara mengirim metrik dari perangkat ke AWS IoT Device Defender perangkat.

Anda harus menerapkan AWS IoT SDK versi dua dengan aman di perangkat atau gateway perangkat yang AWS IoT terhubung untuk mengumpulkan metrik sisi perangkat. Lihat daftar lengkap SDK di sini.

Anda dapat menggunakan AWS IoT Device Client untuk mempublikasikan metrik karena menyediakan agen tunggal yang mencakup fitur yang ada di keduanya AWS IoT Device Defender dan Manajemen AWS IoT Perangkat. Fitur-fitur ini termasuk pekerjaan, tunneling aman, penerbitan AWS IoT Device Defender metrik, dan banyak lagi.

Anda mempublikasikan metrik sisi perangkat ke topik yang dicadangkan AWS IoT Device Defender untuk dikumpulkan dan AWS IoT dievaluasi.

Menggunakan Klien AWS IoT Perangkat untuk mempublikasikan metrik

Untuk menginstal AWS IoT Device Client, Anda dapat mengunduhnya dari Github. Setelah menginstal AWS IoT Device Client pada perangkat yang ingin Anda kumpulkan data sisi perangkat, Anda harus mengonfigurasinya untuk mengirim metrik sisi perangkat. AWS IoT Device Defender Verifikasi bahwa file konfigurasi AWS IoT Device Client memiliki parameter berikut yang ditetapkan di device-defender bagian:

"device-defender": { "enabled": true, "interval-in-seconds": 300 }
Awas

Anda harus mengatur interval waktu minimal 300 detik. Jika Anda menyetel interval waktu menjadi kurang dari 300 detik, data metrik Anda mungkin dibatasi.

Setelah memperbarui konfigurasi, Anda dapat membuat profil dan perilaku keamanan di AWS IoT Device Defender konsol untuk memantau metrik yang dipublikasikan perangkat Anda ke cloud. Anda dapat menemukan metrik yang dipublikasikan di AWS IoT Core konsol dengan memilih Pertahankan, Deteksi, dan kemudian Metrik.