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


A MACsec konfigurálása az ExpressRoute Direct-portokon

Ez a cikk útmutatást nyújt a MACsec, a peremhálózati útválasztók és a Microsoft peremhálózati útválasztói közötti kommunikációt PowerShell-parancsokkal védő biztonsági protokoll konfigurálásához.

Mielőtt elkezdené

A MACsec konfigurálása előtt győződjön meg arról, hogy megfelel az alábbi előfeltételeknek:

Az Azure PowerShell használata

A cikkben szereplő lépések és példák az Azure PowerShell Az-modulokat használják. Az Az-modulok helyi telepítéséhez tekintse meg az Azure PowerShell telepítését. Az új Az modulról az új Azure PowerShell Az modul bemutatása című témakörben olvashat bővebben. A PowerShell-parancsmagok gyakran frissülnek. Ha nem a legújabb verziót futtatja, az utasításokban megadott értékek sikertelenek lehetnek. A PowerShell telepített verzióinak megkereséséhez használja a Get-Module -ListAvailable Az parancsmagot.

Az Azure Cloud Shell használatával a legtöbb PowerShell-parancsmagot és CLI-parancsot futtathatja az Azure PowerShell vagy a CLI helyi telepítése helyett. Az Azure Cloud Shell egy ingyenes interaktív rendszerhéj, amely előre telepítve van a közös Azure-eszközökkel, és a fiókjával való használatra van konfigurálva. A cikkben szereplő kód Azure Cloud Shellen való futtatásához nyisson meg egy Cloud Shell-munkamenetet, másolja a kódot a kódblokk Másolás gombjára, és illessze be a Cloud Shell-munkamenetbe a Windows és Linux rendszeren a Ctrl+Shift+V billentyűkombinációval, macOS rendszeren pedig a Cmd+Shift+V billentyűkombinációval. A beillesztett szöveg nem lesz automatikusan végrehajtva, a kód futtatásához nyomja le az Enter billentyűt .

Néhány módszer a Cloud Shell indításához:

Lehetőség Hivatkozás
Kattintson a Try It (Kipróbálás) lehetőségre a kódblokk jobb felső sarkában. A Cloud Shell ebben a cikkben
Nyissa meg a Cloud Shellt a böngészőben. https://shell.azure.com/powershell
Az Azure Portal jobb felső sarkában található menüben kattintson a Cloud Shell gombra. A Cloud Shell a portálon

Jelentkezzen be, és válassza ki a megfelelő előfizetést

A konfiguráció megkezdéséhez kövesse az alábbi lépéseket:

  • Jelentkezzen be azure-fiókjába a hitelesítő adataival.

  • Válassza ki a konfigurációhoz használni kívánt előfizetést.

    Ha az Azure Cloud Shellt használja, a Kipróbálás gombra kattintva automatikusan bejelentkezik az Azure-fiókjába. Ha helyileg szeretne bejelentkezni, nyissa meg a PowerShell-konzolt emelt szintű jogosultságokkal, és futtassa a parancsmagot a csatlakozáshoz.

    Connect-AzAccount
    

    Ha több előfizetéssel rendelkezik, kérje le az Azure-előfizetések listáját.

    Get-AzSubscription
    

    Válassza ki a használni kívánt előfizetést.

    Select-AzSubscription -SubscriptionName "Name of subscription"
    

