Sdílet prostřednictvím


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: