Technischer Leitfaden: Absicherung von POS-Terminals und Zahlungsdaten mit IPsec & WireGuard auf Teltonika
Kurzanleitung: Die Absicherung von POS-Terminals und Zahlungsdaten auf Teltonika-Routern wie dem RUTX50 erfolgt durch die Einrichtung verschlüsselter VPN-Tunnel zum zentralen Rechenzentrum. Konfigurieren Sie einen IPsec Site-to-Site-Tunnel für eine robuste, standardbasierte Verbindung oder einen WireGuard-Tunnel für eine moderne, hochperformante und einfachere Konfiguration. Beide Methoden isolieren den sensiblen Zahlungsverkehr vom öffentlichen Internet und sind ein fundamentaler Baustein zur Erfüllung von PCI-DSS-Anforderungen.
Einführung: Die Notwendigkeit sicherer Zahlungsgateways
In der heutigen vernetzten Einzelhandels- und Unternehmenslandschaft ist die sichere Übertragung von Zahlungsdaten von Point-of-Sale (POS)-Terminals zu zentralen Verarbeitungsservern von entscheidender Bedeutung. Jede Transaktion enthält sensible Karteninhaberdaten, deren Schutz durch Standards wie den Payment Card Industry Data Security Standard (PCI DSS) zwingend vorgeschrieben ist. Teltonika-Router, insbesondere die leistungsstarke RUTX-Serie, bieten robuste VPN-Funktionen, um diese Daten während der Übertragung durch das Internet zu schützen.
Dieser Leitfaden bietet eine detaillierte technische Anleitung zur Implementierung von zwei primären VPN-Technologien auf einem Teltonika RUTX50 (basierend auf Firmware RUTX_R_00.07.24.2 und Legacy-Dokumentation): IPsec, der Industriestandard für Site-to-Site-Verbindungen, und WireGuard®, ein modernes, schlankes und extrem schnelles VPN-Protokoll.
Szenario: Filiale an Zentrale anbinden
Das typische Anbindungsszenario besteht aus einer oder mehreren Filialen, in denen sich POS-Terminals in einem privaten LAN (z.B. 192.168.10.0/24) befinden. Der Teltonika-Router in der Filiale stellt die Internetverbindung her und muss eine sichere Verbindung zum zentralen Rechenzentrum (HQ) aufbauen, das sich in einem anderen privaten Netz (z.B. 10.0.0.0/24) befindet. Das Ziel ist es, den gesamten Zahlungsverkehr von den POS-Terminals ausschließlich durch einen verschlüsselten Tunnel zum HQ zu leiten.
Methode 1: Konfiguration eines Site-to-Site IPsec-Tunnels
IPsec ist ein bewährtes Protokoll-Framework, das sich ideal für permanente, statische Verbindungen zwischen zwei Netzwerken eignet, wie z.B. zwischen einer Filiale und der Unternehmenszentrale.
- IPsec-Instanz erstellen
Navigieren Sie im WebUI des Routers zu
Services → VPN → IPsec. Geben Sie einen eindeutigen Namen für die Instanz ein (z.B.Filiale_zu_HQ) und klicken Sie auf "Add". - Instanz bearbeiten
Klicken Sie auf den "Edit"-Button neben der neu erstellten Instanz, um die Konfigurationsseite zu öffnen.
- Verbindungsparameter konfigurieren
Konfigurieren Sie beide Router (Filiale und HQ) mit den entsprechenden Gegenstellen-Informationen. Die Einstellungen müssen spiegelbildlich zueinander passen.
Parameter Filial-Router (RUT1) HQ-Router (RUT2) Beschreibung (laut Teltonika-Dokumentation) EnableAktiviert Aktiviert Aktiviert die IPsec-Instanz. Local IP address/Subnet mask192.168.10.0/24 10.0.0.0/24 Das lokale LAN-Subnetz, das über den Tunnel erreichbar sein soll. Pre shared keyEin sehr starkes, identisches Passwort Ein geheimer Schlüssel zur Authentifizierung der Peers. Muss auf beiden Seiten exakt übereinstimmen. Remote VPN endpointÖffentliche IP des HQ-Routers Öffentliche IP des Filial-Routers Die öffentliche IP-Adresse des entfernten Routers. Mindestens ein Endpunkt benötigt eine öffentliche IP. Remote IP address/Subnet mask10.0.0.0/24 192.168.10.0/24 Das entfernte LAN-Subnetz, das über den Tunnel erreicht werden soll. Enable keepaliveAktiviert Aktiviert Hält die Tunnelverbindung aktiv, indem periodisch Pakete gesendet werden. Host10.0.0.1 (LAN IP des HQ-Routers) 192.168.10.1 (LAN IP des Filial-Routers) Ziel-Host für die Keepalive-ICMP-Pakete. Ping period (sec)60 60 Intervall in Sekunden für die Keepalive-Pings. - Phase-Einstellungen prüfen
Die Einstellungen für Phase 1 und Phase 2 definieren die Verschlüsselungs- und Authentifizierungsalgorithmen. Für eine initiale Konfiguration können die Standardwerte beibehalten werden. Stellen Sie sicher, dass die Einstellungen auf beiden Routern exakt identisch sind, da es sonst zu keiner Einigung (Proposal Mismatch) kommt.
- Konfiguration speichern und anwenden
Klicken Sie auf "Save & Apply", um die Konfiguration zu aktivieren.
- Verbindung testen
Navigieren Sie zu
Services → CLI, loggen Sie sich mit dem Benutzerrootund Ihrem Admin-Passwort ein. Führen Sie einen Ping auf eine IP-Adresse im entfernten LAN aus:ping 10.0.0.1. Wenn Sie eine Antwort erhalten, ist der Tunnel erfolgreich aufgebaut.
Methode 2: Konfiguration eines WireGuard-Tunnels
WireGuard ist die bevorzugte Wahl für neue VPN-Installationen. Es bietet höhere Geschwindigkeit, eine kleinere Codebasis (was die Angriffsfläche reduziert) und eine deutlich einfachere Konfiguration auf Basis von Public-Key-Kryptographie.
- WireGuard-Instanz auf dem HQ-Router (Server) erstellen
- Navigieren Sie zu
Services → VPN → WireGuardund klicken Sie auf "Add". - Unter General Instance Settings:
- Setzen Sie ein Häkchen bei
Enable. - Vergeben Sie einen
Name, z.B.WG_HQ_Server. - Ein Schlüsselpaar (Private und Public Key) wird automatisch generiert. Kopieren Sie den Public Key, Sie benötigen ihn für den Client.
- Geben Sie einen
Listen portan, z.B.51820(Standard). Stellen Sie sicher, dass dieser Port in Ihrer Firewall für eingehenden UDP-Verkehr freigegeben ist. - Definieren Sie die
IP addressesfür das WireGuard-Interface, z.B.10.200.0.1/24.
- Setzen Sie ein Häkchen bei
- Klicken Sie unter Peers auf "Add", um die Filiale als Peer hinzuzufügen.
- Unter General Peer Settings:
- Setzen Sie ein Häkchen bei
Enable. - Fügen Sie den Public Key des Filial-Routers ein (diesen generieren Sie im nächsten Schritt auf dem Filial-Router).
- Unter
Allowed IPsgeben Sie die IP-Adressen an, von denen dieser Peer Pakete senden darf. Dies sind die Tunnel-IP des Peers und dessen lokales LAN:10.200.0.2/32, 192.168.10.0/24.
- Setzen Sie ein Häkchen bei
- Speichern Sie die Konfiguration mit "Save & Apply".
- Navigieren Sie zu
- WireGuard-Instanz auf dem Filial-Router (Client) erstellen
- Navigieren Sie ebenfalls zu
Services → VPN → WireGuardund erstellen Sie eine neue Instanz. - Unter General Instance Settings:
- Aktivieren Sie die Instanz (
Enable). - Vergeben Sie einen
Name, z.B.WG_Filiale_Client. - Kopieren Sie den hier generierten Public Key und fügen Sie ihn in die Peer-Konfiguration des HQ-Routers ein.
- Weisen Sie eine
IP addressesaus dem gleichen Subnetz wie beim Server zu, z.B.10.200.0.2/24.
- Aktivieren Sie die Instanz (
- Fügen Sie unter Peers einen neuen Peer für den HQ-Server hinzu.
- Unter General Peer Settings:
- Aktivieren Sie den Peer (
Enable). - Fügen Sie den Public Key des HQ-Servers ein.
- Unter
Allowed IPsdefinieren Sie, welcher Traffic in den Tunnel geleitet werden soll. Um den gesamten POS-Verkehr sicher zur Zentrale zu leiten, geben Sie hier das Subnetz der Zentrale an:10.0.0.0/24, 10.200.0.1/32. Für maximale Sicherheit kann hier auch0.0.0.0/0eingetragen werden, um den gesamten Internetverkehr der Filiale über die Zentrale zu routen. - Geben Sie unter
Endpoint hostdie öffentliche IP-Adresse des HQ-Routers ein. - Geben Sie unter
Endpoint portdenListen portdes Servers an (51820).
- Aktivieren Sie den Peer (
- Unter Advanced Peer Settings:
- Tragen Sie bei
Persistent keep aliveeinen Wert von25(Sekunden) ein. Dies ist entscheidend, damit die Verbindung auch hinter NAT-Routern stabil bleibt.
- Tragen Sie bei
- Speichern Sie die Konfiguration mit "Save & Apply".
- Navigieren Sie ebenfalls zu
Diagnose und Fehlerbehebung
Wenn die VPN-Verbindung nicht wie erwartet funktioniert, können die folgenden Punkte bei der Fehlersuche helfen.
| Problem | Mögliche Ursache | Lösungsvorschlag |
|---|---|---|
| IPsec-Tunnel kommt nicht zustande ("No SA found") | - Pre-Shared Key (PSK) stimmt nicht überein. - Phase 1 / Phase 2 Parameter sind unterschiedlich. - Remote VPN Endpoint ist nicht erreichbar (Firewall, falsche IP). |
- Überprüfen Sie den PSK auf beiden Seiten Zeichen für Zeichen. - Setzen Sie die Proposal-Einstellungen auf beiden Seiten auf identische, kompatible Werte (z.B. AES256/SHA256/DH Group 14). - Stellen Sie sicher, dass die öffentliche IP des Endpunkts korrekt und erreichbar ist (Ping, Port-Scan auf UDP 500/4500). |
| WireGuard-Tunnel verbindet nicht | - Public Keys wurden vertauscht oder falsch kopiert. - Endpoint Host/Port ist falsch oder wird durch eine Firewall blockiert. - Listen Port auf dem Server ist nicht in der Firewall freigegeben. |
- Überprüfen Sie die Public Keys sorgfältig. Der Public Key von Router A muss in der Peer-Konfiguration von Router B stehen und umgekehrt. - Verifizieren Sie die öffentliche IP und den Port des Servers. Prüfen Sie die Firewall-Logs auf dem Server-Router. |
| Tunnel steht, aber es fließt kein Datenverkehr | - Firewall-Regeln blockieren den Verkehr zwischen LAN und VPN-Zone. - Routing-Problem: Falsche Subnetze (IPsec) oder `Allowed IPs` (WireGuard) konfiguriert. - Endgeräte im LAN haben ihre Routing-Tabelle nicht aktualisiert. |
- Überprüfen Sie die Firewall-Zonen und -Regeln in RutOS. Der Verkehr von der `lan`-Zone zur `vpn`-Zone (und umgekehrt) muss erlaubt sein. - Korrigieren Sie die `Local/Remote IP address/Subnet mask` (IPsec) bzw. die `Allowed IPs` (WireGuard) auf beiden Seiten. - Starten Sie die POS-Terminals neu oder erneuern Sie deren DHCP-Lease. |
| Verbindung bricht sporadisch ab | - Die Verbindung wird aufgrund von Inaktivität vom NAT-Router geschlossen. - Instabile Internetverbindung. |
- Aktivieren Sie `Enable keepalive` (IPsec) oder setzen Sie einen Wert für `Persistent keep alive` (WireGuard), z.B. 25 Sekunden. |
Häufig gestellte Fragen (FAQ)
Welches VPN-Protokoll ist besser für POS-Systeme, IPsec oder WireGuard?
Für Neuinstallationen wird WireGuard empfohlen. Es ist performanter, verbraucht weniger Ressourcen und ist aufgrund seiner Einfachheit weniger fehleranfällig in der Konfiguration. IPsec ist ein etablierter, robuster Standard und eine gute Wahl, wenn Kompatibilität mit bestehender Infrastruktur gefordert ist oder bestimmte, von IPsec unterstützte kryptografische Suiten vorgeschrieben sind.
Muss ich eine öffentliche IP-Adresse haben?
Ja, mindestens ein Endpunkt der VPN-Verbindung (typischerweise der zentrale HQ-Router oder "Server") muss über eine feste, öffentliche IP-Adresse aus dem Internet erreichbar sein. Der Client (Filial-Router) kann sich auch hinter einem Carrier-Grade-NAT (CGNAT) befinden, solange er die ausgehende Verbindung zum Server aufbauen kann.
Wie stelle ich sicher, dass der gesamte POS-Traffic durch den VPN-Tunnel geleitet wird?
Bei WireGuard erreichen Sie dies, indem Sie in der Peer-Konfiguration des Filial-Routers (Client) die Allowed IPs auf 0.0.0.0/0 setzen. Dies leitet den gesamten ausgehenden Verkehr des Routers durch den Tunnel. Bei IPsec müssen Sie sicherstellen, dass die `Remote IP address/Subnet mask` alle Zielnetze in der Zentrale umfasst und die Firewall-Regeln so konfiguriert sind, dass kein "Leak" des Traffics am Tunnel vorbei ins offene Internet möglich ist (Policy-Based Routing).
Was bedeutet "Phase 1" und "Phase 2" bei IPsec?
Phase 1 (IKE - Internet Key Exchange): In dieser Phase authentifizieren sich die beiden VPN-Peers (Router) gegenseitig und bauen einen sicheren Kommunikationskanal (den IKE SA) auf. Hier werden Parameter wie Authentifizierungsmethode (PSK), Verschlüsselung und Diffie-Hellman-Gruppe ausgehandelt. Phase 2 (IPsec SA - Security Association): Nachdem Phase 1 erfolgreich war, wird über den sicheren Kanal der eigentliche Datentunnel ausgehandelt. Hier werden die Algorithmen für die Verschlüsselung und Integritätssicherung der Nutzdaten (z.B. der POS-Transaktionen) festgelegt.