Sichere Verbindung zur Cloud-Datenbank (OCI) vom Arbeitsplatz

In diesem Szenario wird eine sichere Verbindung von einem Arbeitsplatz zu einer Oracle Cloud-Datenbank (OCI) eingerichtet. Das Hauptziel besteht darin, sicherzustellen, dass sämtliche Transaktionen zwischen dem Arbeitsplatz und der Cloud-Datenbank verschlüsselt erfolgen. Dafür werden zwei separate Netzwerke verwendet: Das 192.168.40.0/24-Netzwerk für den Arbeitsplatz und das 10.10.10.0/16-Netzwerk für die Oracle Cloud-Infrastruktur.

Die Datenbank in der Oracle Cloud soll ausschließlich über das 10.10.10.0/16-Netzwerk erreichbar sein und nicht über das öffentliche Netzwerk. Die Verbindung zur Cloud-Datenbank erfolgt über den Listener-Port (z. B. Port 1522), und es besteht kein Zugriff auf das Betriebssystem, da die Wartung von Oracle verwaltet wird.

In diesem Beispiel sind die IP-Adressen wie folgt definiert:

  • Arbeitsplatz-PC = 192.168.40.123
  • Cloud-Datenbank = 10.10.0.40

Um sicherzustellen, dass beide Systeme sicher über das Internet kommunizieren können, wird eine Site-to-Site-VPN-Verbindung eingerichtet. Diese Verbindung verknüpft das Netzwerk A (192.168.40.0/24) mit dem Netzwerk B (10.10.0.0/16) sicher und verschlüsselt jeglichen Netzwerkverkehr zwischen diesen Segmenten mithilfe von IPsec.
Der Aufbau sieht wie folgt aus:

Ipsec zu OCI Blog

Die Konfiguration erfordert die Zusammenarbeit zwischen der Firewall am Firmenstandort und dem Dynamic Routing Gateway (DRG) in OCI. Nach erfolgreicher Authentifizierung tauschen diese Einheiten mehrere Schlüsselparameter aus, um eine sichere Verbindung herzustellen. Auf der Firewall-Seite ist lediglich eine öffentliche IP-Adresse erforderlich, während auf der OCI-Seite zwei öffentliche IP-Adressen für die Einrichtung des IPsec-Tunnels verwendet werden müssen.

Oracle verlangt aus gutem Grund, gleich zwei IPsec-Tunnel zu erstellen, um sowohl Verschlüsselung als auch Redundanz der Verbindung sicherzustellen.

In diesem Szenario wird ein IPsec-Tunnel zur Oracle Autonomous Database in OCI eingerichtet. Dieses Beispiel bezieht sich auf ein Data Warehouse mit der Option „private endpoint access only“, da die
Datenbank nur über das Virtual Cloud Network (VCN) erreichbar ist und keine öffentliche IP-Adresse hat. In diesem Beispiel hat die Datenbank die feste interne IP-Adresse 10.10.0.40.

IPsec Konfiguration auf OCI

Es wird zunächst die Konfiguration des IPsec-Tunnels auf der OCI-Seite in Betracht gezogen, da hier die Sicherheitsparameter für den IKE (Internet Key Exchange) festgelegt werden.

Dazu klickt Sie zunächst auf das Menüsymbol oben links (die drei horizontalen Striche) und navigieren von dort aus zu „Networking“ -> „Site-to-Site VPN“ unter „Customer Connectivity“.

Networking

Die Konfiguration mit dem VPN-Wizard wird empfohlen, da er automatisch die erforderlichen Abhängigkeiten für einen IPsec-Tunnel konfiguriert. Im nächsten Schritt wählen Sie das richtige Compartment aus, in dem sich die virtuelle Infrastruktur mit Netzwerk und Datenbank auf OCI befindet. Anschließend wählen Sie das Netzwerk aus, in dem sich die Datenbank befindet. Es ist wichtig, hier ein Dynamic Routing Gateway (DRG) zu erstellen, da es für den IPsec-Tunnel erforderlich ist. Im folgenden Schritt muss unter „Subnets and Security“ das richtige Subnetz ausgewählt werden.

Unter dem Abschnitt „Site-to-Site VPN“ wählen Sie die Option „Policy Based Routing“ aus, da der Netzwerkverkehr nur zwischen dem Subnetz der OCI (10.10.0.0/16) und dem Subnetz der Firma (192.168.40.0/24) stattfinden soll. Daher wird unter „Routes to your on-premise network“ das Subnetz der Firma, in dem sich der Arbeitsplatz befindet eingegeben (192.168.40.0/24).

Als nächstes konfigurieren Sie die Einstellungen für Tunnel1 und Tunnel2. Hier wählen Sie die IKEv1-Version aus und tragen unter „Associations“ das Subnetz der Firma in „On-premise network CIDR blocks“, sowie das Subnetz der Cloud in „Oracle Cloud CIDR Blocks“ ein. Diese Einträge gelten für beide Tunnel.

Im nächsten Schritt wird der Endpunkt der Firmenfirewall unter „Customer-Premises Equipment“ erstellt. Hier tragen wird die öffentliche IP-Adresse eingetragen, von der die Firewall extern für den IPsec-Tunnel erreichbar sein wird (Publick IP A). Nach diesen Schritten ist die Konfiguration abgeschlossen.

