Menggunakan cloud-init untuk menambahkan pengguna ke VM Linux di Azure
Berlaku untuk: ✔️ VM Linux ✔️ Set skala fleksibel
Artikel ini menunjukkan cara menggunakan cloud-init untuk menambahkan pengguna pada komputer virtual (VM) atau kumpulan skala komputer virtual (VMSS) pada waktu provisi di Azure. Skrip cloud-init ini berjalan pada boot pertama setelah sumber daya disediakan oleh Azure. Untuk informasi selengkapnya tentang cara kerja cloud-init secara asli di Azure dan distro Linux yang didukung, lihat gambaran umum cloud-init.
Menambahkan pengguna ke VM dengan cloud-init
Salah satu tugas pertama pada VM Linux baru adalah menambahkan pengguna tambahan untuk Anda untuk menghindari penggunaan root. Kunci SSH adalah solusi terbaik untuk keamanan dan kegunaan. Kunci ditambahkan ke file ~/.ssh/authorized_keys dengan skrip cloud-init ini.
Untuk menambahkan pengguna ke VM Linux, buat file di shell Anda saat ini bernama cloud_init_add_user.txt dan tempelkan konfigurasi berikut. Untuk contoh ini, buat file di Cloud Shell, bukan di komputer lokal Anda. Anda dapat menggunakan editor apa pun yang diinginkan. Pastikan bahwa seluruh file cloud-init disalin dengan benar, terutama baris pertama. Anda perlu menyediakan kunci publik Anda sendiri (seperti isi ~/.ssh/id_rsa.pub)untuk nilai ssh-authorized-keys:
- telah dipersingkat di sini untuk menyederhanakan contoh.
#cloud-config
users:
- default
- name: myadminuser
groups: sudo
shell: /bin/bash
sudo: ['ALL=(ALL) NOPASSWD:ALL']
ssh-authorized-keys:
- ssh-rsa AAAAB3<snip>
Catatan
File #cloud-config menyertakan parameter - default
yang disertakan. File ini akan menambahkan pengguna, ke pengguna admin yang sudah dan yang dibuat selama provisi. Jika Anda membuat pengguna tanpa parameter - default
- pengguna admin yang dihasilkan otomatis dan dibuat oleh platform Azure akan ditimpa.
Sebelum menyebarkan gambar ini, And perlu membuat grup sumber daya dengan perintah az group create. Grup sumber daya Azure adalah kontainer logis yang disebarkan dan dikelola sumber daya Azure. Contoh berikut membuat grup sumber daya bernama myResourceGroup di lokasi eastus.
az group create --name myResourceGroup --location eastus
Sekarang, buat VM dengan az vm create dan tentukan file cloud-init dengan --custom-data cloud_init_add_user.txt
sebagai berikut:
az vm create \
--resource-group myResourceGroup \
--name vmName \
--image imageCIURN \
--custom-data cloud_init_add_user.txt \
--generate-ssh-keys
Catatan
Ganti nilai myResourceGroup, vmName, dan imageCIURN yang sesuai. Pastikan gambar dengan Cloud-init dipilih.
SSH ke alamat IP publik VM Anda yang ditunjukkan dalam output dari perintah sebelumnya. Masukkan pengguna Anda sendiri dan publicIpAddress sebagai berikut:
ssh <user>@<publicIpAddress>
Untuk mengonfirmasi bahwa pengguna Anda ditambahkan ke VM dan grup yang ditentukan, lihat isi file /etc/group sebagai berikut:
sudo cat /etc/group
Contoh output berikut menunjukkan pengguna dari file cloud_init_add_user.txt telah ditambahkan ke VM dan grup yang sesuai:
root:x:0:
<snip />
sudo:x:27:myadminuser
<snip />
myadminuser:x:1000:
Langkah berikutnya
Untuk contoh perubahan konfigurasi cloud-init tambahan, lihat artikel berikut: