Site-to-Site IPSec VPN zwischen VPNaaS (SIM-Cloud) und MikroTik-Router (Remote Office)

Beschreibung

Betrachten Sie die Konfiguration der IPSec Site-to-Site VPN-Verbindung zwischen dem VPNaaS auf der Seite der Cloud-Infrastruktur und dem MikroTik -basierten Router auf der Seite des Remote Office.
Beide Router haben echte IP-Adressen auf den WAN-Schnittstellen, d.h. sie verwenden kein NAT.
Dieses Kapitel enthält Konfigurationsbeispiele unter Verwendung einer Verwaltungsschnittstelle (GUI) und die entsprechenden Methoden unter Verwendung einer Befehlszeilen-Schnittstelle (CLI)

Anfangsbedingungen

  • Beide Knoten, zwischen denen der VPN-Tunnel aufgebaut werden soll, haben echte IP-Adressen.
  • Standort A ist das von SIM-Cloud bereitgestellte cloudbasierte VPNaaS.
  • Standort B ist die Infrastruktur des Kunden, basierend auf MikroTik.
  • Jeder Standort hat sein eigenes privates Subnetz:
    • Site „A“ - 10.5.4.0/24
    • Site „B“ - 192.168.255.0/24
  • VPNaaS version: 12.0.5
  • MikroTik version: 6.45.3

Warnung

Abhängig von der Betriebssystemversion des Routers oder der Software kann die weitere Konfiguration variieren.

Hinweis

Um eine VPN-Verbindung aufbauen zu können, müssen folgende Voraussetzungen erfüllt sein:

  • Netzwerkverfügbarkeit zwischen den Routern:

    • Protocol: UDP, port 500 (für IKE, um encryption keys zu verwalten).
    • Protocol: UDP, port 4500 (für IPSEC NAT-Traversal mode).
    • Protocol: ESP, value 50 (für IPSEC).
    • Protocol: AH, value 51 (für IPSEC).
  • Die Firewall-Regeln dürfen den Netzwerkverkehr zwischen den Routern und den privaten Teilnetzen nicht blockieren.

  • Private Subnetze, die über IPSec verbunden werden, müssen unterschiedlich sein und dürfen sich nicht gegenseitig einschließen.

„Summary table“
VPN Router VPN Peer IP Private Network Private Network GW IP Private Network Host IP
Site „A“ (VPNaaS) 156.67.54.218 10.5.4.0/24 10.5.4.1/32 10.5.4.7
Site „B“ (MikroTik) 156.67.53.178 192.168.255.0/24 192.168.255.23/32 192.168.255.29

In diesem Beispiel wird die Erstkonfiguration der sicheren IPsec-Site-to-Site-VPN-Verbindung durchgeführt. Dazu verbinden wir die privaten Netze 10.5.4.0/24 und 192.168.255.0/24, die sich hinter den Routern befinden.

Site A Konfiguration (VPNaaS)

Die Konfiguration des VPNaaS erfolgt gemäß der in der Dokumentation angegebenen Anleitung :

A1. Konfigurieren Sie IKE Policy. Für diesen Schritt werden die folgenden Parameter verwendet:

„IKE Policy“
Name ikepolicy
Authorization algorithm sha1
Encryption algorithm aes-128
IKE version v1
Lifetime value for IKE keys 86400
Perfect Forward Secrecy group5
IKE Phase1 negotiation mode main

A2. Konfigurieren Sie die IPSec-Richtlinie. Für diesen Schritt werden die folgenden Parameter verwendet:

„IPsec Policy“
Name ipsecpolicy
Authorization algorithm sha1
Encapsulation mode tunnel
Encryption algorithm aes-128
Lifetime value for IKE keys 3600
Perfect Forward Secrecy group5
Transform Protocol esp

A3. Konfigurieren Sie den VPN-Dienst. Für diesen Schritt werden die folgenden Parameter verwendet:

„VPN service“
Name VPNservice
Router Select from list of cloud project routers

A4. Konfigurieren Sie Endpunktgruppen. Für diesen Schritt werden die folgenden Parameter verwendet:

„Endpoint Groups“
Endpoint group name Type Value
local_epg SUBNET 10.5.4.0/24
remote_epg CIDR 192.168.255.0/24

A5. Konfigurieren Sie die IPsec-Standortverbindung. Für diesen Schritt werden die folgenden Parameter verwendet:

