OPNsense Forum

International Forums => German - Deutsch => Topic started by: wirehire on May 04, 2019, 03:31:56 pm

Title: [solved] opensense wireguard zu opnsense wireguard
Post by: wirehire on May 04, 2019, 03:31:56 pm
Hallo,

ich Danke erstmal dem Forum das mir geholfen hat am Anfang die Probleme von Wireguard bei mir zu lösen.
Ich nutze Wireguard jetzt einige Zeit mit Opnsense und bin sehr glücklich damit. Nun wollte ich mich meinem nächsten Projekt stellen und bräuchte etwas Hilfe.

 VPS OPNSENSE Wireguard  (läuft )

Nun wollte ich zu hause eine direkt Verbindung mit opnsense herstellen. Die OPnsense zu Hause ist hinter einer Fritzbox geschaltet und hat ein Interface LAN. Ich habe dem Lan Interface die Fritzbox als Gateway gegeben. Nach draußen kann ich alles anpingen.

Opnsense Plugin installiert:

WireguardServer
Publickey erstellt
Privatekey erstellt
Port 51820
Tunnel Adress 172.16.1.10/28
Peer: OPNSENSEVPS

Endpoint:
OPNSENSEVPS
Publickey vom wireguard Interface des VPS
Tunnel Address  0.0.0.0/0
Endpoint Address ip des VPS
Endpoint Port 51820

Auf dem Opnsense im VPS habe ich den Peer hinzugefügt:

Publickey vom Home opnsese wireguard Interface
Tunneladdress 172.16.1.6/32

Die Verbindung wird nicht aufgebaut. Ich muss bestimmt eine NAT Ausgehende Reegle machen oder? Jetzt stellt sich mir die Frage wie kann ich das Wireguard Interface per Nat Rule über das LAN Interface anbinden , da es ja keine WAN Schnittstelle benutzt?

Vielen Dank für Vorschläge und wer sich überhaupt die Zeit nimmt und den Beitrag durchliest.

Schönes Wochenende

Title: Re: opensense wireguard zu opnsense wireguard
Post by: wirehire on May 04, 2019, 04:53:36 pm
 Ich habe jetzt den Handshake hinbekommen durch die NAt Rule auf dem ersten Screenshot. Leider kann ich nichts anpingen. Muss ich noch per NAT den Rückkanal machen wegen LAN? Habe das auf dem 2 Screenshot ausprobiert aber keinen Erfolg damit erreicht.

Title: Re: opensense wireguard zu opnsense wireguard
Post by: micneu on May 04, 2019, 08:28:05 pm
ich mache es seit neuestem, wenn ich was teste und noch nicht final ist das ich gerne unter Floating eine
regel für ICMP anlege die erstmal auf allen schnittstellen erlaubt. so kann ich erstmal sagen ok, das geht.
danach kann man es wieder einschränken.
Title: Re: opensense wireguard zu opnsense wireguard
Post by: mimugmail on May 04, 2019, 09:48:19 pm
Den Ping machst du von der OPNsense daheim oder?
Title: Re: opensense wireguard zu opnsense wireguard
Post by: wirehire on May 05, 2019, 12:02:06 pm
Danke micneu, das ist eine sehr gute Idee. Werde ich sofort Testen.
Title: Re: opensense wireguard zu opnsense wireguard
Post by: wirehire on May 05, 2019, 12:09:55 pm
@mimugmail  den Ping machen ich von der Opnsense daheim.

ich glaube das mein Routing oder mein NAt falsch sind.


zum Verständnis :


internet ----FB/wan----FBLAn
                                   |
                                   |
                                 Opsense-Lan (192.168.178.253) (Gateway 192.168.178.1)
                                   |
                                   |
                                 Opsense Wireguard wg0  (per NAT outbound an das LAN gebunden)


Destination        Gateway            Flags     Netif Expire
0.0.0.0/1         wg0                US          wg0
default             192.168.178.1      UGS         em0
localhost          link#3             UH          lo0
128.0.0.0/1      wg0                US          wg0
172.17.0.1         link#6             UH          wg0
185.162.251.108    192.168.178.1      UGHS        em0
192.168.178.0/24   link#1             U           em0
OPNsense           link#1             UHS         lo0


Muss ich auf der FB eine Rückroute einstellen?



Title: Re: opensense wireguard zu opnsense wireguard
Post by: mimugmail on May 05, 2019, 12:55:15 pm
Ich verstehe deine Zeichnung nicht. Kannst du mit der Hand zeichnen mit Richtungspfeil, IPs und Internet Wolke, Foto dann hier rein

Das Howto mit central Internet breakout hast du gelesen?
Title: Re: opensense wireguard zu opnsense wireguard
Post by: wirehire on May 05, 2019, 01:41:43 pm
Hallo @Migmugmail

ich habe das mal schnell aufgezeichnet.

Im endeffekt möchte ich ein vpn Gateway haben durch die opnsense im Lan. Wan macht die Fritzbox. Opnsense soll im Lan hängen eine verbindung per wireguard zu meinem wireguard server öffnen und halten. Und wenn ich dann clients den Gateway mitgebe dann direkt alles durch den Tunnel schicken, sodass nicht jeder client extra ein vpn aufmachen muss. Mit openvpn in einer anderen konstalleation hatte ich das auch hinbekommen. Aber hier glaube ich das schon broken by design von mir ist.

Im Anhang der Netzplan.

Danke für deine Hilfe.
Title: Re: opensense wireguard zu opnsense wireguard
Post by: mimugmail on May 05, 2019, 03:19:02 pm
Sind deine PCs hinter der OPNsense oder in 178?
Title: Re: opensense wireguard zu opnsense wireguard
Post by: wirehire on May 05, 2019, 03:22:49 pm
Die Pcs sind auch im 192.168.178.0/24 Netz. Die opnsense ist ja auch nur per Lan am Router im gleichen Netz.
Title: Re: opensense wireguard zu opnsense wireguard
Post by: mimugmail on May 05, 2019, 04:16:32 pm
Hm, das ist nicht das beste Netzdesign, schwer von extern da den Fehler zu finden
Title: Re: opensense wireguard zu opnsense wireguard
Post by: wirehire on May 05, 2019, 04:18:04 pm
Ich lerne gerne dazu.


wie würdest du spontan es aufbauen wenn du eine fritzbox als Router hast und dahinter mit opnsense einen wireguard (vpn) gateway realisieren würdest wollen?

Title: Re: opensense wireguard zu opnsense wireguard
Post by: wirehire on May 05, 2019, 05:50:18 pm
 So ich habe noch einmal von vorne angefangen und diesmal die opnsense als wan statt lan anschluß eingestellt und von jedem einen ordentlichen Scrennshot gemacht.

Ich denke das etwas mit dem Rückkanal nicht stimmt. In der Firewall Liveansicht sehe ich ja das die Wireguard Schnittstelle nach außen komminzieren möchte.

Anbei Netzplan, Fritzbox, WAN,NAT,Firewall Rules, Wireguard und Firewall Beispiel.

Eventuell erkennt dann jemand wo mein Fehler liegt.
Title: Re: opensense wireguard zu opnsense wireguard
Post by: wirehire on May 05, 2019, 05:52:15 pm
der Rest.
Title: Re: opensense wireguard zu opnsense wireguard
Post by: wirehire on May 05, 2019, 05:52:41 pm
Rest2
Title: Re: opensense wireguard zu opnsense wireguard
Post by: micneu on May 05, 2019, 05:53:28 pm
ich würde die fritzbox am wan deiner opnsense anschließen und ein exposethost (oder wie auch immer das sich nennt) auf die opnsense machen, danach dein restliches lan hinter die sense.
ich packe dir mal ein bild meines netzes rein (das ist nur ein beispiel, ich will nicht damit sagen das ist das optimum).

da wo ich das vigor165 habe musst du dir deine fb vorstellen
Title: Re: opensense wireguard zu opnsense wireguard
Post by: micneu on May 05, 2019, 06:00:18 pm
warum nimmst du hier nicht einfach ein 24er netzt
Tunnel Adress 172.16.1.10/28
Tunneladdress 172.16.1.6/32

soll das wirklich so sein?
Title: Re: opensense wireguard zu opnsense wireguard
Post by: wirehire on May 05, 2019, 06:22:57 pm
ich hatte das 28 genommen weil ich nicht viele Clients habe. Soll ich das auf ein 24 Netz umstellen?


Vps OPnsense : wireguard 172.16.1.0/28 Netz
Home OPNsense : wireguard 172.17.0.0/28 Netz

Der Endpoint mit der 172.16.1.6/32 ist für die Einwahl zum VPS Wireguard und dort als PEER hinterlegt.
Title: Re: opensense wireguard zu opnsense wireguard
Post by: wirehire on May 05, 2019, 06:41:55 pm
Wenn ich einen Mitschnitt auf von der FB mache, sehe ich auch das die Verbindung mit wireshark steht und der keepalive ab und an kommt. Trotzdem geht kein Ping und datenfluss.

Aber es kommt halt nur der Handshake zustanden:

 allowed ips: 172.16.1.6/32
  latest handshake: 1 minute, 4 seconds ago
  transfer: 0 B received, 160 B sent

aber kein Datenvekehr. Mit einem anderen Client läuft die Verbindung, sodass ich den Server ausschließen kann.
Title: Re: opensense wireguard zu opnsense wireguard
Post by: mimugmail on May 05, 2019, 07:19:20 pm
Dann musst du auf die Console und tcpdump auf das wg interface machen, dann siehst du bestimmt was los ist.
Title: Re: opensense wireguard zu opnsense wireguard
Post by: wirehire on May 05, 2019, 08:34:30 pm
 ich habe mal probiert 2 ips anzupingen, 1 8.8.8.8 und 1x das wireguard interface des Servers.

20:31:52.944706 IP 172.17.0.1 > google-public-dns-a.google.com: ICMP echo request, id 12357, seq 0, length 64
20:31:52.946371 IP 172.17.0.1.61012 > l.root-servers.net.domain: 19801% [1au] A? arpa. (33)
20:31:53.977412 IP 172.17.0.1 > google-public-dns-a.google.com: ICMP echo request, id 12357, seq 1, length 64
20:31:54.996002 IP 172.17.0.1 > google-public-dns-a.google.com: ICMP echo request, id 12357, seq 2, length 64
20:31:56.069570 IP 172.17.0.1 > google-public-dns-a.google.com: ICMP echo request, id 12357, seq 3, length 64
20:31:57.096978 IP 172.17.0.1 > google-public-dns-a.google.com: ICMP echo request, id 12357, seq 4, length 64


20:35:00.199689 IP 172.17.0.1 > 172.16.1.1: ICMP echo request, id 33905, seq 3, length 64
20:35:01.235931 IP 172.17.0.1 > 172.16.1.1: ICMP echo request, id 33905, seq 4, length 64
20:35:02.285918 IP 172.17.0.1 > 172.16.1.1: ICMP echo request, id 33905, seq 5, length 64
20:35:03.336701 IP 172.17.0.1 > 172.16.1.1: ICMP echo request, id 33905, seq 6, length 64
Title: Re: opensense wireguard zu opnsense wireguard
Post by: wirehire on May 06, 2019, 09:24:18 am
@migmugmail

ich hatte dein tutorial gelesen auf der Webseite  und dadurch geht es jetzt das der Tunnel Stabil ist und Datenvekehr stattfindet. Ip wird auf der HOME OPNSENSE mit der IP vom CLOUD VPS angezeigt.

Ich komme jetzt zum nächsten Problem :), wenn ich einen Client die route 0.0.0.0 über 192.168.178.253 ( home opnsense) anlege müsste doch alles durch den Tunnel gehen oder?

habe auch die IP vom Tunnel angegeben ,gleiche Problem.

Zum verständnis für mich:

mein client hat die 192.168.178.20/24 mit dem gateway 192.168.178.1 -- dadurch kann er die 192.168.178.253 erreichen.

wenn ich jetzt eine route mache:

route add 172.16.1.0 mask 255.255.255.240 192.168.178.253

und dann die route für alles auf den Tunnel gateway der opnsense lege müsste es doch richtig sein oder?

route add 0.0.0.0 mask 0.0.0.0 172.16.1.1


er soll alles was ins Internet geht über das VPn Gateway realisieren.

Title: Re: opensense wireguard zu opnsense wireguard
Post by: mimugmail on May 06, 2019, 04:04:33 pm
Ne, du musst auf dem Windows einfach dein Standardgateway auf die 253 legen. So routest du ja 172.16 auf die OPN und dann 0.0.0.0. auf 172.16 (was glaub ich einen Fehler werfen müsste)
Title: Re: opensense wireguard zu opnsense wireguard
Post by: wirehire on May 06, 2019, 04:09:30 pm
Das dachte ich mir auch.

