Memahami fitur konfigurasi tamu dari Azure Policy

Fitur konfigurasi tamu Azure Policy menyediakan kemampuan asli untuk mengaudit atau mengonfigurasi pengaturan sistem operasi sebagai kode, baik untuk mesin yang berjalan di Azure dan mesin hibrida dengan dukungan Arc. Fitur ini dapat digunakan langsung per-mesin, atau pada skala yang diatur oleh Azure Policy.

Sumber daya konfigurasi di Azure dirancang sebagai sumber daya ekstensi. Anda dapat membayangkan setiap konfigurasi sebagai satu set properti tambahan untuk mesin. Konfigurasi dapat mencakup pengaturan seperti:

  • Pengaturan sistem operasi
  • Konfigurasi aplikasi atau kehadiran
  • Pengaturan lingkungan

Konfigurasi berbeda dari definisi kebijakan. Konfigurasi tamu menggunakan Azure Policy untuk menetapkan konfigurasi secara dinamis ke mesin. Anda juga bisa menetapkan konfigurasi ke mesin secara manual, atau dengan menggunakan layanan Azure lainnya seperti AutoManage.

Contoh dari setiap skenario disediakan dalam tabel berikut.

Jenis Deskripsi Contoh cerita
Manajemen konfigurasi Anda menginginkan representasi lengkap dari server, sebagai kode dalam kontrol sumber. Penyebaran harus mencakup properti server (ukuran, jaringan, penyimpanan) dan konfigurasi sistem operasi serta pengaturan aplikasi. "Mesin ini harus menjadi server web yang dikonfigurasi untuk meng-host situs web saya."
Kepatuhan Anda ingin mengaudit atau menyebarkan pengaturan ke semua mesin dalam lingkup baik secara reaktif terhadap mesin yang ada atau secara proaktif ke mesin baru saat disebarkan. "Semua mesin harus menggunakan TLS 1.2. Audit mesin yang ada sehingga saya dapat merilis perubahan ketika dibutuhkan, dengan cara yang terkendali, dalam skala besar. Untuk mesin baru, terapkan pengaturan saat disebarkan."

Hasil per-pengaturan dari setiap konfigurasi dapat dilihat baik di Halaman penugasan tamu atau jika konfigurasi diatur oleh penugasan Azure Policy, dengan mengklik tautan "Sumber daya yang terakhir dievaluasi" pada halaman “Detail kepatuhan".

Video panduan untuk dokumen ini tersedia. (pembaruan akan segera hadir)

Mengaktifkan konfigurasi tamu

Untuk mengelola status mesin di lingkungan Anda, termasuk mesin di server Azure dan yang didukung Arc, tinjau detail berikut.

Penyedia sumber daya

Sebelum Anda dapat menggunakan fitur konfigurasi tamu Azure Policy, Anda harus mendaftarkan penyedia sumber daya Microsoft.GuestConfiguration. Jika penetapan kebijakan konfigurasi tamu dilakukan melalui portal, atau jika langganan terdaftar di Azure Security Center, penyedia sumber daya terdaftar secara otomatis. Anda dapat mendaftar secara manual melalui portal, Azure PowerShell, atau Azure CLI.

Menyebarkan persyaratan untuk mesin virtual Azure

Untuk mengelola pengaturan di dalam mesin, ekstensi mesin virtual diaktifkan dan mesin harus memiliki identitas yang dikelola sistem. Ekstensi mengunduh tugas konfigurasi tamu yang berlaku dan dependensi yang sesuai. Identitas digunakan untuk mengautentikasi mesin saat membaca dan menulis ke layanan konfigurasi tamu. Ekstensi ini tidak diperlukan untuk server yang didukung Arc karena dimasukkan dalam agen Arc Connected Machine.

Penting

Ekstensi konfigurasi tamu dan identitas terkelola diperlukan untuk mengelola mesin virtual Azure.

Untuk menyebarkan ekstensi sesuai kebutuhan di banyak mesin, tetapkan inisiatif kebijakan Deploy prerequisites to enable guest configuration policies on virtual machines ke grup manajemen, langganan, atau grup sumber daya yang berisi mesin yang Anda rencanakan untuk dikelola.

