Megosztás a következőn keresztül:


SSH-kulcsok használata Windows rendszeren az Azure-ban

A következőkre vonatkozik: ✔️ Linux rendszerű virtuális gépek rugalmas méretezési ✔️ csoportjai

Ez a cikk olyan Windows-felhasználók számára készült, akik biztonságos rendszerhéj-(SSH-) kulcsokat szeretnének létrehozni és használni a Linux rendszerű virtuális gépekhez való csatlakozáshoz az Azure-ban. Az Azure Portalon SSH-kulcsokat is létrehozhat és tárolhat, amelyekkel virtuális gépeket hozhat létre a portálon.

Ha Linux- vagy macOS-ügyfélről szeretne SSH-kulcsokat használni, tekintse meg a gyors lépéseket. Az SSH részletesebb áttekintéséhez tekintse meg a részletes lépéseket: SSH-kulcsok létrehozása és kezelése Linux rendszerű virtuális gépeken az Azure-ban.

Az SSH és a kulcsok áttekintése

Az SSH egy titkosított kapcsolati protokoll, amely biztonságos bejelentkezést tesz lehetővé a nem biztonságos kapcsolatokon keresztül. Az SSH az Azure-ban üzemeltetett Linux rendszerű virtuális gépek alapértelmezett kapcsolati protokollja. Bár maga az SSH titkosított kapcsolatot biztosít, a jelszavak SSH-val való használata továbbra is sebezhetővé teszi a virtuális gépet a találgatásos támadások ellen. Azt javasoljuk, hogy SSH-kapcsolaton keresztül csatlakozzon egy virtuális géphez egy nyilvános és privát kulcspár, más néven SSH-kulcsok használatával.

A nyilvános-privát kulcspár olyan, mint a bejárati ajtó zárja. A zár ki van téve a nyilvánosság számára, bárki, aki a megfelelő kulccsal kinyitja az ajtót. A kulcs privát, és csak olyan személyeknek van átadva, akikben megbízik, mert az ajtó kinyitására használható.

  • A nyilvános kulcs a linuxos virtuális gépen lesz elhelyezve a virtuális gép létrehozásakor.

  • A titkos kulcs a helyi rendszeren marad. Védje a titkos kulcsot. Ne ossza meg.

Amikor linuxos virtuális géphez csatlakozik, a virtuális gép teszteli az SSH-ügyfelet, hogy biztosan a megfelelő titkos kulccsal rendelkezik-e. Ha az ügyfél rendelkezik a titkos kulccsal, hozzáférést kap a virtuális géphez.

A szervezet biztonsági szabályzataitól függően egyetlen kulcspár használatával több Azure-beli virtuális géphez és szolgáltatáshoz is hozzáférhet. Nincs szükség külön kulcspárra az egyes virtuális gépekhez.

A nyilvános kulcs bárkivel megosztható, de csak Önnek (vagy a helyi biztonsági infrastruktúrának) kell hozzáférnie a titkos kulcshoz.

Támogatott SSH-kulcsformátumok

Az Azure jelenleg a következő kulcstípusokat támogatja:

  • SSH protokoll 2 (SSH-2) RSA (Rivest, Shamir, Adleman) minimális hossza 2048 bit
  • ED25519 256 bites rögzített hosszúságú kulcsok

Az egyéb kulcsformátumok, például az Elliptic-curve Diffie–Hellman (ECDH) és az Elliptic Curve Digital Signature Algorithm (ECDSA) jelenleg nem támogatottak.

SSH-ügyfelek

A Windows 10 legújabb verziói közé tartoznak az OpenSSH-ügyfélparancsok , amellyel SSH-kulcsokat hozhat létre és használhat, és SSH-kapcsolatokat létesíthet a PowerShellből vagy egy parancssorból.

A Basht az Azure Cloud Shellben is használhatja a virtuális géphez való csatlakozáshoz. A Cloud Shellt webböngészőben, az Azure Portalon vagy terminálként használhatja a Visual Studio Code-ban az Azure Account bővítmény használatával.