Wenn Sie nun auf den gerade eingerichteten IPsec-Tunnel klicken, stellen Sie fest, dass OCI automatisch zwei redundante Tunnel erstellt hat, die später mit der Firewall verbunden werden. Bevor Sie dies jedoch unternehmen, müssen die Sicherheitsparameter für die einzelnen Tunnel ausgewählt werden, da sie für die IPsec-Verbindung entscheidend sind. Dazu klicken Sie zuerst auf das Tunnel1-Netzwerk und notieren den von OCI generierten Pre-Shared Key (PSK), welcher unter „Shared Secret“ -> „Show“
angezeigt wird . Dieser PSK wird später zur Authentifizierung gegenüber der Firewall benötigt. Beachten Sie, dass für Tunnel1 und Tunnel2 unterschiedliche PSKs generiert werden.

Nachdem Sie den PSK notiert haben, klicken Sie bei Tunnel1 auf „Edit“ und klappen im nächsten Fenster die erweiterten Optionen unter „Show advanced options“ auf. Hier wählen Sie bei „Phase one (ISAKMP) configuration“ die Option „Set custom configurations“ aus, um die einzelnen Sicherheitsparameter anzuzeigen, die später mit der Firewall ausgehandelt werden. Es ist wichtig zu beachten, dass OCI nicht so viele Sicherheitsparameter anbietet wie eine herkömmliche Firewall. Da in diesem Szenario auf Firmenseite die Software OPNsense als Firewall-Endpunkt verwendet wird, setzt man folgende Parameter:

ISAKMP
IPSec

Speichern Sie die Einstellungen. Dieselben Parameter setzen Sie ebenfalls bei der Tunnel2 Konfiguration, da es sich hierbei um eine Redundanz handelt und die Sicherheitsparameter identisch sein sollten (bis auf den PSK). Notieren Sie sich ebenfalls die Oracle VPN-IP-Adressen für beide Tunnel, da sie später für die Einrichtung des IPsec-Tunnels auf der Firmenfirewall benötigt werden (Public IP B + Public IP C).

IPsec Konfiguration auf Firewall

Bei der Firewall wird die kostenlose Open-Source Software von Opnsense, die hervorragend für diesen Zweck geeignet ist, benutzt.

OPNsense

OPNsense

In der linken Menüleiste auf VPN->Tunnelsettings [legacy]->“+“ (auf das Pluszeichen)

Folgende Konfigurationen werden festgelegt:

General Information:

  • Connection Method: Start immediate
  • Key Exchange Version: V1 (für unseren Beispiel)
  • Internet Protocol: IPv4
  • Interface WAN
  • Remote Gateway: öffentliche IP der OCI (public IP B)
  • Description: OCI IPsec Tunnel 1

Phase 1 proposal (Authentication):

  • Authentication Method: Mutual PSK
  • Negotiation Mode: Main
  • My identifier: My IP address
  • Peer identifier: Peer IP address
  • Pre-Shared Key: Vom OCI generierter PSK

Phase1 proposal (Algorithms):

  • Encryption algorithm: AES 256
  • Hash algorithm: SHA256
  • DH key group: 14 (2048 bits)

Advanced Options:

  • Install policy->check
  • NAT Traversal-> disable
  • Lifetime: 28800

Speichern Sie dann ganz unten und klicken Sie im nächsten Fenster oben auf „Apply changes“

Als nächstes auf das „+“ neben dem Eintrag in Phase 1 klicken, um Phase 2 zu konfigurieren. In Phase 2 werden folgende Einstellungen vorgenommen:

General Information:

  • Mode: Tunnel IPv4
  • Description: Local Network

Local Network:

  • Type: Network
  • Address: 192.168.40.0/24

Remote Network:

  • Type: Network
  • 10.10.0.0/16

Phase 2 proposal (SA/Key Exchange)

  • Protocol: ESP
  • Encryption algorithms: AES 256
  • Hash algorithms: SHA256
  • PFS key group: 5 (1536 bits)
  • Lifetime: 3600

Speichern Sie wieder ganz unten und klicken Sie im nächsten Fenster oben auf „Apply changes“

Der erste Tunnel sollte nun eingerichtet sein. Um den zweiten redundanten Tunnel zu erstellen, klonen Sie die bereits erstellte Phase-1-Konfiguration und ändern dabei folgende Parameter:

  • Remote Gateway: 2. Öffentliche IP-Adresse von OCI (Public IP C)
  • Description: OCI IPsec Tunnel 2
  • Pre-Shared Key: vom OCI generierter PSK für die zweite öffentliche IP-Adresse

Speichern Sie auch diese Einstellungen und klicken Sie im nächsten Fenster oben auf „Apply changes“.

Anschließend klicken Sie auf das „+“ neben dem zweiten Tunnel, um die Phase 2 für diesen Tunnel zu konfigurieren. Die Einstellungen sollten identisch mit denen der Phase 2 des ersten Tunnels sein.

Nachdem die Konfiguration fertig eingerichtet ist, muss nur noch der IPsec Dienst unter VPN->IPsec->Connections mit enabled aktiviert und gestartet werden.

Zur Überprüfung sollte auch sichergestellt werden, dass unter VPN->IPsec-> Tunnel Settings das Häkchen in „Enable IPsec“ gesetzt ist. Es sollte oben rechts das grüne Play-Button erscheinen, der anzeigt, dass der Dienst aktiviert und gestartet ist. Unter VPN->IPsec-> Status Overview kann man sehen, ob der IPsec Tunnel erfolgreich aufgebaut wurde. Sollte dies nicht der Fall sein, müsste die Firewall evtl. neu gestartet werden.

Kommentar verfassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Nach oben scrollen