Jika Anda lebih suka menerapkan ekstensi dan identitas terkelola ke satu mesin, ikuti panduan untuk masing-masing:

Untuk menggunakan paket konfigurasi tamu yang menerapkan konfigurasi, ekstensi konfigurasi tamu Azure VM versi 1.29.24 atau yang lebih baru diperlukan.

Batas yang ditetapkan pada ekstensi

Untuk membatasi ekstensi agar tidak memengaruhi aplikasi yang berjalan di dalam mesin, agen konfigurasi tamu tidak boleh lebih dari 5% CPU. Batasan ini ada untuk definisi bawaan dan kustom. Hal yang sama berlaku untuk layanan konfigurasi tamu di agen Arc Connected Machine.

Alat validasi

Di dalam mesin, agen konfigurasi tamu menggunakan alat lokal untuk melakukan tugas.

Tabel berikut ini memperlihatkan daftar alat lokal yang digunakan pada setiap sistem operasi yang didukung. Untuk konten bawaan, konfigurasi tamu menangani pemuatan alat ini secara otomatis.

Sistem operasi Alat validasi Catatan
Windows Konfigurasi Status yang Diinginkan PowerShell v3 Dimuat sebagai tambahan ke folder yang hanya digunakan oleh Azure Policy. Tidak akan bertentangan dengan Windows PowerShell DSC. PowerShell Core tidak ditambahkan ke jalur sistem.
Linux Konfigurasi Status yang Diinginkan PowerShell v3 Dimuat sebagai tambahan ke folder yang hanya digunakan oleh Azure Policy. PowerShell Core tidak ditambahkan ke jalur sistem.
Linux Chef InSpec Instal Chef InSpec versi 2.2.61 di lokasi default dan ditambahkan ke jalur sistem. Dependensi untuk paket InSpec termasuk Ruby dan Python juga diinstal.

Frekuensi validasi

Agen konfigurasi tamu memeriksa penugasan tamu baru atau yang diubah setiap 5 menit. Setelah penugasan tamu diterima, pengaturan untuk konfigurasi tersebut diperiksa ulang pada interval 15 menit. Jika beberapa konfigurasi ditetapkan, masing-masing dievaluasi secara berurutan. Konfigurasi jangka panjang memengaruhi interval untuk semua konfigurasi, karena yang berikutnya tidak akan berjalan hingga konfigurasi sebelumnya selesai.

Hasil akan dikirim ke layanan konfigurasi tamu saat audit selesai. Ketika pemicu evaluasi kebijakan terjadi, status mesin ditulis ke penyedia sumber daya konfigurasi tamu. Pembaruan ini menyebabkan Azure Policy mengevaluasi properti Azure Resource Manager. Evaluasi Azure Policy sesuai permintaan mengambil nilai terbaru dari penyedia sumber konfigurasi tamu. Namun, layanan tidak memicu aktivitas baru di dalam mesin. Status kemudian ditulis ke Azure Resource Graph.

Jenis klien yang didukung

Definisi kebijakan konfigurasi tamu sudah termasuk versi baru. Versi sistem operasi lama yang tersedia di Marketplace Azure dikecualikan jika klien Guest Configuration tidak kompatibel. Tabel berikut ini memperlihatkan daftar sistem operasi yang didukung pada citra Azure. Teks ".x" adalah simbol untuk mewakili versi minor baru distribusi Linux.

Publisher Nama Versi
Amazon Linux 2
Kanonis Ubuntu Server 14.04 - 20.x
Credativ Debian 8 - 10.x
Microsoft Windows Server 2012 - 2022
Microsoft Windows Client Windows 10
Oracle Oracle-Linux 7.x-8.x
OpenLogic CentOS 7.3 - 8.x
Red Hat Red Hat Enterprise Linux* 7.4 - 8.x
SUSE SLES 12 SP3-SP5, 15.x

* Red Hat CoreOS tidak didukung.

Gambar mesin virtual khusus didukung oleh definisi kebijakan konfigurasi tamu selama itu adalah salah satu sistem operasi dalam tabel di atas.

Persyaratan jaringan

Mesin virtual di Azure dapat menggunakan adaptor jaringan lokal atau tautan pribadi untuk berkomunikasi dengan layanan konfigurasi tamu.

