Scheitern am IPsec VPN mit MikroTik
Hallo zusammen,
ich habe nun seit ein paar Wochen ein Mikrotik CRS als Core-Switch im Einsatz mit einer VLAN-Segmentierung, und bereue meine Wahl bis heute nicht.
Leider kriege ich es nicht gebacken, einen IPsec VPN-Zugang für einen Windows-Client auf dem Teil einzurichten.
Das Szenario sieht wie folgt aus:
Das Netz 192.168.178.0/24 soll als Testnetzwerk das WAN simulieren
Windows-PC(192.168.178.52) <--------> (192.168.178.252)Fritz!Box(10.120.10.250) <--------> (10.120.10.1)MikroTik
Bei der FritzBox ist das Port Forwarding wie folgt konfiguriert:
UDP 500
UDP 1701
UDP 4500
ESP
...sind weitergeleitet an den (10.120.10.1)Mikrotik
Der Mikrotik ist wie folgt konfiguriert:
(Gedacht ist es so, dass VPN-Clients das VLAN91 mit dem Subnetz 10.120.91.0/24 benutzen)
Der Windows Built in VPN-Clinet ist so konfiguriert, dass er die 192.168.178.252 ansteuert, den IPsec PSK eingetragen hat, sowie die Nutzerdaten.
Leider kommt immer die Meldung, dass beim Versuch, eine gesicherte Verbindung herzustellen etwas fehlgeschlagen ist.
Hat jemand eine Idee, was ich falsch gemacht haben könnte?
Besten Dank und Gruß
Alex
ich habe nun seit ein paar Wochen ein Mikrotik CRS als Core-Switch im Einsatz mit einer VLAN-Segmentierung, und bereue meine Wahl bis heute nicht.
Leider kriege ich es nicht gebacken, einen IPsec VPN-Zugang für einen Windows-Client auf dem Teil einzurichten.
Das Szenario sieht wie folgt aus:
Das Netz 192.168.178.0/24 soll als Testnetzwerk das WAN simulieren
Windows-PC(192.168.178.52) <--------> (192.168.178.252)Fritz!Box(10.120.10.250) <--------> (10.120.10.1)MikroTik
Bei der FritzBox ist das Port Forwarding wie folgt konfiguriert:
UDP 500
UDP 1701
UDP 4500
ESP
...sind weitergeleitet an den (10.120.10.1)Mikrotik
Der Mikrotik ist wie folgt konfiguriert:
(Gedacht ist es so, dass VPN-Clients das VLAN91 mit dem Subnetz 10.120.91.0/24 benutzen)
[admin@FIRMA-CORSW001.firmendomain.tld] > exp
# apr/03/2020 12:03:50 by RouterOS 6.45.8
#
# model = CRS125-24G-1S
/interface bridge
add name=bridge1 vlan-filtering=yes
/interface ethernet
set [ find default-name=sfp1 ] advertise=10M-half,10M-full,100M-half,100M-full,1000M-half,1000M-full
/interface vlan
add interface=bridge1 name=VLAN2 vlan-id=2
add interface=bridge1 name=VLAN3 vlan-id=3
add interface=bridge1 name=VLAN4 vlan-id=4
add interface=bridge1 name=VLAN10 vlan-id=10
add interface=bridge1 name=VLAN20 vlan-id=20
add interface=bridge1 name=VLAN30 vlan-id=30
add interface=bridge1 name=VLAN40 vlan-id=40
add interface=bridge1 name=VLAN50 vlan-id=50
add interface=bridge1 name=VLAN60 vlan-id=60
add interface=bridge1 name=VLAN70 vlan-id=70
add interface=bridge1 name=VLAN91 vlan-id=91
/interface wireless security-profiles
set [ find default=yes ] supplicant-identity=MikroTik
/ip firewall layer7-protocol
add name=firmendomain.tld regexp=firmendomain.tld|168.192.in-addr.arpa|10.in-addr.arpa|172.30.in-addr.arpa
/ip ipsec peer
# This entry is unreachable
add name=l2tpserver passive=yes
/ip ipsec profile
set [ find default=yes ] enc-algorithm=aes-256,aes-128,3des
/ip ipsec proposal
set [ find default=yes ] enc-algorithms=3des
/ip pool
add name=dhcp_vlan40 ranges=10.120.40.20-10.120.40.200
add name=dhcp_vlan50 ranges=10.120.50.20-10.120.50.200
add name=dhcp_vlan2 ranges=192.168.2.50-192.168.2.200
add name=dhcp_vlan30 ranges=10.120.30.20-10.120.30.200
add name=dhcp_vlan70 ranges=10.120.70.20-10.120.70.200
add name=dhcp_vlan20 ranges=10.120.20.20-10.120.20.200
add name=dhcp_vlan60 ranges=10.120.60.20-10.120.60.200
add name=dhcp_vlan3 ranges=172.30.3.20-172.30.3.250
add name=dhcp_vlan4 ranges=172.30.4.20-172.30.4.250
add name=pool-vpn ranges=10.120.91.20-10.120.91.200
/ip dhcp-server
add address-pool=dhcp_vlan40 disabled=no interface=VLAN40 lease-time=23h59m59s name=dhcp_vlan40
add address-pool=dhcp_vlan50 disabled=no insert-queue-before=bottom interface=VLAN50 lease-time=23h59m59s name=dhcp_vlan50
add address-pool=dhcp_vlan2 disabled=no interface=VLAN2 lease-time=23h59m59s name=dhcp_vlan2
add address-pool=dhcp_vlan30 disabled=no interface=VLAN30 lease-time=23h59m59s name=dhcp_vlan30
add address-pool=dhcp_vlan70 disabled=no interface=VLAN70 lease-time=23h59m59s name=dhcp_vlan70
add address-pool=dhcp_vlan20 disabled=no interface=VLAN20 lease-time=23h59m59s name=dhcp_vlan20
add address-pool=dhcp_vlan60 disabled=no interface=VLAN60 lease-time=23h59m59s name=dhcp_vlan60
add address-pool=dhcp_vlan3 disabled=no interface=VLAN3 lease-time=23h59m59s name=dhcp_vlan3
add address-pool=dhcp_vlan4 disabled=no interface=VLAN4 lease-time=23h59m59s name=dhcp_vlan4
/ppp profile
add dns-server=10.120.91.1 local-address=10.120.91.10 name=ipsec_vpn
/snmp community
add addresses=::/0 authentication-password=GEHEIM authentication-protocol=SHA1 encryption-password=GEHEIM \
encryption-protocol=AES name=snmpc1 security=authorized
/interface bridge port
add bridge=bridge1 frame-types=admit-only-untagged-and-priority-tagged interface=ether2 pvid=50
add bridge=bridge1 frame-types=admit-only-untagged-and-priority-tagged interface=ether3 pvid=2
add bridge=bridge1 frame-types=admit-only-vlan-tagged interface=VLAN40 pvid=40
add bridge=bridge1 frame-types=admit-only-vlan-tagged interface=VLAN50 pvid=50
add bridge=bridge1 frame-types=admit-only-untagged-and-priority-tagged interface=ether4 pvid=50
add bridge=bridge1 frame-types=admit-only-untagged-and-priority-tagged interface=ether5 pvid=30
add bridge=bridge1 frame-types=admit-only-untagged-and-priority-tagged interface=ether6 pvid=50
add bridge=bridge1 interface=ether7 pvid=70
add bridge=bridge1 frame-types=admit-only-untagged-and-priority-tagged interface=ether8 pvid=50
add bridge=bridge1 frame-types=admit-only-untagged-and-priority-tagged interface=ether9 pvid=50
add bridge=bridge1 frame-types=admit-only-untagged-and-priority-tagged interface=ether10 pvid=50
add bridge=bridge1 frame-types=admit-only-untagged-and-priority-tagged interface=ether11 pvid=50
add bridge=bridge1 frame-types=admit-only-untagged-and-priority-tagged interface=ether12 pvid=50
add bridge=bridge1 frame-types=admit-only-untagged-and-priority-tagged interface=ether13 pvid=50
add bridge=bridge1 frame-types=admit-only-untagged-and-priority-tagged interface=ether14 pvid=50
add bridge=bridge1 frame-types=admit-only-untagged-and-priority-tagged interface=ether15 pvid=50
add bridge=bridge1 frame-types=admit-only-untagged-and-priority-tagged interface=ether16 pvid=50
add bridge=bridge1 frame-types=admit-only-untagged-and-priority-tagged interface=ether17 pvid=50
add bridge=bridge1 frame-types=admit-only-untagged-and-priority-tagged interface=ether18 pvid=50
add bridge=bridge1 frame-types=admit-only-untagged-and-priority-tagged interface=ether19 pvid=50
add bridge=bridge1 frame-types=admit-only-untagged-and-priority-tagged interface=ether20 pvid=3
add bridge=bridge1 frame-types=admit-only-untagged-and-priority-tagged interface=ether21 pvid=2
add bridge=bridge1 frame-types=admit-only-untagged-and-priority-tagged interface=ether22 pvid=4
add bridge=bridge1 frame-types=admit-only-untagged-and-priority-tagged interface=ether23 pvid=2
add bridge=bridge1 frame-types=admit-only-vlan-tagged interface=VLAN10 pvid=10
add bridge=bridge1 frame-types=admit-only-untagged-and-priority-tagged interface=ether1 pvid=10
add bridge=bridge1 frame-types=admit-only-vlan-tagged interface=VLAN20 pvid=20
add bridge=bridge1 frame-types=admit-only-vlan-tagged interface=VLAN30 pvid=30
add bridge=bridge1 frame-types=admit-only-vlan-tagged interface=VLAN60 pvid=60
add bridge=bridge1 frame-types=admit-only-vlan-tagged interface=VLAN70 pvid=70
add bridge=bridge1 frame-types=admit-only-vlan-tagged interface=VLAN2 pvid=2
add bridge=bridge1 frame-types=admit-only-vlan-tagged interface=VLAN3 pvid=3
add bridge=bridge1 frame-types=admit-only-vlan-tagged interface=VLAN4 pvid=4
add bridge=bridge1 frame-types=admit-only-vlan-tagged interface=VLAN91 pvid=91
/ip firewall connection tracking
set enabled=yes
/interface bridge vlan
add bridge=bridge1 tagged=bridge1,VLAN40 vlan-ids=40
add bridge=bridge1 tagged=bridge1,VLAN50 untagged="ether2,ether4,ether5,ether6,ether8,ether9,ether10,ether11,ether12,ether13\
,ether14,ether15,ether16,ether17,ether18,ether19" vlan-ids=50
add bridge=bridge1 tagged=bridge1,VLAN10,ether7 untagged=ether1 vlan-ids=10
add bridge=bridge1 tagged=bridge1,VLAN20 vlan-ids=20
add bridge=bridge1 tagged=bridge1,VLAN30 vlan-ids=30
add bridge=bridge1 tagged=bridge1,VLAN60,ether7 vlan-ids=60
add bridge=bridge1 tagged=bridge1,VLAN70 untagged=ether7 vlan-ids=70
add bridge=bridge1 tagged=bridge1,VLAN2 untagged=ether3,ether21,ether23 vlan-ids=2
add bridge=bridge1 tagged=bridge1,VLAN3,ether7 untagged=ether20 vlan-ids=3
add bridge=bridge1 tagged=bridge1,VLAN4 untagged=ether22 vlan-ids=4
add bridge=bridge1 tagged=bridge1,VLAN91 vlan-ids=91
/interface l2tp-server server
set allow-fast-path=yes authentication=mschap1,mschap2 default-profile=ipsec_vpn enabled=yes ipsec-secret=\
GEHEIM use-ipsec=required
/interface ovpn-server server
set auth=sha1 cipher=aes256 require-client-certificate=yes
/ip address
add address=10.120.10.1/24 interface=VLAN10 network=10.120.10.0
add address=10.120.40.1/24 interface=VLAN40 network=10.120.40.0
add address=10.120.50.1/24 interface=VLAN50 network=10.120.50.0
add address=10.120.20.1/24 interface=VLAN20 network=10.120.20.0
add address=10.120.30.1/24 interface=VLAN30 network=10.120.30.0
add address=10.120.60.1/24 interface=VLAN60 network=10.120.60.0
add address=10.120.70.1/24 interface=VLAN70 network=10.120.70.0
add address=192.168.2.1/24 interface=VLAN2 network=192.168.2.0
add address=172.30.3.1/24 interface=VLAN3 network=172.30.3.0
add address=172.30.4.1/24 interface=VLAN4 network=172.30.4.0
add address=10.120.91.1/24 interface=VLAN91 network=10.120.91.0
/ip dhcp-server lease
add address=10.120.70.6 client-id=1:c4:ad:34:74:24:c7 mac-address=C4:AD:34:74:24:C7 server=dhcp_vlan70
/ip dhcp-server network
add address=10.120.20.0/24 dns-server=10.120.10.1,10.120.40.1 domain=firmendomain.tld gateway=10.120.20.1
add address=10.120.30.0/24 dns-server=10.120.10.1,10.120.40.1 domain=firmendomain.tld gateway=10.120.30.1
add address=10.120.40.0/24 dns-server=10.120.10.1,10.120.40.1 domain=firmendomain.tld gateway=10.120.40.1
add address=10.120.50.0/24 dns-server=10.120.10.1,10.120.40.1 domain=firmendomain.tld gateway=10.120.50.1
add address=10.120.60.0/24 dns-server=10.120.10.1,10.120.40.1 domain=firmendomain.tld gateway=10.120.60.1
add address=10.120.70.0/24 dns-server=10.120.70.1 domain=firmendomain.tld gateway=10.120.70.1
add address=172.30.3.0/24 dns-server=10.120.10.1,10.120.40.1 domain=firmendomain.tld gateway=172.30.3.1
add address=172.30.4.0/24 dns-server=172.30.4.1 domain=firmendomain.tld gateway=172.30.4.1
add address=192.168.2.0/24 dns-server=10.120.10.1,10.120.40.1 domain=firmendomain.tld gateway=192.168.2.1
/ip dns
set allow-remote-requests=yes max-concurrent-queries=200 max-concurrent-tcp-sessions=40 servers=1.1.1.1,9.9.9.9
/ip firewall filter
add action=accept chain=input port=1701,500,4500 protocol=udp
add action=accept chain=input protocol=ipsec-esp
/ip firewall mangle
add action=mark-connection chain=prerouting dst-address=10.120.10.1 dst-port=53 layer7-protocol=firmendomain.tld \
new-connection-mark=firmendomain.tld-forward protocol=tcp
add action=mark-connection chain=prerouting dst-address=10.120.10.1 dst-port=53 layer7-protocol=firmendomain.tld \
new-connection-mark=firmendomain.tld-forward protocol=udp
add action=mark-connection chain=prerouting dst-address=10.120.40.1 dst-port=53 layer7-protocol=firmendomain.tld \
new-connection-mark=firmendomain.tld-forward protocol=tcp
add action=mark-connection chain=prerouting dst-address=10.120.40.1 dst-port=53 layer7-protocol=firmendomain.tld \
new-connection-mark=firmendomain.tld-forward protocol=udp
/ip firewall nat
add action=dst-nat chain=dstnat connection-mark=firmendomain.tld-forward to-addresses=192.168.2.2
add action=masquerade chain=srcnat connection-mark=firmendomain.tld-forward
add action=masquerade chain=srcnat out-interface=VLAN10
/ip ipsec identity
add generate-policy=port-override peer=l2tpserver secret=GEHEIM
/ip ipsec policy
set 0 dst-address=0.0.0.0/0 src-address=0.0.0.0/0
/ip route
add distance=1 gateway=10.120.10.250
/ip ssh
set allow-none-crypto=yes forwarding-enabled=remote
/lcd interface pages
set 0 interfaces=ether1,ether2,ether3,ether4,ether5,ether6
/ppp secret
add name=fu password=GEHEIM profile=ipsec_vpn remote-address=10.120.91.11 service=l2tp
/snmp
set contact=TU enabled=yes location=FIRMA trap-generators=temp-exception,interfaces,start-trap trap-interfaces=all \
trap-version=2
/system clock
set time-zone-name=Europe/Berlin
/system identity
set name=FIRMA-CORSW001.firmendomain.tld
Der Windows Built in VPN-Clinet ist so konfiguriert, dass er die 192.168.178.252 ansteuert, den IPsec PSK eingetragen hat, sowie die Nutzerdaten.
Leider kommt immer die Meldung, dass beim Versuch, eine gesicherte Verbindung herzustellen etwas fehlgeschlagen ist.
Hat jemand eine Idee, was ich falsch gemacht haben könnte?
Besten Dank und Gruß
Alex
Please also mark the comments that contributed to the solution of the article
Content-Key: 562927
Url: https://administrator.de/contentid/562927
Printed on: November 28, 2023 at 09:11 o'clock
5 Comments
Latest comment
Ein paar Dinge die du noch klären solltest bevor wir ins Eingemachte gehen:
https://wiki.mikrotik.com/wiki/Manual:Interface/L2TP#Site-to-Site_L2TP
https://www.youtube.com/watch?v=BMytryjHXjM
- Welches VPN Protokoll nutzt du ?? Das Port Forwarding lässt darauf schliessen das du L2TP benutzt ? Ist das korrekt ? Hier fehlt leider die Info.
- Wenn ja, solltest du besser TCP und UDP 1701 freigeben. Manche reden da von TCP default (Juniper) aber andere von UDP. Die Majorität ist aber für UDP.
- Wenn nein und du IPsec Native nutzt, mit welchem Client ? Was externes oder onboard ?
https://wiki.mikrotik.com/wiki/Manual:Interface/L2TP#Site-to-Site_L2TP
https://www.youtube.com/watch?v=BMytryjHXjM
L2TP VPN Server mit Mikrotik
Table of contents
Wasserdicht getestet auf dem Mikrotik und... um es gleich vorwegzunehmen: Funktioniert fehlerlos ! 😉
Und das sowohl direkt mit dem Mikrotik WAN Port im Internet als auch in einer Router_Kaskade mit einem davor liegenden NAT Router der Port Forwarding für L2TP:
- UDP 500, 1701, 4500
- ESP Protokoll (IP Nr. 50)
Basis ist eine Mikrotik Default Konfig:
- eth1 = WAN Interface mit NAT und aktiver Firewall
- eth2-5 = Bridge IP Interface lokales LAN mit der IP: 192.168.88.1 /24
- DHCP Pool: .88.100 bis .88.150
- L2TP Client IP (außerhalb des o.a. Pools!): .88.200 (Username: "testuser")
- Router OS: Stable 7.5
1.) Mikrotik L2TP VPN Server Grundkonfiguration:
Wichtig: Lokales LAN Interface im ARP Mode Setting auf Proxy-ARP setzen !
Proxy ARP muss bei L2TP immer auf dem lokalen LAN Interface gesetzt sein, egal ob es ein Bridge, LAN (ether) oder ein VLAN Interface ist !!
Achtung:
Nutzer mit einem Mikrotik VLAN Setup setzen das Proxy ARP natürlich nicht auf das Bridge Interface sondern immer auf das VLAN IP Interface !! (Ein Bridge IP Interface ist in einem VLAN Setup so oder so nicht vorhanden!)
(Das Bridge Interface wird nur dann verwendet wenn, wie hier im Standard Beispiel, eine Mikrotik Default Konfig genutzt wird ! (Ports eth2-5 sind via einfacher Bridge als lokales LAN zusammengefasst) oder Ports über eine einfache Bridge (keine VLAN Bridge) zusammengefasst sind.)
2.) Einrichten des L2TP Servers:
- L2TP aktivieren mit IPsec und PSK:
Apple supportet auch SHA256 als Hashing aber in einem gemischen Umfeld geht man mit SHA1 Hashing auf Nummer sicher !
Und nochmal Achtung: Einige einfache Androiden und L2TP Clients supporten keine DH Group 2048 !
Sollte die L2TP Verbindung nicht zustande kommen muss man hier im Setup zusätzlich (oder nur) DH Group 2 (modp1024) anhaken !
Internen DNS Server einbinden
Wer einen eigenen, internen DNS Server betreibt kann diesen in das PPP Profil einbinden so das der VPN Client dann auch lokale DNS Hostnamen auflösen kann.Alles Details dazu HIER.
- L2TP Username und Passwort setzen:
3.) Firewall Regeln anpassen das L2TP passieren kann:
Firewall customizen das L2TP VPN Pakete von extern den Mikrotik Router durch die Firewall erreichen können:
- UDP 500
- UDP 1701
- UPD 4500
- ESP
DNS auf MT erlauben um lokale Hostnamen auflösen zu können
Die Default Firewall Regeln blocken generell den Zugriff von außen. Das inkludiert auch DNS Zugriffe von VPN Clients auf den MT DNS Server. Mit 2 zusätzlichen Firewall Regeln ist das aber schnell erledigt.Dieser Thread zeigt wie man die Regeln in der Firewall setzt.
4.) Windows VPN Client einrichten:
(Achtung !:21H2 oder älter benötigt den Patch HIER !)
22H2 oder neuer erfordert keinen Patch!
2 wichtige Punkte:
- Bei älteren Windows Versionen wie Win 7 unbedingt NAT-Traversal in der Registry aktivieren!
- Typ: L2TP mit IPsec und nur MS Chap v2 zulassen (Security) !!!
Windows 10: Schneller VPN Aufbau per einfachem Mausklick
https://www.heise.de/ct/ausgabe/2017-19-VPN-und-Remote-Desktop-Verbindun ...Achtung bei den VPN User Credentials:
Windows VPN L2TP , falsche Anmeldedaten
5.) Apple Mac VPN Client einrichten:
6.) iPhone / iPad VPN Client einrichten:
Automatisiertes VPN "on Demand" für iOS Apple Endgeräte über XML Templates
VPN - Fritzbox vs. MikroTik
7.) Android VPN Client einrichten:
8.) Linux L2TP Client Setup
Detailierte Anleitung für einen Linux L2TP Client HIER.
Mit Window Oberfläche (GUI) HIER.
9.) Weiterführende Links zum Thema L2TP VPN
- Site to Site (Standort) Anbindung mit L2TP
- pfSense / OPNsense Firewall als L2TP VPN Server
- Cisco IOS Router als L2TP VPN Server
- VPN Server mit Raspberry Pi und onboard VPN Clients
- Windows u. iPhone L2TP Client und Routing Verhalten
Fazit:
Works as designed ! 😉