Verwenden eines VPN mit Azure Managed Instance for Apache Cassandra

Azure Managed Instance for Apache Cassandra-Knoten erfordern Zugriff auf viele andere Azure-Dienste, wenn sie in Ihr virtuelles Netzwerk eingefügt werden. Normalerweise wird dieser Zugriff aktiviert, indem Sie sicherstellen, dass Ihr virtuelles Netzwerk über ausgehenden Zugriff auf das Internet verfügt. Wenn Ihre Sicherheitsrichtlinie den ausgehenden Zugriff verbietet, können Sie Firewallregeln oder benutzerdefinierte Routen für den entsprechenden Zugriff konfigurieren. Weitere Informationen finden Sie unter Erforderliche ausgehende Netzwerkregeln.

Wenn Sie jedoch interne Sicherheitsbedenken hinsichtlich Datenexfiltration haben, könnte Ihre Sicherheitsrichtlinie auch den Direktzugriff auf diese Dienste aus Ihrem virtuellen Netzwerk verbieten. Mithilfe eines virtuellen privaten Netzwerks (VPN) mit Azure Managed Instance for Apache Cassandra können Sie sicherstellen, dass Datenknoten im virtuellen Netzwerk nur mit einem einzelnen VPN-Endpunkt kommunizieren, ohne Direktzugriff auf andere Dienste.

Funktionsweise

Ein virtueller Computer, der als Operator bezeichnet wird, ist Teil jeder Azure Managed Instance for Apache Cassandra. Es hilft, den Cluster zu verwalten. Der Operator befindet sich standardmäßig im selben virtuellen Netzwerk wie der Cluster. Das bedeutet, dass der Operator und die Daten-VMs dieselben Regeln für die Netzwerksicherheitsgruppe (Network Security Group, NSG) aufweisen. Das ist aus Sicherheitsgründen nicht ideal und ermöglicht es Kunden auch, den Operator daran zu hindern, die erforderlichen Azure-Dienste zu erreichen, wenn sie NSG-Regeln für ihr Subnetz einrichten.

Wenn Sie VPN als Verbindungsmethode für eine Azure Managed Instance for Apache Cassandra verwenden, kann sich der Operator in einem anderen virtuellen Netzwerk als im Cluster befinden, indem er den privaten Linkdienst verwendet. Dies bedeutet, dass sich der Operator in einem virtuellen Netzwerk befinden kann, das Zugriff auf die erforderlichen Azure-Dienste hat, und der Cluster kann sich in einem virtuellen Netzwerk befinden, das Sie steuern.

Screenshot eines VPN-Designs.

Mit dem VPN kann der Operator jetzt eine Verbindung mit einer privaten IP-Adresse innerhalb des Adressbereichs Ihres virtuellen Netzwerks herstellen, das als privater Endpunkt bezeichnet wird. Die private Verbindung leitet die Daten zwischen dem Operator und dem privaten Endpunkt über das Azure-Backbone-Netzwerk weiter und vermeidet so die Gefährdung durch das öffentliche Internet.

Sicherheitsvorteile

Wir möchten verhindern, dass Angreifer auf das virtuelle Netzwerk zugreifen, in dem der Operator bereitgestellt wird, und versuchen, Daten zu stehlen. Daher haben wir Sicherheitsmaßnahmen eingerichtet, um sicherzustellen, dass der Operator nur die erforderlichen Azure-Dienste erreichen kann.

  • Richtlinien für Dienstendpunkte: Diese Richtlinien bieten eine präzise Kontrolle über den ausgehenden Datenverkehr innerhalb des virtuellen Netzwerks, insbesondere an Azure-Dienste. Durch die Verwendung von Dienstendpunkten legen sie Einschränkungen fest und erlauben den Datenzugriff ausschließlich auf bestimmte Azure-Dienste wie Azure Monitoring, Azure Storage und Azure KeyVault. Insbesondere stellen diese Richtlinien sicher, dass der Datenausgang ausschließlich auf vorbestimmte Azure Storage-Konten beschränkt ist, wodurch die Sicherheit und die Datenverwaltung innerhalb der Netzwerkinfrastruktur verbessert werden.

  • Netzwerksicherheitsgruppen: Sie werden verwendet, um Netzwerkdatenverkehr von und zu Ressourcen in einem Azure Virtual Network zu filtern. Wir blockieren den gesamten Datenverkehr des Operators zum Internet und erlauben nur Datenverkehr zu bestimmten Azure-Diensten über eine Reihe von NSG-Regeln.

So verwenden Sie ein VPN mit Azure Managed Instance for Apache Cassandra

  1. Erstellen Sie einen Azure Managed Instance for Apache Cassandra-Cluster, indem Sie "VPN" als den Wert für die --azure-connection-method-Option verwenden:

    az managed-cassandra cluster create \
    --cluster-name "vpn-test-cluster" \
    --resource-group "vpn-test-rg" \
    --location "eastus2" \
    --azure-connection-method "VPN" \
    --initial-cassandra-admin-password "password"
    
  2. Verwenden Sie den folgenden Befehl, um die Clustereigenschaften anzuzeigen:

    az managed-cassandra cluster show \
    --resource-group "vpn-test-rg" \
    --cluster-name "vpn-test-cluster"
    

    Erstellen Sie aus der Ausgabe eine Kopie des privateLinkResourceId-Wertes.

  3. Erstellen Sie im Azure-Portal mithilfe der folgenden Details einen privaten Endpunkt:

    1. Wählen Sie auf der Registerkarte Ressource die Option Erstellen einer Verbindung mit einer Azure-Ressource mittels Ressourcen-ID oder Alias als Verbindungsmethode und Microsoft.Network/privateLinkServices als Ressourcentyp aus. Geben Sie den privateLinkResourceId-Wert aus dem vorherigen Schritt ein.
    2. Wählen Sie auf der Registerkarte Virtual Network das Subnetz Ihres virtuellen Netzwerks aus, und stellen Sie sicher, dass Sie die Option für IP-Adresse statisch zuordnen auswählen.
    3. Überprüfen Sie alles und erstellen Sie den Endpunkt.

    Hinweis

    Zurzeit erfordert die Verbindung zwischen unserem Verwaltungsdienst und Ihrem privaten Endpunkt die Genehmigung durch das Azure Managed Instance for Apache Cassandra-Team.

  4. Rufen Sie die IP-Adresse der Netzwerkschnittstelle Ihres privaten Endpunkts ab.

  5. Erstellen Sie ein neues Rechenzentrum, indem Sie die IP-Adresse aus dem vorherigen Schritt als --private-endpoint-ip-address-Parameter verwenden.

Nächste Schritte