Mesin Azure Arc terhubung menggunakan infrastruktur jaringan lokal untuk menjangkau layanan Azure dan melaporkan status kepatuhan.

Berkomunikasi melalui jaringan virtual di Azure

Untuk berkomunikasi dengan penyedia sumber konfigurasi tamu di Azure, mesin memerlukan akses keluar ke pusat data Azure di port 443. Jika jaringan di Azure tidak mengizinkan lalu lintas keluar, konfigurasikan pengecualian dengan aturan Network Security Group. Tag layanan "AzureArcInfrastructure" dan "Storage" dapat digunakan untuk mereferensikan layanan konfigurasi tamu dan Storage daripada secara manual mempertahankan daftar rentang IP untuk pusat data Azure. Kedua tag diperlukan karena paket konten konfigurasi tamu dihosting oleh Azure Storage.

Mesin virtual dapat menggunakan tautan privat untuk komunikasi ke layanan konfigurasi tamu. Terapkan tag dengan nama EnablePrivateNetworkGC dan nilai TRUE untuk mengaktifkan fitur ini. Tag dapat diterapkan sebelum atau setelah definisi kebijakan konfigurasi tamu diterapkan ke mesin.

Lalu lintas dirutekan menggunakan alamat IP publik virtual Azure untuk membangun saluran yang aman dan terotentikasi dengan sumber daya platform Azure.

Server berkemampuan Azure Arc

Simpul yang terletak di luar Azure yang terhubung oleh Azure Arc memerlukan konektivitas ke layanan konfigurasi tamu. Detail tentang persyaratan jaringan dan proksi yang disediakan dalam dokumentasi Azure Arc.

Untuk server yang mendukung Arc di pusat data privat, izinkan lalu lintas menggunakan pola berikut:

  • Port: Hanya TCP 443 yang diperlukan untuk akses internet keluar
  • URL Global: *.guestconfiguration.azure.com

Menetapkan kebijakan untuk mesin di luar Azure

Definisi kebijakan Audit yang tersedia untuk konfigurasi tamu mencakup jenis sumber daya Microsoft.HybridCompute/machines. Setiap mesin yang dibawa ke Azure Arc untuk server yang berada dalam cakupan penugasan kebijakan disertakan secara otomatis.

Persyaratan identitas terkelola

Definisi Azure Policy dalam inisiatif Sebarkan prasyarat untuk mengaktifkan kebijakan konfigurasi tamu pada mesin virtual memungkinkan identitas terkelola yang ditetapkan sistem, jika tidak ada. Ada dua definisi kebijakan dalam inisiatif yang mengelola pembuatan identitas. Kondisi IF dalam definisi kebijakan memastikan perilaku yang benar berdasarkan status sumber daya mesin saat ini di Azure.

Penting

Definisi ini menciptakan identitas yang dikelola System-Assigned pada sumber daya target, di samping identitas User-Assigned yang ada (jika ada). Untuk aplikasi yang sudah ada kecuali aplikasi menentukan identitas yang Ditetapkan Pengguna dalam permintaan, komputer akan menggunakan Identitas yang Ditetapkan Sistem secara default sebagai gantinya. Pelajari Selengkapnya

Jika saat ini mesin tidak memiliki identitas terkelola, kebijakan efektifnya adalah: Tambahkan identitas terkelola yang ditetapkan sistem untuk mengaktifkan penetapan konfigurasi tamu pada mesin virtual tanpa identitas

Jika saat ini mesin memiliki identitas sistem yang ditetapkan pengguna, kebijakan efektifnya adalah: Tambahkan identitas terkelola yang ditetapkan sistem untuk mengaktifkan penetapan konfigurasi tamu pada mesin virtual dengan identitas yang ditetapkan pengguna

Ketersediaan

Pelanggan yang merancang solusi dengan ketersediaan tinggi harus mempertimbangkan persyaratan perencanaan redundansi untuk mesin virtual karena Guest Assignment adalah ekstensi dari sumber daya mesin di Azure. Saat sumber daya Guest Assignment disediakan di wilayah Azure yang dipasangkan, selama setidaknya satu wilayah dalam pasangan itu tersedia, maka laporan Guest Assignment tersedia. Jika wilayah Azure tidak dipasangkan dan menjadi tidak tersedia, maka laporan untuk Guest Assignment tidak dapat diakses hingga wilayah dipulihkan.