„IPsec site connection“
Name ipsecsiteconn
VPN service associated with this connection VPNservice
Endpoint group for local subnet(s) local_epg
IKE policy associated with this connection ikepolicy
IPsec policy associated with this connection ipsecpolicy
Peer gateway public IPv4/IPv6 Address or FQDN 156.67.53.178
Peer router identity for authentication (Peer ID) 156.67.53.178
Endpoint group for remote peer CIDR(s) remote_epg
Pre-Shared Key (PSK) string Baejii9ahwoo
MTU 1500

A6. . Nachdem alle diese Änderungen vorgenommen wurden, kann man sehen, dass die IPsec-Standortverbindung erfolgreich erstellt wurde und den Status ‘Down’ hat. Wenn der Tunnel am anderen Ende konfiguriert und erfolgreich aufgebaut ist, ändert sich dieser Status in ‘Active’.

Site B Konfiguration (MikroTik)

Die Anleitung zur Konfiguration des VPN auf der MikroTik-Software ist dem Originalkapitel des Softwareherstellers entnommen: „Site to Site IPsec tunnel“.
Die Konfigurationsprozedur für jeden Punkt wird sowohl für ein grafisches Webinterface als auch für ein Command Line Interface (CLI) beschrieben.

B1. Erstellen Sie ein Profil für ‘Phase 1‘.

Um das Profil mit einem Webinterface zu erstellen, gehen Sie zum Menü ‚IP:IPsec‘ und klicken Sie auf der Registerkarte ‚Profile‘ auf ‘Add New‘.
Die folgenden Parameter sind zu verwenden:
new profile
Name VPNaaS  
Hash Algorithms sha1 Should match the value set in the VPNaaS
Encryption Algorithm aes-128 Should match the value set in the VPNaaS
DH Group modp1536 Should match the value set in the VPNaaS
Lifetime 1d Should match the value set in the VPNaaS
Speichern Sie die Änderungen, indem Sie auf die Schaltfläche OK klicken.

Um das Profil über die CLI zu erstellen, führen Sie den Befehl aus:
/ip ipsec profile
add enc-algorithm=aes-128 hash-algorithm=sha1 dh-group=modp1536 lifetime=1d name=VPNaaS

B2. Erstellen Sie den Datensatz „proposal“ für ‘Phase 2‘.

Um das Profil mit einem Webinterface zu erstellen, gehen Sie zum Menü „IP:IPsec“ und klicken Sie auf der Registerkarte ‘Proposals‘ auf ‘Add New‘.
Die folgenden Parameter sind zu verwenden:
new proposal
Name VPNaaS  
Auth. Algorithms sha1 Should match the value set in the VPNaaS
Encr. Algorithms aes-128 cbc Should match the value set in the VPNaaS
Lifetime 01:00:00 Should match the value set in the VPNaaS
PFS Group modp1536 Should match the value set in the VPNaaS
Änderungen durch Klicken auf die Schaltfläche OK speichern

Um das Profil über die CLI zu erstellen, führen Sie den Befehl aus:
/ip ipsec proposal
add enc-algorithms=aes-128-cbc auth-algorithms=sha1 pfs-group=modp1536 lifetime=1h name=VPNaaS

B3 Beschreiben Sie die Parameter des Remote Peer

Um das Profil mit einem Webinterface zu erstellen, gehen Sie in das Menü „IP:IPsec“ und klicken Sie auf der Registerkarte „Peers“ auf „Add New“.
Die folgenden Parameter sind zu verwenden:
new peer
Name VPNaaS  
Address 156.67.54.218/32 VPNaaS IP service
Profile VPNaaS Profile previously created
Exchange Mode main Should match the value set in the VPNaaS
Änderungen durch Klicken auf die Schaltfläche OK speichern

Um das Profil über die CLI zu erstellen, führen Sie den Befehl aus:
/ip ipsec peer
add address=156.67.54.218/32 exchange-mode=main profile=VPNaaS name=VPNaaS

B4 Spezifizieren Sie den Mechanismus zur Identifikation .

Um das Profil mit einem Webinterface zu erstellen, gehen Sie zum Menü „IP:IPsec“ und klicken Sie auf der Registerkarte “ Identities“ auf „Add New“.
Die folgenden Parameter sind zu verwenden:
new identitie
Peer VPNaaS Peer created previously
Auth. Method pre shared key  
Secret Baejii9ahwoo Should match the value set in the VPNaaS
Änderungen durch Klicken auf die Schaltfläche OK speichern

Um das Profil über die CLI zu erstellen, führen Sie den Befehl aus:
/ip ipsec identity
add auth-method=pre-shared-key peer=VPNaaS secret=Baejii9ahwoo

B5 Erstellen Sie eine IPsec Rule , die den Traffic vom lokalen privaten Netz zum entfernten lokalen Netz über den Tunnel erlaubt.

Um das Profil mit einem Webinterface zu erstellen, gehen Sie zum Menü „IP:IPsec“ und klicken Sie auf der Registerkarte „Policies“ auf „Add New“.
Die folgenden Parameter sind zu verwenden:
new policie
Peer VPNaaS Peer created previously
Tunnel checked Enable tunnelling
Src. Address 192.168.255.0/24 Local network on MikroTik side
Dst. Address 10.5.4.0/24 Local network on VPNaaS side
Action encrypt  
IPsec Protocols esp Should match the value set in the VPNaaS
Proposal VPNaaS Proposal created previously
Änderungen durch Klicken auf die Schaltfläche OK speichern

Um das Profil über die CLI zu erstellen, führen Sie den Befehl aus:
/ip ipsec policy
add src-address=192.168.255.0/24 src-port=any dst-address=10.5.4.0/24 dst-port=any tunnel=yes action=encrypt proposal=VPNaaS ipsec-protocols=esp peer=VPNaaS

B6 Wenn in diesem Stadium Datenverkehr über den IPsec-Tunnel gesendet wird, funktioniert er nicht; Pakete von der MikroTik-Seite gehen verloren.

Dies liegt daran, dass der Router über die NAT-Masquerading-Regel verfügt, die die Quelladresse ändert, bevor das Paket verschlüsselt wird. Der Router kann das Paket nicht verschlüsseln, da die Quelladresse nicht mit der in der Richtlinienkonfiguration angegebenen Adresse übereinstimmt. Weitere Informationen hierzu finden Sie unter Beispielprotokoll für IPsec-Pakete.

Um diese Situation zu korrigieren, fügen Sie die NAT-Bypass-Regel zum MikroTik-Router hinzu.
Um das Profil mit einem Webinterface zu erstellen, gehen Sie zum Menü ‚IP:Firewall‘ und klicken Sie auf der Registerkarte NAT auf Add New.
Die folgenden Parameter sind zu verwenden:
new nat rule
Chain srcnat  
Src. Address 192.168.255.0/24 Local network on MikroTik side
Dst. Address 10.5.4.0/24 Local network on VPNaaS side
action accept  
Änderungen speichern, indem Sie auf die Schaltfläche OK klicken. Wenn Sie die Regel erstellt haben, ziehen Sie sie mit der Maus an den Anfang der Liste.

Um das Profil über die CLI zu erstellen, führen Sie den Befehl aus:
/ip firewall nat
add chain=srcnat action=accept place-before=0 src-address=192.168.255.0/24 dst-address=10.5.4.0/24

Tunnelfunktionsprüfung

Wenn diese Änderungen abgeschlossen sind, sollte der VPN-Tunnel eingerichtet sein und der Datenverkehr zwischen den lokalen Netzen sollte durch ihn fließen können.
Dies kann mit einem Ping-Befehl zwischen den Hosts in den gegenüberliegenden lokalen Netzen überprüft werden.

Hinweis

Wenn der Tunnel nicht aufgebaut ist, starten Sie den VPN-Dienst auf beiden Seiten neu.

  • Tunnelstatus in MikroTik anzeigen:

    Um den Status über die grafische Web-Oberfläche zu sehen, gehen Sie zum Menü ‚IP:IPsec‘.

    • Auf der Registerkarte ‚Installed SAs‘ sollten zwei Zeilen mit den Eigenschaften der Verbindungen zwischen den Peers angezeigt werden
    • Auf der Registerkarte ‚Policies‘ sollte der Punkt ‚PH2 State‘ die Variable ‚established‘ enthalten

    Um den Status über die CLI zu sehen, führen Sie den Befehl
    /ip ipsec
    
    installed-sa print
      (you should see two lines of properties of connections between the peers)
    
    active-peers print
      (the  STATE of the connection should have the value established)
    
  • Der Status der IPsec-Standortverbindung im VPNaaS hat sich auf Active geändert.