Muss ich in opnsense noch eine Route für das Forwarding machen?

also das der Lan Traffic immer durch den tunnel geht?
Title: Re: opensense wireguard zu opnsense wireguard
Post by: mimugmail on May 06, 2019, 04:50:08 pm
Wenn du dir die routen auf der OPN anschaust müssten da 2 sein ... 0.0.0.0/1 und 128.0.0.0/1
Title: Re: opensense wireguard zu opnsense wireguard
Post by: wirehire on May 06, 2019, 06:02:32 pm

die /1 bedeutet das er auch die default überschreibt bzw höher ist oder?

0.0.0.0/1          wg0                US          wg0
default            192.168.178.1      UGS      vtnet0
localhost          link#3             UH          lo0
128.0.0.0/1        wg0                US          wg0
172.16.1.0/28      wg0                US          wg0
172.16.1.6         link#6             UH          wg0
vps.host.m       192.168.178.1      UGHS     vtnet0
192.168.178.0/24   link#1             U        vtnet0
OPNsense           link#1             UHS         lo0


Ich habe auf jeden Fall die beiden drin.
Title: Re: opensense wireguard zu opnsense wireguard
Post by: wirehire on May 06, 2019, 06:16:09 pm
 auf dem client habe ich jetzt die 192.168.178.253 als gateway eingetragen:

0.0.0.0 0.0.0.0 192.168.178.253



In der firewall Live Ansicht sehe ich auch das der client seine Anfrage stellt

192.168.178.14   8.8.8.8   icmp   let out anything from firewall host itself

aber es kommt nicht zurück bzw eventuell dann nicht in den Tunnel.
Title: Re: opensense wireguard zu opnsense wireguard
Post by: mimugmail on May 06, 2019, 06:57:09 pm
Ist das oben die ganze Tabelle oder gibt's ne zweite Seite?
Title: Re: opensense wireguard zu opnsense wireguard
Post by: wirehire on May 06, 2019, 07:06:35 pm
Internet:
Destination        Gateway            Flags     Netif Expire
0.0.0.0/1          wg0                US          wg0
default            192.168.178.1      UGS      vtnet0
localhost          link#3             UH          lo0
128.0.0.0/1        wg0                US          wg0
172.16.1.0/28      wg0                US          wg0
172.16.1.6         link#6             UH          wg0
vps.host.m 192.168.178.1      UGHS     vtnet0
192.168.178.0/24   link#1             U        vtnet0
OPNsense           link#1             UHS         lo0

Internet6:
Destination        Gateway            Flags     Netif Expire
localhost          link#3             UH          lo0
fe80::%vtnet0/64   link#1             U        vtnet0
fe80::a00:27ff:fef link#1             UHS         lo0
fe80::%lo0/64      link#3             U           lo0
fe80::1%lo0        link#3             UHS         lo0
Title: Re: opensense wireguard zu opnsense wireguard
Post by: wirehire on May 07, 2019, 12:58:47 pm


 Ich habe einfach mal aus Testzwecken ein debian Rechner benutzt für diese Idee.
 
 1. Debian installiert
 2. ip 192.168.178.253
 3. Wireguard installiert
 4. Verbindung hergestellt

 Ping auf wireguard Interface und zb 8.8.8.8 geht

Client PC Gateway auf 192.168.178.253 eingetragen

1. Ping  192.168.178.253 geht
2. ping 8.8.8.8 geht nicht

 Auf dem Debian PC

1. IP Fowarding aktiviert.
2. iptables -t nat -A POSTROUTING -o wg0 -j MASQUERADE   (lan zum vpn leiten per masquerade)


Client PC

1. ping 8.8.8.8 geht
2. Webseiten gehen
3. check der Ip usw ist richtig


 Und genau da liegt mein problem mit der OPNSENSE, wie bekomme ich das Forwarding und Masquerade vom LAn zum VPN hin. Der Tunnel steht ja auf der Sense, aber der ankommenden Traffic vom Lan muss ja irgendwie in den "Tunnel" geschoben werden.