Ketika mempertimbangkan arsitektur untuk aplikasi dengan ketersediaan tinggi, terutama di mana mesin virtual disediakan di Set Ketersediaan di balik solusi penyeimbang beban untuk memberikan ketersediaan tinggi, sebaiknya tetapkan definisi kebijakan yang sama dengan parameter yang sama untuk semua mesin dalam solusi. Jika memungkinkan, satu penugasan kebijakan yang mencakup semua mesin akan memberikan overhead administratif yang paling sedikit.

Untuk mesin yang dilindungi oleh Azure Site Recovery, pastikan bahwa mesin di situs sekunder berada dalam cakupan penugasan Azure Policy untuk definisi yang sama menggunakan nilai parameter yang sama dengan mesin di situs utama.

Residensi data

Penyimpanan konfigurasi tamu/memproses data pelanggan. Secara default, data pelanggan direplikasi ke wilayah berpasangan. Untuk wilayah penduduk tunggal semua data pelanggan disimpan dan diproses di wilayah tersebut.

Pemecahan masalah Guest Configuration

Untuk informasi selengkapnya tentang pemecahan masalah konfigurasi tamu, lihat pemecahan masalah Azure Policy.

Beberapa penugasan

Definisi kebijakan konfigurasi tamu saat ini hanya mendukung penetapan penugasan tamu yang sama sekali per mesin saat penetapan kebijakan menggunakan parameter yang berbeda.

Penugasan ke Grup Manajemen Azure

Definisi Azure Policy dalam kategori 'Konfigurasi Tamu' dapat ditetapkan ke Grup Manajemen hanya ketika efeknya adalah 'AuditIfNotExists'. Definisi Azure Policy dengan efek 'DeployIfNotExists' tidak didukung sebagai penugasan untuk Grup Manajemen.

File log klien

Ekstensi konfigurasi tamu menulis file log ke lokasi berikut:

Windows: C:\ProgramData\GuestConfig\gc_agent_logs\gc_agent.log

Linux

  • Azure VM: /var/lib/GuestConfig/gc_agent_logs/gc_agent.log
  • Server yang didukung Arc: /var/lib/GuestConfig/arc_policy_logs/gc_agent.log

Mengumpulkan log dari jarak jauh

Langkah pertama dalam memecahkan masalah konfigurasi atau modul konfigurasi tamu harus menggunakan cmdlet mengikuti langkah-langkah di Cara menguji artefak paket konfigurasi tamu. Jika tidak berhasil, mengumpulkan log klien dapat membantu mendiagnosis masalah.

Windows

Ambil informasi dari file log menggunakan Perintah Run Azure VM, contoh skrip PowerShell berikut mungkin membantu.

$linesToIncludeBeforeMatch = 0
$linesToIncludeAfterMatch = 10
$logPath = 'C:\ProgramData\GuestConfig\gc_agent_logs\gc_agent.log'
Select-String -Path $logPath -pattern 'DSCEngine','DSCManagedEngine' -CaseSensitive -Context $linesToIncludeBeforeMatch,$linesToIncludeAfterMatch | Select-Object -Last 10

Linux

Ambil informasi dari file log menggunakan Perintah Run Azure VM, contoh skrip Bash berikut mungkin membantu.

linesToIncludeBeforeMatch=0
linesToIncludeAfterMatch=10
logPath=/var/lib/GuestConfig/gc_agent_logs/gc_agent.log
egrep -B $linesToIncludeBeforeMatch -A $linesToIncludeAfterMatch 'DSCEngine|DSCManagedEngine' $logPath | tail

File agen

Agen konfigurasi tamu mengunduh paket konten ke mesin dan mengekstrak kontennya. Untuk memverifikasi konten apa saja yang telah diunduh dan disimpan, lihat lokasi folder yang diberikan di bawah ini.

Windows: c:\programdata\guestconfig\configuration

Linux: /var/lib/GuestConfig/Configuration

Sampel konfigurasi tamu

Sampel kebijakan bawaan konfigurasi tamu tersedia di lokasi-lokasi berikut:

Langkah berikutnya