Azure Key Vault, MACsec-titkos kódok és felhasználói identitás létrehozása

  1. A MACsec titkos kulcsainak biztonságos tárolásához létre kell hoznia egy Key Vault-példányt egy új erőforráscsoportban. A Key Vault egy szolgáltatás, amely lehetővé teszi a titkosítási kulcsok, tanúsítványok és titkos kódok kezelését és védelmét az Azure-ban. További információ: Mi az Azure Key Vault?

    New-AzResourceGroup -Name "your_resource_group" -Location "resource_location"
    $keyVault = New-AzKeyVault -Name "your_key_vault_name" -ResourceGroupName "your_resource_group" -Location "resource_location" -SoftDeleteRetentionInDays 90
    

    Ehhez a konfigurációhoz újra felhasználhat egy meglévő Key Vaultot vagy erőforráscsoportot. Azonban meg kell győződnie arról, hogy a [helyreállítható törlési funkció] engedélyezve van a Key Vaultban. Ez a funkció lehetővé teszi a törölt kulcsok, titkos kulcsok és tanúsítványok helyreállítását egy megőrzési időszakon belül. Ha a Key Vaultban nincs engedélyezve a helyreállítható törlés, futtassa az alábbi parancsokat az engedélyezéséhez:

    ($resource = Get-AzResource -ResourceId (Get-AzKeyVault -VaultName "your_existing_keyvault").ResourceId).Properties | Add-Member -MemberType "NoteProperty" -Name "enableSoftDelete" -Value "true"
    Set-AzResource -ResourceId $resource.ResourceId -Properties $resource.Properties
    

    Feljegyzés

    • Az ExpressRoute egy megbízható szolgáltatás az Azure-ban, amely támogatja az Azure Key Vault hálózati biztonsági szabályzatát. További információ: Az Azure Key Vault tűzfalának és virtuális hálózatainak konfigurálása.
    • Ne helyezze az Azure Key Vaultot privát végpont mögé, mivel ez megakadályozza az ExpressRoute felügyeleti síkkal való kommunikációt. Az ExpressRoute felügyeleti síkja felelős a kapcsolat MACsec-kulcsainak és paramétereinek kezeléséért.
  2. Új felhasználói identitás létrehozásához a New-AzUserAssignedIdentity parancsmagot kell használnia. Ez a parancsmag létrehoz egy felhasználó által hozzárendelt felügyelt identitást a Microsoft Entra-azonosítóban, és regisztrálja azt a megadott előfizetésben és erőforráscsoportban. A felhasználó által hozzárendelt felügyelt identitás egy önálló Azure-erőforrás, amely bármely olyan Azure-szolgáltatáshoz hozzárendelhető, amely támogatja a felügyelt identitásokat. Ezzel az identitással hitelesítheti és engedélyezheti az Azure-erőforrásokhoz való hozzáférést anélkül, hogy hitelesítő adatokat tárolhat a kódban vagy a konfigurációs fájlokban. További információ: Mi az Azure-erőforrások felügyelt identitása?

    $identity = New-AzUserAssignedIdentity  -Name "identity_name" -Location "resource_location" -ResourceGroupName "your_resource_group"
    

    Meglévő felhasználói identitás használatához futtassa a következő parancsot:

    $identity = Get-AzUserAssignedIdentity -ResourceGroupName "your_resource_group" -Name "identity_name"
    

    Telepítse a következő modult Rendszergazda módban, ha a PowerShell nem ismeri fel New-AzUserAssignedIdentity vagy Get-AzUserAssignedIdentity nem érvényes parancsmagként használja. Ezután hajtsa végre ismét a fenti parancsot.

    Install-Module -Name Az.ManagedServiceIdentity
    
  3. Hozzon létre egy kapcsolattársítási kulcsot (CAK) és egy kapcsolattársítási kulcsnevet (CKN), és tárolja őket a Key Vaultban.

    $CAK = ConvertTo-SecureString "your_key" -AsPlainText -Force
    $CKN = ConvertTo-SecureString "your_key_name" -AsPlainText -Force
    $MACsecCAKSecret = Set-AzKeyVaultSecret -VaultName "your_key_vault_name" -Name "CAK_name" -SecretValue $CAK
    $MACsecCKNSecret = Set-AzKeyVaultSecret -VaultName "your_key_vault_name" -Name "CKN_name" -SecretValue $CKN
    

    Feljegyzés

    • A CKN-nek legfeljebb 64 hexadecimális számjegyig (0-9, A-F) álló hosszúságú sztringnek kell lennie.
    • A CAK hossza a megadott titkosítási csomagtól függ:
      • GcmAes128 és GcmAesXpn128 esetén a CAK-nak 32 hexadecimális számjegyet (0-9, A-F) tartalmazó páros hosszúságú sztringnek kell lennie.
      • GcmAes256 és GcmAesXpn256 esetén a CAK-nak 64 hexadecimális számjegyet (0-9, A-F) tartalmazó páros hosszúságú sztringnek kell lennie.
    • CAK esetén a kulcs teljes hosszát kell használni. Ha a kulcs rövidebb, mint a szükséges hossz, akkor 0's a rendszer hozzáadja a kulcs végéhez, hogy megfeleljen a hosszkövetelménynek. Például az 1234-es CAK 12340000 lesz... a 128 bites és a 256 bites titkosítás alapján is.
  4. Adja meg a felhasználó identitásának a művelet végrehajtásához GET szükséges engedélyt.

    Set-AzKeyVaultAccessPolicy -VaultName "your_key_vault_name" -PermissionsToSecrets get -ObjectId $identity.PrincipalId
    

    A felhasználói identitás hozzáférést szerzett a titkos kulcsok( például CAK és CKN) lekéréséhez a Key Vaultból.

  5. Konfigurálja a felhasználói identitást az ExpressRoute kijelölt szolgáltatásnévként.

    $erIdentity = New-AzExpressRoutePortIdentity -UserAssignedIdentityId $identity.Id
    

A MACsec konfigurálása az ExpressRoute Direct-portokon

A MACsec engedélyezése

Minden ExpressRoute Direct-példány két fizikai portból áll. A MACsec mindkét porton egyszerre vagy egyenként is aktiválható. Az utóbbi lehetőség lehetővé teszi, hogy a forgalmat egy működő portra irányítsa a másik port fenntartása mellett, ami csökkentheti a fennakadást, ha az ExpressRoute Direct működik.