A Linuxos Windows-alrendszer is telepítheti, hogy SSH-n keresztül csatlakozzon a virtuális géphez, és más natív Linux-eszközöket használjon egy Bash-rendszerhéjon belül.

SSH-kulcs létrehozása

Az SSH-kulcsok létrehozásának és kezelésének legegyszerűbb módja, ha a portál használatával hozza létre és tárolja újra .

Az Azure CLI-vel kulcspárokat is létrehozhat az az sshkey create paranccsal, az SSH-kulcsok létrehozása és tárolása című cikkben leírtak szerint.

Ha sSH-kulcspárt szeretne létrehozni a helyi számítógépen a ssh-keygen PowerShell vagy egy parancssor parancsával, használja a következő parancsot:

ssh-keygen -m PEM -t rsa -b 2048

Adjon meg egy fájlnevet, vagy használja az alapértelmezett zárójelben (például C:\Users\username/.ssh/id_rsa). Adjon meg egy jelszót a fájlhoz, vagy hagyja üresen a jelszót, ha nem szeretne jelszót használni.

Virtuális gép létrehozása a kulccsal

Ha olyan Linux rendszerű virtuális gépet szeretne létrehozni, amely SSH-kulcsokat használ a hitelesítéshez, adja meg az SSH nyilvános kulcsát a virtuális gép létrehozásakor.

Az Azure CLI használatával megadhatja a nyilvános kulcs az vm create elérési útját és fájlnevét, valamint a paramétert --ssh-key-value .

az vm create \
   --resource-group myResourceGroup \
   --name myVM \
   --image Ubuntu2204\
   --admin-username azureuser \
   --ssh-key-value ~/.ssh/id_rsa.pub

A PowerShell használatával használja New-AzVM és adja hozzá az SSH-kulcsot a virtuálisgép-konfigurációhoz. Példa: Rövid útmutató: Linux rendszerű virtuális gép létrehozása az Azure-ban a PowerShell használatával.

Ha sok üzembe helyezést végez a portál használatával, érdemes lehet feltöltenie a nyilvános kulcsot az Azure-ba, ahol könnyen kiválasztható, amikor virtuális gépet hoz létre a portálról. További információ: SSH-kulcs feltöltése.

Csatlakozás a virtuális géphez

Az Azure-beli virtuális gépen üzembe helyezett nyilvános kulccsal és a helyi rendszeren lévő titkos kulccsal az SSH-t a virtuális gépre a virtuális gép IP-címével vagy DNS-nevével telepítheti. Cserélje le az azureusert és a 10.111.12.123-at a következő parancsban a rendszergazdai felhasználónévre, az IP-címre (vagy teljes tartománynévre) és a titkos kulcs elérési útjára:

ssh -i ~/.ssh/id_rsa azureuser@10.111.12.123

Ha még soha nem csatlakozott ehhez a virtuális géphez, a rendszer kérni fogja, hogy ellenőrizze a gazdagépek ujjlenyomatát. Csábító elfogadni a bemutatott ujjlenyomatot, de ez egy lehetséges személy számára teszi elérhetővé a középső támadásban. Mindig ellenőrizze a gazdagépek ujjlenyomatát. Ezt csak akkor kell megtennie, amikor először csatlakozik egy ügyféltől. A gazdagép ujjlenyomatának portálon keresztüli beszerzéséhez használja a Futtatás parancsot a következő paranccsal: ssh-keygen -lf /etc/ssh/ssh_host_ecdsa_key.pub | awk '{print $2}'.

Képernyőkép a gazdagép ujjlenyomatának ellenőrzéséről a Futtatás parancs használatával.

A parancs parancssori felülettel való futtatásához használja a az vm run-command invoke parancsot.

Ha a kulcspár létrehozásakor konfigurálta a jelszót, akkor a rendszer kéri, hogy adja meg a jelszót.

Ha a virtuális gép a just-in-time hozzáférési szabályzatot használja, a virtuális géphez való csatlakozás előtt hozzáférést kell kérnie. A just-in-time szabályzatról további információt a virtuális gépek hozzáférésének kezelése a just in time szabályzat használatával című témakörben talál.

Következő lépések