Použití Azure Bastion pro bezpečný přístup k virtuálním počítačům

Použití Azure Bastion pro bezpečný přístup k virtuálním počítačům

4. 1. 2025

Tento technický a vzdělávací článek má za cíl vést bezpečnostní analytiky, IT administrátory a systémové inženýry při implementaci a konfiguraci Azure Bastion pro zabezpečený přístup k virtuálním počítačům (VM) v Azure. V cloudovém prostředí je zabezpečení přístupu k virtuálním počítačům zásadní pro ochranu zdrojů a dat. Přístup k virtuálním počítačům prostřednictvím protokolu RDP (Remote Desktop Protocol) nebo SSH (Secure Shell) tradičně vyžadoval vystavení veřejných portů internetu, což výrazně zvýšilo útočnou plochu. Azure Bastion nabízí robustní a bezpečné řešení k eliminaci tohoto ohrožení poskytováním zabezpečeného přístupu bez potřeby VPN nebo veřejných IP adres [1].

Úvod

Migrace infrastruktur do cloudu přinesla řadu výhod, pokud jde o škálovatelnost a flexibilitu. Hlavním zájmem však zůstává bezpečnost. Přístup k virtuálním strojům je kritickým bodem, protože jsou často srdcem mnoha aplikací a služeb. Vystavování portů RDP (3389) nebo SSH (22) přímo internetu je nerozumná bezpečnostní praxe, protože se z nich stávají snadné cíle útoků hrubou silou a dalších zneužití [2].

Azure Bastion je plně spravovaná služba Platform as a Service (PaaS), kterou poskytujete ve své virtuální síti. Umožňuje vám připojit se k virtuálním počítačům ve vaší virtuální síti přímo z Azure Portal pomocí RDP a SSH, aniž byste potřebovali veřejné IP adresy na virtuálních počítačích, agenty nainstalované na virtuálních počítačích nebo speciální klienty/konfigurace na vašem místním počítači. Bastion funguje jako zabezpečený proxy, směruje provoz RDP/SSH prostřednictvím zabezpečeného připojení TLS (Transport Layer Security) do prohlížeče uživatele a chrání VM před přímým vystavením internetu [3].

Tento návod se bude věnovat nezbytným předpokladům, jak zřídit a nakonfigurovat Azure Bastion, jak se připojit k virtuálním počítačům Windows a Linux pomocí RDP a SSH, jak spravovat relace a jak testovat a ověřovat zabezpečený přístup. Budou poskytnuty podrobné pokyny, praktické příklady a stručná vysvětlení, aby čtenář mohl tyto funkce implementovat, testovat a ověřovat. Kromě toho budou probrány bezpečnostní tipy, kontroly souladu a osvědčené postupy, které zajistí bezpečný a efektivní vzdálený přístup k vašim virtuálním strojům autonomním, profesionálním a spolehlivým způsobem.

Proč je Azure Bastion zásadní pro přístup k virtuálním počítačům?

  • Vylepšené zabezpečení: Eliminuje potřebu veřejných IP adres na virtuálních počítačích a chrání je před přímými útoky z internetu. Přístup je přes TLS přes prohlížeč.
  • Zjednodušený přístup: Připojuje se k virtuálním počítačům přímo z Azure Portal bez potřeby nativních klientů RDP/SSH nebo VPN.
  • Nulová důvěra: Je v souladu s principy nulové důvěry a zajišťuje, že přístup je vždy ověřen a autorizován bez ohledu na polohu uživatele.
  • Audit a monitorování: Umožňuje monitorovat a spravovat relace s možností záznamu relací (dostupné na Premium SKU) pro účely auditu a dodržování předpisů.
  • Snížené náklady a složitost: Jako plně spravovaná služba PaaS eliminuje potřebu spravovat vaše vlastní skokové boxy nebo složité VPN.
  • Ochrana skenování portů: VM nemají veřejné IP adresy, takže jsou neviditelné pro skenery portů a škodlivé roboty na internetu.

Předpoklady

K implementaci Azure Bastion budete potřebovat následující položky:

  1. Aktivní předplatné Azure: Předplatné Azure k vytváření a správě prostředků.
  2. Administrativní přístup: Účet s rolí „Vlastník“ nebo „Přispěvatel“ v předplatném nebo skupině prostředků, kde jsou umístěny virtuální počítače.
  3. Azure Virtual Network (VNet): Stávající virtuální síť, která obsahuje virtuální počítače, ke kterým se chcete připojit.
  4. Vyhrazená podsíť pro Azure Bastion: Podsíť v rámci vaší virtuální sítě s názvem „AzureBastionSubnet“ a předponou alespoň „/27“ (např. „10.0.2.0/27“). Tato podsíť je výhradní pro Bastion a nelze ji použít pro jiné zdroje [4].
  5. Virtuální počítače (VM): Stávající virtuální počítače se systémem Windows nebo Linux ve stejné virtuální síti (nebo partnerských virtuálních sítích), ke které se chcete připojit.

Krok za krokem: Konfigurace Azure Bastion

Pojďme zřídit Azure Bastion a použít ji k připojení k virtuálnímu počítači.

1. Vytvoření podsítě AzureBastionSubnet

Předtíma nasadit Bastion, musíte vytvořit vyhrazenou podsíť.

  1. Otevřete prohlížeč a přejděte na Azure Portal: https://portal.azure.com.
  2. Přihlaste se pomocí účtu, který má potřebná oprávnění.
  3. Do horního vyhledávacího pole zadejte „Virtuální sítě“ a vyberte jej z výsledků.
  4. Vyberte virtuální síť, kde jsou umístěny vaše virtuální počítače.
  5. V levém navigačním podokně v části Nastavení vyberte Podsítě.
  6. Klikněte na +Podsíť.

  7. Přidat podsíť:

    • Název: Zadejte „AzureBastionSubnet“ (tento název je povinný).
    • Rozsah adres podsítě: Zadejte rozsah adres s předponou alespoň „/27“ (např. „10.0.2.0/27“).
    • Ostatní nastavení ponechte jako výchozí.
  8. Klikněte na Uložit.

    • Vysvětlení: AzureBastionSubnet je místo, kde bude služba Azure Bastion nasazena. Je důležité, aby název byl přesně AzureBastionSubnet, aby mohla být služba zřízena správně.

2. Poskytování Azure Bastion

Nyní, když je podsíť připravena, můžeme nasadit službu Bastion.

  1. Na portálu Azure do horního vyhledávacího pole zadejte „Bastion“ a vyberte jej z výsledků.
  2. Klikněte na + Vytvořit.

  3. Základy:

    • Předplatné: Vyberte své předplatné.
    • Skupina prostředků: Vyberte stejnou skupinu prostředků jako vaše virtuální síť.
    • Název: Pojmenujte svou instanci Bastion (např. myBastionHost).
    • Region: Vyberte stejnou oblast jako vaše virtuální síť.
    • Tier: Vyberte „Základní“ (pro základní RDP/SSH) nebo „Standardní“ (pro další funkce, jako je nahrávání relace, sdílení odkazů atd.). Pro tuto příručku použijeme Basic.
  4. Virtuální síť:

    • Virtuální síť: Vyberte virtuální síť, kde jste vytvořili „AzureBastionSubnet“.
    • Subnet: AzureBastionSubnet bude vybrána automaticky.
    • Veřejná IP adresa: Klikněte na „Vytvořit novou“. Zadejte název veřejné IP adresy (např. myBastionPublicIP). Tato veřejná IP je určena pro službu Bastion a není vystavena vašim virtuálním počítačům.
  5. Klikněte na „Zkontrolovat + vytvořit“ a poté na Vytvořit.

    • Vysvětlení: Zřizování Azure Bastion může trvat 5 až 10 minut. Po nasazení bude připraven k použití pro přístup k vašim virtuálním počítačům.

3. Připojení k virtuálnímu počítači Windows přes RDP

Pojďme se připojit k virtuálnímu počítači se systémem Windows, aniž bychom odhalili jeho port RDP.

  1. Na portálu Azure přejděte na svůj Virtuální počítač s Windows.
  2. V levém navigačním panelu vyberte Připojit.
  3. Vyberte Bastion.
  4. Zadejte přihlašovací údaje a heslo uživatele virtuálního počítače Windows.
  5. Klikněte na Připojit.

    • Očekávaná akce: Otevře se nová karta prohlížeče a uvidíte plochu virtuálního počítače se systémem Windows. Propojení je kompletně založeno na HTML5 v prohlížeči.

4. Připojení k virtuálnímu počítači Linux přes SSH

Pojďme se připojit k virtuálnímu počítači s Linuxem, aniž bychom odhalili jeho port SSH.

  1. Na webu Azure Portal přejděte na svůj Virtuální počítač s Linuxem.
  2. V levém navigačním panelu vyberte Připojit.
  3. Vyberte Bastion.
  4. Vyberte Typ ověření: Uživatelské jméno a heslo nebo SSH Private Key.
    • Pokud je Uživatelské jméno a heslo, zadejte své přihlašovací údaje k virtuálnímu počítači Linux.
    • Pokud je to SSH Private Key, nahrajte svůj soubor soukromého klíče (.pem nebo .ppk).
  5. Klikněte na Připojit.

    • Očekávaná akce: Otevře se nová karta prohlížeče a uvidíte terminál svého virtuálního počítače s Linuxem, který vám umožní spouštět příkazy SSH.

Validace a testování

Je důležité ověřit, že přístup přes Azure Bastion funguje podle očekávání a že virtuální počítače nejsou přístupné jinými způsoby.

1. Kontrola připojení Bastion

  1. Scénář: Zkuste získat přístup k virtuálním počítačům se systémem Windows a Linux pomocí Azure Bastion podle kroků 3 a 4 výše.
  2. Očekávaná akce: Připojení RDP a SSH by mělo být úspěšně navázáno prostřednictvím prohlížeče.
  3. Ověření:
    • Potvrďte, že můžete pracovat s plochou Windows VM a spouštět příkazy v terminálu Linux VM.

2. Kontrola přímé nedostupnosti virtuálních počítačů

  1. Scénář: Zkuste přistupovat k vašim virtuálním počítačům přímo z internetu pomocí klienta RDP nebo SSH a přejděte na veřejnou IP virtuálního počítače (pokud existuje) nebo soukromou IP (pokud jste mimo virtuální síť).
  2. Očekávaná akce: Přímé pokusy o připojení by měly selhat, protože porty RDP/SSH by neměly být veřejně vystaveny.
  3. Ověření: *Pokud mají vaše virtuální počítače veřejné IP adresy, zkontrolujte pravidla skupiny Network Security Group (NSG) spojená se síťovým rozhraním virtuálního počítače nebo podsítí virtuálního počítače. Ujistěte se, že porty 3389 (RDP) a 22 (SSH) nejsou otevřené pro Any nebo Internet.
    • V ideálním případě by virtuální počítače přístupné přes Bastion neměly mít přidružené veřejné IP adresy.

3. Bastion Session Monitoring (standardní SKU)

Pokud jste Bastion zřídili se standardní SKU, můžete sledovat aktivní relace.

  1. Na webu Azure Portal přejděte ke svému prostředku Azure Bastion (myBastionHost).
  2. V levém navigačním panelu pod Monitoring vyberte Sessions.
  3. Zobrazí se seznam aktivních relací RDP a SSH, včetně uživatele, zdrojové IP a cílového virtuálního počítače.

Bezpečnostní tipy a doporučené postupy

  • Odebrání veřejných IP adres z virtuálních počítačů: Po konfiguraci Azure Bastion odeberte z virtuálních počítačů všechny veřejné IP adresy. To je hlavní bezpečnostní výhoda Bastionu.
  • Vhodně nakonfigurujte NSG: Ujistěte se, že skupiny zabezpečení sítě (NSG) vašich podsítí virtuálních počítačů a AzureBastionSubnet jsou správně nakonfigurovány tak, aby umožňovaly pouze nezbytný provoz. Bastion potřebuje přístup k soukromým portům RDP/SSH virtuálních počítačů, ale virtuální počítače nepotřebují veřejný příchozí přístup.
  • Princip nejmenšího privilegia: Přidělte pouze nezbytná oprávnění, aby se uživatelé mohli připojit k virtuálním počítačům přes Bastion. Azure RBAC lze použít k řízení toho, kdo může používat Bastion.
  • Silné ověřování: Vždy používejte silné ověřování pro přihlašovací údaje VM. Zkombinujte s Azure AD pro ověřování a pokud je to možné s podmíněným přístupem, abyste vyžadovali MFA pro přístup k Azure Portal, který zase řídí přístup k Bastion.
  • Nahrávání relací (Premium SKU): Pro prostředí, která vyžadují přísné dodržování předpisů a auditování, zvažte použití Azure Bastion Premium SKU k záznamu relací RDP a SSH. To poskytuje vizuální záznam toho, co bylo provedeno na virtuálních počítačích.
  • Monitorování protokolů: Monitorujte protokoly aktivit Azure pro Bastion a protokoly zabezpečení pro vaše virtuální počítače, abyste zjistili podezřelou aktivitu nebo pokusy o neoprávněný přístup.
  • Aktualizace a opravy: Udržujte své virtuální počítače aktuální pomocí nejnovějších bezpečnostních záplat, abyste zmírnili interní zranitelnosti.

Běžné odstraňování problémů

  • Při pokusu o připojení k virtuálnímu počítači nevidím možnost Bastion:
    • Ověřte, že Azure Bastion byl zřízen ve stejné virtuální síti (nebo partnerské virtuální síti) jako virtuální počítač.
    • Ujistěte se, že AzureBastionSubnet existuje a má správnou předponu adresy (/27 nebo vyšší).
    • Zkontrolujte, zda je Bastion ve stavu „Spuštěno“ na Azure Portal.
  • Chyba připojení RDP/SSH přes Bastion:
    • Neplatné přihlašovací údaje: Ověřte, zda jsou přihlašovací údaje uživatele a hesla (nebo klíč SSH) pro virtuální počítač správné.
    • Problémy NSG: Potvrďte, že NSG podsítě virtuálního počítače umožňuje příchozí provoz na portech 3389 (RDP) nebo 22 (SSH) AzureBastionSubnet.
    • VM Firewall: Zkontrolujte, zda interní firewall virtuálního počítače neblokuje připojení RDP/SSH.
    • Služba RDP/SSH neběží: Ujistěte se, že na virtuálním počítači běží služba RDP (pro Windows) nebo SSH (pro Linux).
  • Pomalý výkon nebo odpojení:
    • Zkontrolujte šířku pásma připojení k internetu. Bastion streamuje video relace do vašeho prohlížeče.
    • Zvažte použití Bastion's Standard nebo Premium SKU, které nabízejí lepší výkon a další funkce.
    • Zkontrolujte vysoké využití CPU nebo paměti na cílovém virtuálním počítači, které může ovlivnit výkon relace.
  • Nemohu získat přístup k interním zdrojům VM přes Bastion:
    • Azure Bastion poskytuje připojení k virtuálnímu počítači. Po připojení k virtuálnímu počítači bude přístup k dalším interním zdrojům virtuální sítě záviset na konfiguraci vlastní sítě virtuálního počítače a příslušných pravidlech NSG.

Závěr

Azure Bastion je nezbytnou součástí pro zabezpečení cloudových prostředí a poskytuje bezpečnou a zjednodušenou metodu přístupu k virtuálním počítačům. Odstraněním přímého vystavení portů RDP/SSH internetu výrazně snižuje plochu útoku a posiluje celkovou pozici zabezpečení. Pečlivá implementace, integrace s osvědčenými bezpečnostními postupy a nepřetržité monitorování jsou klíčové pro maximalizaci výhod Bastion. S tímto gDíky tomuto praktickému přístupu budou odborníci na zabezpečení a správci IT dobře vybaveni ke konfiguraci, ověřování a správě Azure Bastion, což zajistí, že přístup k jejich virtuálním počítačům bude vždy bezpečný a vyhovující.


Reference:

[1] Microsoft Learn. Co je Azure Bastion?. Dostupné na: https://learn.microsoft.com/pt-br/azure/bastion/bastion-overview [2] Microsoft Learn. Úvahy o návrhu a plánování pro použití Azure Bastion k povolení zabezpečeného vzdáleného přístupu k virtuálním počítačům v Azure. Dostupné na: [https://learn.microsoft.com/pt-br/azure/cloud-adoption-framework/ready/azure-best-practices/plan-for-virtual-machine-remote-access] (https://learn.microsoft.com/pt-br/azure/cloud-adoption-framework/ready/azure-best-practices/plan-for-virtual-machine-remote-access) [3] Microsoft Learn. Připojte se k virtuálnímu počítači s Windows pomocí RDP – Azure Bastion. Dostupné na: https://learn.microsoft.com/pt-br/azure/bastion/bastion-connect-vm-rdp-windows [4] Microsoft Learn. Nakonfigurujte hostitele Bastion. Dostupné na: https://learn.microsoft.com/pt-br/azure/bastion/tutorial-create-host-portal [5] Microsoft Learn. Připojte se k virtuálnímu počítači s Linuxem pomocí SSH – Azure Bastion. Dostupné na: https://learn.microsoft.com/pt-br/azure/bastion/bastion-connect-vm-ssh-linux [6] Microsoft Learn. Sledování a správa relace Azure Bastion. Dostupné na: https://learn.microsoft.com/pt-br/azure/bastion/session-monitoring [7] Microsoft Learn. Nakonfigurujte nahrávání relace Bastion. Dostupné na: https://learn.microsoft.com/pt-br/azure/bastion/session-recording