Feljegyzés

Az XPN és a nem XPN titkosítást is konfigurálhatja:

  • GcmAes128
  • GcmAes256
  • GcmAesXpn128
  • GcmAesXpn256

A javasolt ajánlott eljárás a titkosítás xpn titkosítással történő beállítása, amely megakadályozza a nem xpn titkosítással nagy sebességű hivatkozásokon előforduló szórványos munkamenethibákat.

  1. Hozza létre a MACsec titkos kulcsokat és titkosítást, és kapcsolja össze a felhasználói identitást a porttal, hogy az ExpressRoute felügyeleti kód szükség esetén lekérhesse a MACsec titkos kulcsokat.

    $erDirect = Get-AzExpressRoutePort -ResourceGroupName "your_resource_group" -Name "your_direct_port_name"
    $erDirect.Links[0]. MacSecConfig.CknSecretIdentifier = $MacSecCKNSecret.Id
    $erDirect.Links[0]. MacSecConfig.CakSecretIdentifier = $MacSecCAKSecret.Id
    $erDirect.Links[0]. MacSecConfig.Cipher = "GcmAes256"
    $erDirect.Links[1]. MacSecConfig.CknSecretIdentifier = $MacSecCKNSecret.Id
    $erDirect.Links[1]. MacSecConfig.CakSecretIdentifier = $MacSecCAKSecret.Id
    $erDirect.Links[1]. MacSecConfig.Cipher = "GcmAes256"
    $erDirect.identity = $erIdentity
    Set-AzExpressRoutePort -ExpressRoutePort $erDirect
    
  2. (Nem kötelező) Ha a portok rendszergazdai leállási állapotban vannak, a következő parancsokat futtatva hozhatja létre a portokat.

    $erDirect = Get-AzExpressRoutePort -ResourceGroupName "your_resource_group" -Name "your_direct_port_name"
    $erDirect.Links[0].AdminState = "Enabled"
    $erDirect.Links[1].AdminState = "Enabled"
    Set-AzExpressRoutePort -ExpressRoutePort $erDirect
    

    A MACsec mostantól engedélyezve van a Microsoft oldalán található ExpressRoute Direct-portokon. Ha nem a peremeszközökön konfigurálta, akkor ugyanezekkel a MACsec-titkos kódokkal és titkosítással konfigurálhatja őket.

  3. (Nem kötelező) A Felügyeleti le állapotú portok aktiválásához futtassa a következő parancsokat:

    $erDirect = Get-AzExpressRoutePort -ResourceGroupName "your_resource_group" -Name "your_direct_port_name"
    $erDirect.Links[0].MacSecConfig.SciState = "Enabled"
    $erDirect.Links[1].MacSecConfig.SciState = "Enabled"
    Set-AzExpressRoutePort -ExpressRoutePort $erDirect
    

    Az SCI mostantól engedélyezve van az ExpressRoute Direct-portokon.

A MACsec letiltása

Ha az ExpressRoute Direct-példányon szeretné inaktiválni a MACsec-et, futtassa a következő parancsokat:

$erDirect = Get-AzExpressRoutePort -ResourceGroupName "your_resource_group" -Name "your_direct_port_name"
$erDirect.Links[0]. MacSecConfig.CknSecretIdentifier = $null
$erDirect.Links[0]. MacSecConfig.CakSecretIdentifier = $null
$erDirect.Links[1]. MacSecConfig.CknSecretIdentifier = $null
$erDirect.Links[1]. MacSecConfig.CakSecretIdentifier = $null
$erDirect.identity = $null
Set-AzExpressRoutePort -ExpressRoutePort $erDirect

A MACsec mostantól le van tiltva a Microsoft oldalán található ExpressRoute Direct-portokon.

Kapcsolat tesztelése

Miután beállította a MACsec-et (beleértve a MACsec-kulcs frissítését) az ExpressRoute Direct-portokon, ellenőrizze a kapcsolatcsoportok BGP-munkameneteinek állapotát. Ha még nem hozott létre kapcsolatcsoportot a portokon, először hozza létre az Azure Private Peering vagy a Microsoft Peering kapcsolatcsoportot. Helytelen MACsec-konfiguráció, például a hálózati eszközök és a Microsoft hálózati eszközei közötti MACsec-kulcseltérés megakadályozza, hogy a 2. rétegben vagy a BGP-létesítményben megfigyelje az ARP felbontását a 3. rétegben. Ha minden megfelelően van konfigurálva, a BGP-útvonalak mindkét irányban megfelelően lesznek meghirdetve, és az alkalmazás adatfolyama ennek megfelelően az ExpressRoute-on keresztül.

Következő lépések