Použití cloud-init k přidání uživatele do virtuálního počítače s Linuxem v Azure
Platí pro: ✔️ Flexibilní škálovací sady virtuálních počítačů s Linuxem ✔️
V tomto článku se dozvíte, jak pomocí cloud-init přidat uživatele na virtuální počítač nebo škálovací sady virtuálních počítačů (VMSS) v době zřizování v Azure. Tento skript cloud-init se spustí při prvním spuštění po zřízení prostředků v Azure. Další informace o tom, jak cloud-init nativně funguje v Azure a podporovaných distribucí Linuxu, najdete v přehledu cloud-init.
Přidání uživatele do virtuálního počítače pomocí cloud-init
Jednou z prvních úloh na jakémkoli novém virtuálním počítači s Linuxem je přidat dalšího uživatele, abyste se vyhnuli použití kořenového adresáře. Klíče SSH jsou osvědčeným postupem zabezpečení a použitelnosti. Klíče se přidají do souboru ~/.ssh/authorized_keys pomocí tohoto skriptu cloud-init.
Pokud chcete přidat uživatele do virtuálního počítače s Linuxem, vytvořte v aktuálním prostředí soubor s názvem cloud_init_add_user.txt a vložte následující konfiguraci. V tomto příkladu vytvořte soubor v Cloud Shellu, ne na místním počítači. Můžete použít libovolný editor podle svojí volby. Ujistěte se, že se celý soubor cloud-init zkopíroval správně, zejména první řádek. Musíte zadat vlastní veřejný klíč (například obsah ~/.ssh/id_rsa.pub) pro hodnotu ssh-authorized-keys:
– zkrátil se zde, aby se příklad zjednodušil.
#cloud-config
users:
- default
- name: myadminuser
groups: sudo
shell: /bin/bash
sudo: ['ALL=(ALL) NOPASSWD:ALL']
ssh-authorized-keys:
- ssh-rsa AAAAB3<snip>
Poznámka:
Konfigurační soubor #cloud zahrnuje - default
zahrnutý parametr. Tím se uživatel připojí k existujícímu uživateli správce vytvořenému během zřizování. Pokud vytvoříte uživatele bez parametru - default
– automaticky vygenerovaný uživatel správce vytvořený platformou Azure se přepíše.
Před nasazením této image je potřeba vytvořit skupinu prostředků pomocí příkazu az group create . Skupina prostředků Azure je logický kontejner, ve kterém se nasazují a spravují prostředky Azure. Následující příklad vytvoří skupinu prostředků myResourceGroup v umístění eastus.
az group create --name myResourceGroup --location eastus
Teď vytvořte virtuální počítač pomocí příkazu az vm create a následujícím způsobem zadejte soubor --custom-data cloud_init_add_user.txt
cloud-init:
az vm create \
--resource-group myResourceGroup \
--name vmName \
--image imageCIURN \
--custom-data cloud_init_add_user.txt \
--generate-ssh-keys
Poznámka:
Odpovídajícím způsobem nahraďte hodnoty myResourceGroup, vmName a imageCIURN . Ujistěte se, že je vybraná image s Cloud-init.
Připojte se přes SSH k veřejné IP adrese vašeho virtuálního počítače zobrazeného ve výstupu z předchozího příkazu. Zadejte vlastního uživatele a publicIpAddress následujícím způsobem:
ssh <user>@<publicIpAddress>
Pokud chcete ověřit, že byl uživatel přidán do virtuálního počítače a do zadaných skupin, zobrazte obsah souboru /etc/group následujícím způsobem:
sudo cat /etc/group
Následující příklad výstupu ukazuje, že uživatel ze souboru cloud_init_add_user.txt byl přidán do virtuálního počítače a do příslušné skupiny:
root:x:0:
<snip />
sudo:x:27:myadminuser
<snip />
myadminuser:x:1000:
Další kroky
Další příklady změn konfigurace cloud-init najdete v následujících tématech: