Gebruik Azure Bastion vir veilige toegang tot virtuele masjiene

Gebruik Azure Bastion vir veilige toegang tot virtuele masjiene

04/01/2025

Hierdie tegniese en opvoedkundige artikel het ten doel om sekuriteitsontleders, IT-administrateurs en stelselingenieurs te lei in die implementering en konfigurasie van Azure Bastion vir veilige toegang tot virtuele masjiene (VM's) in Azure. In 'n wolkomgewing is sekuriteit van toegang tot VM's noodsaaklik om hulpbronne en data te beskerm. Tradisioneel het toegang tot VM's via RDP (Remote Desktop Protocol) of SSH (Secure Shell) vereis dat openbare poorte aan die internet blootgestel word, wat die aanvaloppervlak aansienlik vergroot het. Azure Bastion bied 'n robuuste en veilige oplossing om hierdie blootstelling uit te skakel deur veilige toegang te verskaf sonder die behoefte aan VPN's of openbare IP's [1].

Inleiding

Die migreer van infrastruktuur na die wolk het talle voordele in terme van skaalbaarheid en buigsaamheid meegebring. Sekuriteit bly egter 'n groot bekommernis. Toegang tot virtuele masjiene is 'n kritieke punt, aangesien dit dikwels die hart van baie toepassings en dienste is. Om RDP (3389) of SSH (22) poorte direk aan die internet bloot te stel, is 'n ondeurdagte sekuriteitspraktyk, aangesien dit hulle maklike teikens maak vir brute krag aanvalle en ander misbruik [2].

Azure Bastion is 'n volledig bestuurde platform as 'n diens (PaaS) diens wat u in u virtuele netwerk voorsien. Dit laat jou toe om direk vanaf die Azure-portaal aan virtuele masjiene in jou virtuele netwerk te koppel, deur RDP en SSH te gebruik, sonder die behoefte aan publieke IP's op die VM's, agente wat op die VM's geïnstalleer is, of spesiale kliënte/konfigurasies op jou plaaslike masjien. Bastion dien as 'n veilige instaanbediener, wat RDP/SSH-verkeer deur 'n veilige TLS (Transport Layer Security)-verbinding na die gebruiker se blaaier stuur, wat VM's beskerm teen direkte blootstelling aan die internet [3].

Hierdie hoe-om-gids sal voorvereistes dek, hoe om Azure Bastion te voorsien en op te stel, hoe om aan Windows- en Linux-VM's te koppel deur RDP en SSH te gebruik, hoe om sessies te bestuur, en hoe om veilige toegang te toets en te valideer. Stap-vir-stap instruksies, praktiese voorbeelde en bondige verduidelikings sal verskaf word sodat die leser hierdie kenmerke kan implementeer, toets en valideer. Daarbenewens sal sekuriteitswenke, nakomingskontroles en beste praktyke bespreek word om veilige en doeltreffende afstandtoegang tot jou virtuele masjiene te verseker, op 'n outonome, professionele en betroubare manier.

Waarom is Azure Bastion noodsaaklik vir VM-toegang?

  • Verbeterde sekuriteit: Elimineer die behoefte aan openbare IP's op VM's, en beskerm hulle teen direkte aanvalle vanaf die internet. Toegang is via TLS deur die blaaier.
  • Vereenvoudigde toegang: Koppel aan VM's direk vanaf die Azure-portaal, sonder die behoefte aan inheemse RDP/SSH-kliënte of VPN's.
  • Zero Trust: Belyn met die beginsels van Zero Trust, om te verseker dat toegang altyd geverifieer en gemagtig is, ongeag die gebruiker se ligging.
  • Oudit en Monitering: Laat jou toe om sessies te monitor en te bestuur, met die opsie van sessie-opname (beskikbaar op die Premium SKU) vir oudit- en voldoeningsdoeleindes.
  • Verlaagde koste en kompleksiteit: As 'n volledig bestuurde PaaS-diens, skakel dit die behoefte uit om jou eie springbokse of komplekse VPN's te bestuur.
  • Poortskanderingsbeskerming: VM'e het nie publieke IP's nie, wat hulle onsigbaar maak vir haweskandeerders en kwaadwillige bots op die internet.

Voorvereistes

Om Azure Bastion te implementeer, benodig u die volgende items:

  1. Aktiewe Azure-intekening: 'n Azure-intekening om hulpbronne te skep en te bestuur.
  2. Administratiewe toegang: 'n Rekening met die rol van 'Eienaar' of 'Bydraer' op die intekening of hulpbrongroep waar die VM'e geleë is.
  3. Azure Virtual Network (VNet): 'n Bestaande virtuele netwerk wat die VM's bevat waaraan jy wil koppel.
  4. Toegewyde subnet vir Azure Bastion: 'n Subnet binne jou VNet met die naam AzureBastionSubnet en 'n voorvoegsel van ten minste /27 (bv.: 10.0.2.0/27). Hierdie subnet is eksklusief vir Bastion en kan nie vir ander hulpbronne gebruik word nie [4].
  5. Virtuele masjiene (VM's): Bestaande Windows- of Linux-VM's in dieselfde VNet (of eweknie-VNets) waaraan jy wil koppel.

Stap vir stap: konfigureer Azure Bastion

Kom ons voorsien Azure Bastion en gebruik dit om aan 'n VM te koppel.

1. Skep die AzureBastionSubnet-subnet

Voorheenen Bastion ontplooi, moet jy 'n toegewyde subnet skep.

  1. Maak jou blaaier oop en navigeer na die Azure-portaal: https://portal.azure.com.
  2. Meld aan met 'n rekening wat die nodige toestemmings het.
  3. Tik Virtuele netwerke in die boonste soekveld en kies dit uit die resultate.
  4. Kies die virtuele netwerk waar jou VM'e geleë is.
  5. In die linkernavigasievenster, onder Instellings, kies Subnets.
  6. Klik +Subnet.

  7. Voeg subnet by:

    • Naam: Voer AzureBastionSubnet in (hierdie naam word vereis).
    • Subnetadresreeks: Verskaf 'n adresreeks met 'n voorvoegsel van ten minste /27 (bv. 10.0.2.0/27).
    • Laat ander instellings as verstek.
  8. Klik Stoor.

    • Verduideliking: Die AzureBastionSubnet is waar die Azure Bastion-diens ontplooi sal word. Dit is van kardinale belang dat die naam presies AzureBastionSubnet is sodat die diens korrek voorsien kan word.

2. Voorsiening van Azure Bastion

Noudat die subnet gereed is, kan ons die Bastion-diens ontplooi.

  1. In die Azure-portaal, in die boonste soekveld, tik Bastion en kies dit uit die resultate.
  2. Klik + Skep.

  3. Basies:

    • Intekening: Kies jou intekening.
    • Hulpbrongroep: Kies dieselfde hulpbrongroep as jou VNet.
    • Naam: Gee jou Bastion-instansie 'n naam (bv. myBastionHost).
    • Streek: Kies dieselfde streek as jou VNet.
    • Tier: Kies Basies (vir basiese RDP/SSH) of Standard (vir bykomende kenmerke soos sessie-opname, skakeldeling, ens.). Vir hierdie gids sal ons Basies gebruik.
  4. Virtuele netwerk:

    • Virtuele netwerk: Kies die VNet waar jy die AzureBastionSubnet geskep het.
    • Subnet: Die AzureBastionSubnet sal outomaties gekies word.
    • Publieke IP-adres: Klik op Skep nuwe. Gee die publieke IP 'n naam (bv. myBastionPublicIP). Hierdie openbare IP is vir die Bastion-diens en word nie aan jou VM'e blootgestel nie.
  5. Klik Hersien + skep en dan Skep.

    • Verduideliking: Azure Bastion-voorsiening kan 5 tot 10 minute neem. Sodra dit ontplooi is, sal dit gereed wees om gebruik te word om toegang tot jou VM's te kry.

3. Koppel aan 'n Windows VM via RDP

Kom ons koppel aan 'n Windows VM sonder om sy RDP-poort bloot te stel.

  1. In die Azure-portaal, navigeer na jou Windows VM.
  2. Kies Verbind in die linkernavigasiepaneel.
  3. Kies Bastion.
  4. Voer jou Windows VM-gebruikersbewyse en wagwoord in.
  5. Klik Connect.

    • Verwagte aksie: 'n Nuwe blaaieroortjie sal oopmaak, en jy sal jou Windows VM-lessenaar sien. Die verbinding is heeltemal gebaseer op HTML5 in die blaaier.

4. Koppel aan 'n Linux VM via SSH

Kom ons koppel aan 'n Linux VM sonder om sy SSH-poort bloot te stel.

  1. In die Azure-portaal, navigeer na jou Linux VM.
  2. Kies Verbind in die linkernavigasiepaneel.
  3. Kies Bastion.
  4. Kies die Authentication Type: Gebruikersnaam en Wagwoord of SSH Private Key.
    • As Gebruikersnaam en wagwoord, voer jou Linux VM geloofsbriewe in.
    • As SSH Privaat Sleutel, laai jou private sleutellêer op (.pem of .ppk).
  5. Klik Connect.

    • Verwagte aksie: 'n Nuwe blaaieroortjie sal oopmaak, en jy sal jou Linux VM se terminaal sien, wat jou toelaat om SSH-opdragte uit te voer.

Bekragtiging en toetsing

Dit is van kardinale belang om te bevestig dat toegang via Azure Bastion soos verwag werk en dat die VM's nie op ander maniere toeganklik is nie.

1. Kontroleer Bastion-verbinding

  1. Scenario: Probeer om toegang tot jou Windows- en Linux-VM's te kry deur Azure Bastion te gebruik, soos in stappe 3 en 4 hierbo.
  2. Verwagte aksie: RDP- en SSH-verbindings moet suksesvol deur die blaaier tot stand gebring word.
  3. Verifikasie:
    • Bevestig dat jy met die Windows VM-lessenaar kan kommunikeer en opdragte in die Linux VM-terminaal kan uitvoer.

2. Kontroleer direkte ontoeganklikheid van VM'e

  1. Scenario: Probeer om toegang tot jou VM'e direk vanaf die internet te gebruik deur 'n RDP- of SSH-kliënt te gebruik, en wys na die VM se openbare IP (as daar een is) of private IP (as jy buite die VNet is).
  2. Verwagte aksie: Direkte verbindingspogings behoort te misluk aangesien RDP/SSH-poorte nie in die openbaar blootgestel moet word nie.
  3. Verifikasie: *As jou VM's publieke IP's het, gaan die Netwerksekuriteitsgroep (NSG)-reëls na wat met die VM se netwerkkoppelvlak of VM se subnet geassosieer word. Maak seker dat poorte 3389 (RDP) en 22 (SSH) nie oop is vir Enige of Internet nie.
    • Ideaal gesproke moet VM's wat via Bastion verkry word, nie geassosieerde openbare IP's hê nie.

3. Bastion Sessie Monitering (Standaard SKU)

As jy Bastion met die Standard SKU voorsien het, kan jy aktiewe sessies monitor.

  1. In die Azure-portaal, navigeer na jou Azure Bastion-hulpbron (myBastionHost).
  2. In die linkernavigasiepaneel, onder Monitoring, kies Sessies.
  3. Jy sal 'n lys van aktiewe RDP en SSH sessies sien, insluitend die gebruiker, bron IP en bestemming VM.

Sekuriteitswenke en beste praktyke

  • Verwyder publieke IP's van VM's: Nadat jy Azure Bastion gekonfigureer het, verwyder enige publieke IP's van jou VM's. Dit is die belangrikste sekuriteitsvoordeel van Bastion.
  • Stel NSG's gepas op: Maak seker dat die netwerksekuriteitsgroepe (NSG's) van jou VM-subnette en AzureBastionSubnet korrek opgestel is om slegs nodige verkeer toe te laat. Bastion benodig toegang tot VM's se private RDP/SSH-poorte, maar VM's het nie publieke inkomende toegang nodig nie.
  • Beginsel van die minste voorreg: Ken slegs die nodige toestemmings toe sodat gebruikers via Bastion aan VM'e kan koppel. Azure RBAC kan gebruik word om te beheer wie Bastion kan gebruik.
  • Sterk stawing: Gebruik altyd sterk stawing vir jou VM-eiebewyse. Kombineer met Azure AD vir stawing en, indien moontlik, voorwaardelike toegang om MFA te vereis vir toegang tot die Azure-portaal, wat op sy beurt toegang tot Bastion beheer.
  • Sessie-opname (Premium SKU): Vir omgewings wat streng nakoming en ouditering vereis, oorweeg dit om die Azure Bastion Premium SKU te gebruik om RDP- en SSH-sessies op te neem. Dit verskaf 'n visuele rekord van wat op die VM'e gedoen is.
  • Logboekmonitering: Monitor Azure-aktiwiteitloglêers vir Bastion en sekuriteitloglêers vir jou VM's om verdagte aktiwiteit of ongemagtigde toegangspogings op te spoor.
  • Opdaterings en regstellings: Hou jou VM's op datum met die nuutste sekuriteitsreëlings om interne kwesbaarhede te versag.

Algemene probleemoplossing

  • Ek kan nie die Bastion-opsie sien wanneer ek probeer om aan die VM te koppel nie:
    • Verifieer dat Azure Bastion in dieselfde VNet (of eweknie-VNet) as die VM voorsien is.
    • Maak seker dat die AzureBastionSubnet bestaan ​​en die korrekte adresvoorvoegsel (/27 of hoër) het.
    • Kontroleer of Bastion in die 'Lopende' toestand is in die Azure-portaal.
  • RDP/SSH-verbindingsfout via Bastion:
    • Ongeldige geloofsbriewe: Verifieer dat die gebruiker- en wagwoordbewyse (of SSH-sleutel) korrek is vir die VM.
    • NSG-kwessies: Bevestig dat die VM-subnet se NSG inkomende verkeer op poorte 3389 (RDP) of 22 (SSH) van die AzureBastionSubnet toelaat.
    • VM Firewall: Kontroleer dat die VM se interne firewall nie RDP/SSH-verbindings blokkeer nie.
    • RDP/SSH-diens loop nie: Maak seker dat die RDP (vir Windows) of SSH (vir Linux) diens op die VM loop.
  • ** Stadige werkverrigting of ontkoppelings**:
    • Gaan jou internetverbindingsbandwydte na. Bastion stroom die sessievideo na jou blaaier.
    • Oorweeg dit om Bastion se Standard of Premium SKU te gebruik, wat beter werkverrigting en bykomende kenmerke bied.
    • Kyk vir hoë SVE of geheuebenutting op die teiken VM, wat sessieprestasie kan beïnvloed.
  • Ek het nie toegang tot interne VM-hulpbronne via Bastion nie:
    • Azure Bastion bied konnektiwiteit aan die VM. Sodra dit aan die VM gekoppel is, sal toegang tot ander interne hulpbronne van die VNet afhang van die VM se eie netwerkkonfigurasies en toepaslike NSG-reëls.

Gevolgtrekking

Azure Bastion is 'n noodsaaklike komponent vir die sekuriteit van wolkomgewings, wat 'n veilige en vereenvoudigde metode bied vir toegang tot virtuele masjiene. Deur direkte blootstelling van RDP/SSH-poorte aan die internet uit te skakel, verminder dit die aanvaloppervlak aansienlik en versterk die algehele sekuriteitsposisie. Versigtige implementering, integrasie met beste sekuriteitspraktyke en deurlopende monitering is van kritieke belang om die voordele van Bastion te maksimeer. Met hierdie gMet hierdie praktiese benadering sal sekuriteitspersoneel en IT-administrateurs goed toegerus wees om Azure Bastion op te stel, te valideer en te bestuur, om te verseker dat toegang tot hul virtuele masjiene altyd veilig en voldoen.


Verwysings:

[1] Microsoft Learn. Wat is Azure Bastion?. Beskikbaar by: https://learn.microsoft.com/pt-br/azure/bastion/bastion-overview [2] Microsoft Learn. * Ontwerp- en beplanningsoorwegings vir die gebruik van Azure Bastion om veilige afstandtoegang tot virtuele masjiene in Azure moontlik te maak. Beskikbaar by: [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. Koppel aan 'n Windows VM met behulp van RDP - Azure Bastion. Beskikbaar by: https://learn.microsoft.com/pt-br/azure/bastion/bastion-connect-vm-rdp-windows [4] Microsoft Learn. Konfigureer 'n Bastion-gasheer. Beskikbaar by: https://learn.microsoft.com/pt-br/azure/bastion/tutorial-create-host-portal [5] Microsoft Learn. Koppel aan 'n Linux VM met SSH - Azure Bastion. Beskikbaar by: https://learn.microsoft.com/pt-br/azure/bastion/bastion-connect-vm-ssh-linux [6] Microsoft Learn. Azure Bastion sessie monitering en bestuur. Beskikbaar by: https://learn.microsoft.com/pt-br/azure/bastion/session-monitoring [7] Microsoft Learn. Konfigureer Bastion-sessie-opname*. Beskikbaar by: https://learn.microsoft.com/pt-br/azure/bastion/session-recording