Title: Re: opensense wireguard zu opnsense wireguard
Post by: mimugmail on May 07, 2019, 02:28:27 pm
https://docs.opnsense.org/manual/how-tos/wireguard-client-azire.html?highlight=wireguard

Step 3 ...
Title: Re: opensense wireguard zu opnsense wireguard
Post by: wirehire on May 07, 2019, 02:41:02 pm

 Bei mir ist ja dann das Problem das ich kein Lan habe ,sondern nur Wan (mit der internen IP )

wenn ich jetzt:

WireGuard    192.168.178.0/24     *    *    *    Schnittstellenadresse    *    NEIN

als NAT OUTBOUND mache , geht es immer noch nicht.
Title: Re: opensense wireguard zu opnsense wireguard
Post by: wirehire on May 07, 2019, 02:55:02 pm
@mimugmail


soll ich einfach alles noch mal vom Scratch installieren und jeweils screenshots machen? Langsam verzweifel ich wirklich.
Title: Re: opensense wireguard zu opnsense wireguard
Post by: mimugmail on May 07, 2019, 04:00:01 pm
Du musst doch nur ein Interface assignen, das heisst dann z.B. WG .. darauf bauend dann das NAT.
Liess mal alle Artikel in der Doku über Wireguard, dann machts bestimmt Klick :)
Title: Re: opensense wireguard zu opnsense wireguard
Post by: wirehire on May 07, 2019, 06:16:46 pm
ich probiere es immer in Kontext zum Linux Server zu sehen.

WireGuard   192.168.178.0/24    *   *   *   Schnittstellenadresse   *   NEIN


Die Schnittstelle wireguard (wg0) ist doch assign, un der gebe ich mit das alles was aus dem Lan Netz kommt darüber genattet wird.

okay ich lese es noch mal in Ruhe alles durch.
Title: Re: opensense wireguard zu opnsense wireguard
Post by: mimugmail on May 07, 2019, 08:25:26 pm
Ansonsten morgen gerne per Teamviewer
Title: Re: opensense wireguard zu opnsense wireguard
Post by: wirehire on May 08, 2019, 10:53:51 am
 Ich habe noch mal die NAt Regeln ausgelesen:

nat on vtnet0 inet from 172.16.1.0/28 to any -> (vtnet0:0) port 1024:65535
nat on wireguard inet from 192.168.178.0/24 to any -> (wireguard:0) port 1024:65535 round-robin
nat on vtnet0 inet from (wg0:network) to any port = isakmp -> (vtnet0:0) static-port
nat on vtnet0 inet from 127.0.0.0/8 to any port = isakmp -> (vtnet0:0) static-port
nat on vtnet0 inet from (wg0:network) to any -> (vtnet0:0) port 1024:65535
nat on vtnet0 inet from 127.0.0.0/8 to any -> (vtnet0:0) port 1024:65535
no rdr proto carp all
no rdr on wg0 proto tcp from any to (wg0) port = ssh
no rdr on wg0 proto tcp from any to (wg0) port = http
no rdr on wg0 proto tcp from any to (wg0) port = https


 Bei den firewall Rules sehe ich blocks, ist da eventuell der Fehler:

block drop in log on ! vtnet0 inet from 192.168.178.0/24 to any
block drop in log inet from 192.168.1.253 to any
block drop in log on ! wg0 inet from 172.16.1.0/28 to any
block drop in log inet from 172.16.1.6 to any
block drop in log on vtnet0 inet6 from fe80::a00:27ff:feb0:a182 to any
block drop in log inet all label "02f4bab031b57d1e30553ce08e0ec131"
block drop in log inet6 all label "02f4bab031b57d1e30553ce08e0ec131"


Danke für dein Angebot der Hilfe. würde ich sehr gerne in Anspruch nehmen.
Title: Re: opensense wireguard zu opnsense wireguard
Post by: mimugmail on May 08, 2019, 12:59:22 pm
Komm mal ins IRC dann machen wir das schnell ...
Title: Re: opensense wireguard zu opnsense wireguard
Post by: wirehire on May 09, 2019, 01:43:39 pm
 Danke an alle , besonders mimugmail für euren Support!


Am Ende hat mimugmail heruasgefunden das es an Virtualbox lief, ich habe es jetzt mit einer anderen Virtualisierung getestet und da läuft es sofort. Am Wochenende werde ich es dann Nativ umsetzten.

Vielen Dank an die Community!