Menggunakan filter koneksi IP Azure IoT DPS
Keamanan adalah aspek penting dari solusi IoT apa pun. Terkadang Anda perlu secara eksplisit menentukan alamat IP dari perangkat mana yang dapat terhubung sebagai bagian dari konfigurasi keamanan Anda. Fitur filter IP untuk Azure IoT Hub Device Provisioning Service (DPS) memungkinkan Anda mengonfigurasi aturan untuk menolak atau menerima lalu lintas dari alamat IPv4 tertentu.
Waktu menggunakan
Ada dua kasus penggunaan tertentu di mana pemblokiran koneksi ke titik akhir DPS dari alamat IP tertentu bermanfaat:
DPS Anda hanya menerima lalu lintas dari rentang alamat IP tertentu dan menolak yang lain. Misalnya, Anda menggunakan DPS dengan Azure Express Route untuk membuat koneksi privat antara instans DPS dan perangkat Anda.
Anda perlu menolak lalu lintas dari alamat IP yang telah diidentifikasi sebagai mencurigakan oleh administrator DPS.
Batasan aturan filter IP
Perhatikan batasan berikut jika pemfilteran IP diaktifkan:
Anda mungkin tidak dapat menggunakan portal Azure untuk mengelola pendaftaran. Jika ini terjadi, Anda dapat menambahkan alamat IP satu atau beberapa komputer ke
ipFilterRules
dan mengelola pendaftaran di instans DPS dari komputer tersebut dengan Azure CLI, PowerShell, atau API layanan.Skenario ini kemungkinan besar terjadi ketika Anda ingin menggunakan pemfilteran IP untuk mengizinkan akses hanya ke alamat IP yang dipilih. Dalam hal ini, Anda mengonfigurasi aturan untuk mengaktifkan alamat atau rentang alamat tertentu dan aturan default yang memblokir semua alamat lain (0.0.0.0/0). Aturan default ini akan memblokir portal Azure melakukan operasi seperti mengelola pendaftaran pada instans DPS. Untuk informasi selengkapnya, lihat Evaluasi aturan filter IP nanti di artikel ini.
Cara penerapan aturan filter
Aturan filter IP diterapkan pada tingkat instans DPS. Oleh karena itu, aturan filter IP berlaku untuk semua koneksi dari perangkat dan aplikasi back-end yang menggunakan protokol yang didukung.
Upaya koneksi apa pun dari alamat IP yang cocok dengan penolakan aturan IP di instans DPS Anda menerima kode dan deskripsi status 401 yang tidak sah. Pesan tanggapan tidak menyebutkan aturan IP.
Penting
Penolakan alamat IP dapat mencegah Azure Services lain berinteraksi dengan instans DPS.
Pengaturan default
Secara default, pemfilteran IP dinonaktifkan dan Akses jaringan publik diatur ke Semua jaringan. Pengaturan default ini berarti bahwa DPS Anda menerima koneksi dari alamat IP apa pun, atau sesuai dengan aturan yang menerima rentang alamat IP 0.0.0.0/0.
Menambahkan aturan filter IP
Untuk menambahkan aturan filter IP:
Buka portal Microsoft Azure.
Di menu sebelah kiri atau di halaman portal, pilih Semua sumber daya.
Pilih Device Provisioning Service Anda.
Di menu Pengaturan di sisi kiri, pilih Jaringan.
Di bagian Akses jaringan publik, pilih Rentang IP yang dipilih
Pilih + Tambahkan Aturan Filter IP.
Isi bidang berikut:
Bidang KETERANGAN Nama String unik, peka huruf besar/kecil, alfanumerik dengan panjang maksimum 128 karakter. Hanya karakter alfanumerik ASCII 7-bit plus {'-', ':', '/', '\', '.', '+', '%', '_', '#', '*', '?', '!', '(', ')', ',', '=', '@', ';', '''}
yang diterima.Rentang Alamat Satu alamat IPv4 atau blok alamat IP dalam notasi CIDR. Misalnya, dalam notasi CIDR, 192.168.100.0/22 mewakili alamat IPv4 1024 dari 192.168.100.0 hingga 192.168.103.255. Tindakan Pilih Izinkan atau Blokir. Pilih Simpan. Anda akan melihat pemberitahuan yang meninformasikan bahwa pembaruan sedang berlangsung.
Catatan
+ Tambahkan Aturan Filter IP dinonaktifkan saat Anda mencapai maksimum 100 aturan filter IP.
Mengedit aturan filter IP
Untuk mengedit aturan yang sudah ada:
Pilih data aturan filter IP yang ingin diubah.
Buat perubahan.
Pilih Simpan.
Menghapus aturan filter IP
Untuk menghapus aturan filter IP:
Pilih ikon hapus pada baris aturan IP yang ingin dihapus.
Pilih Simpan.
Evaluasi aturan filter IP
Aturan filter IP diterapkan secara berurutan. Aturan pertama yang cocok dengan alamat IP menentukan tindakan terima atau tolak.
Misalnya, jika Anda ingin menerima alamat dalam rentang 192.168.100.0/22 dan menolak yang lainnya, aturan pertama dalam kisi harus menerima rentang alamat 192.168.100.0/22. Aturan berikutnya harus menolak semua alamat dengan menggunakan rentang 0.0.0.0/0.
Untuk mengubah urutan aturan filter IP:
Pilih aturan yang ingin dipindahkan.
Seret dan taruh aturan ke lokasi yang diinginkan.
Pilih Simpan.
Memperbarui aturan filter IP menggunakan templat Azure Resource Manager
Ada dua cara untuk memperbarui filter IP DPS:
Menghubungi metode IoT Hub Resource REST API. Untuk mempelajari cara memperbarui aturan filter IP menggunakan REST, lihat
IpFilterRule
di bagian Definisi pada Sumber daya IoT Hub - Metode perburuan.Menggunakan templat Azure Resource Manager. Untuk panduan tentang cara menggunakan templat Resource Manager, lihat Templat Azure Resource Manager. Contoh berikut menunjukkan cara membuat, mengedit, dan menghapus aturan filter IP DPS dengan templat Azure Resource Manager.
Catatan
Azure CLI dan Azure PowerShell saat ini tidak mendukung pembaruan aturan filter IP DPS.
Menambahkan aturan filter IP
Contoh templat berikut membuat aturan filter IP baru bernama "AllowAll" yang menerima semua lalu lintas.
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"iotDpsName": {
"type": "string",
"defaultValue": "[resourceGroup().name]",
"minLength": 3,
"metadata": {
"description": "Specifies the name of the IoT DPS service."
}
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]",
"metadata": {
"description": "Location for Iot DPS resource."
}
}
},
"variables": {
"iotDpsApiVersion": "2020-01-01"
},
"resources": [
{
"type": "Microsoft.Devices/provisioningServices",
"apiVersion": "[variables('iotDpsApiVersion')]",
"name": "[parameters('iotDpsName')]",
"location": "[parameters('location')]",
"sku": {
"name": "S1",
"tier": "Standard",
"capacity": 1
},
"properties": {
"IpFilterRules": [
{
"FilterName": "AllowAll",
"Action": "Accept",
"ipMask": "0.0.0.0/0"
}
]
}
}
]
}
Perbarui atribut aturan filter IP templat sesuai dengan kebutuhan Anda.
Atribut | Deskripsi |
---|---|
FilterName | Berikan nama untuk aturan Filter IP. Nama harus berupa string alfanumerik yang unik, tidak peka huruf besar/kecil hingga 128 karakter panjangnya. Hanya karakter alfanumerik ASCII 7-bit plus {'-', ':', '/', '\', '.', '+', '%', '_', '#', '*', '?', '!', '(', ')', ',', '=', '@', ';', '''} yang diterima. |
Tindakan | Nilai yang diterima adalah Terima atau Tolak sebagai tindakan untuk aturan filter IP. |
ipMask | Berikan satu alamat IPv4 atau blok alamat IP dalam notasi CIDR. Misalnya, dalam notasi CIDR, 192.168.100.0/22 mewakili alamat IPv4 1024 dari 192.168.100.0 hingga 192.168.103.255. |
Memperbarui aturan filter IP
Contoh templat berikut memperbarui aturan filter IP bernama "AllowAll", yang ditampilkan sebelumnya, untuk menolak semua lalu lintas.
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"iotDpsName": {
"type": "string",
"defaultValue": "[resourceGroup().name]",
"minLength": 3,
"metadata": {
"description": "Specifies the name of the IoT DPS service."
}
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]",
"metadata": {
"description": "Location for Iot DPS resource."
}
}
},
"variables": {
"iotDpsApiVersion": "2020-01-01"
},
"resources": [
{
"type": "Microsoft.Devices/provisioningServices",
"apiVersion": "[variables('iotDpsApiVersion')]",
"name": "[parameters('iotDpsName')]",
"location": "[parameters('location')]",
"sku": {
"name": "S1",
"tier": "Standard",
"capacity": 1
},
"properties": {
"IpFilterRules": [
{
"FilterName": "AllowAll",
"Action": "Reject",
"ipMask": "0.0.0.0/0"
}
]
}
}
]
}
Menghapus aturan filter IP
Contoh templat berikut menghapus semua aturan filter IP untuk instans DPS.
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"iotDpsName": {
"type": "string",
"defaultValue": "[resourceGroup().name]",
"minLength": 3,
"metadata": {
"description": "Specifies the name of the IoT DPS service."
}
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]",
"metadata": {
"description": "Location for Iot DPS resource."
}
}
},
"variables": {
"iotDpsApiVersion": "2020-01-01"
},
"resources": [
{
"type": "Microsoft.Devices/provisioningServices",
"apiVersion": "[variables('iotDpsApiVersion')]",
"name": "[parameters('iotDpsName')]",
"location": "[parameters('location')]",
"sku": {
"name": "S1",
"tier": "Standard",
"capacity": 1
},
"properties": {
}
}
]
}
Langkah berikutnya
Untuk menjelajahi DPS pengelolaan lebih lanjut, lihat: