gelöst - wireguard endpoint lan subnet wg schnittstelle down

Started by wirehire, April 09, 2021, 08:08:49 AM

Previous topic - Next topic
 Wenn ich einen Wireguard Server aufsetzte und dem Endpoint zb das LAN Subnetz unter allowed ips angebe, kommt die Schnittstelle nicht mehr hoch. Ich muss doch aber es darunter eintragen, damit die Pakete nicht verworfen werden und der Endpoint (client) in das Subnetz darf oder habe ich dein ein Verstädnnis Problem?

aktuellste Version opnsense 21.1.4

Über Anregungen freue ich mich!

Die Schnittstelle kommt nicht mehr hoch, weil dein WireGuard Server versucht Routen auf alle Allowed IP's der Endpoints anzulegen.
Die Route auf das LAN Subnetz des Servers gibts aber natürlich schon  :)

Richtig wäre es so:

- In der WireGuard Konfiguration des Servers gibst du unter Endpoint -> Allowed IP's nur die Transfernet IP's des Endpoints an, falls gewünscht auch das lokale LAN Segment *hinter* dem Endpoint.

- Das LAN Subnetz des Servers gehört unter Allowed IP's an die entsprechende Stelle in der Konfiguration des *Endpoint Routers*



      WAN / Internet      -----------------------------------------                  Cloudserver WG 10.1.1.1/32 (24)
            :
            :
            :
      .-----+-----.
      |  Fritzbox|   ---------       Fritzbox Netz 192.168.178.0/24
      '-----+-----'
            |
        WAN | IP
            |
      .-----+------.   
      |  OPNsense |    ---- WG 10.1.1.2/32  (24)
      '-----+------'   
            |
        LAN | 10.0.0.0/24


     

Hallo goodomens32,

danke für deine Antwort, das dachte ich mir schon, das sich die Routen beißen, weil die Route ja schon vorhanden ist.

Auf dem cloudserver , habe ich unter allowed das lan Netz eingetragen (im peer).

Alos muss ich jetzt in der Sense nur das Transfernetz im Endpoint angeben?

In deinem konkreten Fall:

- In der OPNSense unter Endpoint -> Allowed IP's 10.1.1.1/32 + etwaiges Subnetz hinter "Cloudserver WG"
- Im Cloudserver WG unter Endpoint -> Allowed IP's 10.1.1.2/32 + 10.0.0.0/24


Cloudserver config:

Interface]
Address = 10.1.1.1/32
PrivateKey = 
PostUp = iptables -A  regeln
PostDown = iptables -D regeln
ListenPort = 51820


#SENSE
[Peer]
PublicKey =
Allowed IPs = 10.1.1.2/32, 192.168.178.0/24, 10.0.0.0/24


und in der Sense dann im Endpoint , reicht ein

allowed IPs= 10.1.1.0/24

für das Transportnetz?



hallo goodomens42,

danke das klärt etwas im meinen Kopf. Für das Fritzbox Netz, muss ich da noch eine route in der FB anlegen für den Rückkanal?

Quote from: wirehire on April 09, 2021, 08:44:22 AM
#SENSE
[Peer]
PublicKey =
Allowed IPs = 10.1.1.2/32, 192.168.178.0/24, 10.0.0.0/24

Die 192.168.178.0/24 wird nur funktionieren, wenn du in der Fritz!Box eine entsprechende Route via die OPNSense einträgst

Quote from: wirehire on April 09, 2021, 08:44:22 AM
allowed IPs= 10.1.1.0/24

jo, oder auch einfach 10.1.1.1/32

super die route in der fb wäre dann:

10.1.1.0  255.255.255.0  gw  opnsense  wan ip?

(Transportnetz wireguard)

Quote
10.1.1.0  255.255.255.0  gw  opnsense  wan ip?

Genau  8)

Hallo goodmens42,

Ich wollte dir danke sagen, funktioniert !

Wenn ich jetzt zb einen client alles durch das wg Interface schicken möchte, dann würde ich das über eine NAT Outbound Regel machen? Wäre das der Korrekte weg, also alles was ins Internet geht, über wg.

Schnittstelle      Quelle               Quellport     Ziel      Zielport   NAt-Adresse
Wireguard         CLIENTPC/32        *               *          *              Wireguad Address


Würde man das so machen oder anders per route usw?

Danke und einen schönen Sonntag Abend!

Routing und Outbound NAT sind zwei paar Stiefel, letzteres passiert erst, nachdem schon eine Routing Entscheidung getroffen wurde.
Was immer von deinem Client kommt, wird nur dann durch das WireGuard Interface geroutet, wenn die Zieladresse 10.1.1.1/32 ist.
Insofern klappt das nicht so, mit deiner Outboud NAT Regel.

Ich denke, was du willst sollte so gehen:

- Unter "Interfaces -> Assignments" aus dem wg0 Interface eine Schnittstelle machen
- Unter "System -> Gateways -> Single" ein neues Gateway auf dieser Schnittstelle erstellen, als "Far Gateway" markieren, "Upstream Gateway" nicht markieren und die IP 10.1.1.1 zuordnen
- Eine neue Firewall Rule für das Interface LAN erstellen mit Source "CLIENTPC/32", Destination "any" und dem im letzten Schritt erstellten Gateway
- Dafür sorgen, das der externe Wireguard Server unter 10.1.1.1 brav alles was kommt mit NAT ins Internet weiterroutet

Ist jetzt ohne Gewähr weil nicht ausprobiert und grob skiziert :)

Hallo goodomens42,

Danke für die Erklärung! Also findet das NAT , nach Routing stand!

Zum Verständnis , wenn ich die Regel auf LAn setze, reicht das , das er alles drüber routet oder muss der client diese auch eingetragen haben? Und das Outbound NAT lasse ich dann komplett weg?

ich möchte , das der komplette ausgehende Traffic vom Client komplett durch die Wireguard Verbindung geht.


Nein.
Der Client muss als Gateway deine OPNsense haben, falls das nicht der Fall ist kannst du auch auf dem Client manuell eine Route hinterlegen, da es für den gesamten WebTraffic des Clients sein soll gehe ich aber von erstem aus. Da brauchst du dann nur die FW Regel

Ausgehendes NAT wird ja entweder dein Wireguard Server machen oder danach Modem, etc.
Solange die Routenden Geräte die lokalen Netze kennen brauchst du da auch kein Ausgehendes NAT
(Unoffial Community) OPNsense Telegram Group: https://t.me/joinchat/0o9JuLUXRFpiNmJk

PM for paid support

Quote from: wirehire on April 12, 2021, 08:13:48 AM
Zum Verständnis , wenn ich die Regel auf LAn setze, reicht das , das er alles drüber routet oder muss der client diese auch eingetragen haben? Und das Outbound NAT lasse ich dann komplett weg?

Die Regel unter LAN sollte den gesamten ausgehenden Traffic von CLIENTPC/32 behandeln (dazu muss, wie lfirewall1243 schreibt der Client die OPNsense als Gateway haben), das Outbound-NAT lässt du (genau wie das lfirewall1243 auch schreibt) weg. Vor dem Übergang ins "Internet" muss bei IPv4 ge-NATed werden, aber das ist Aufgabe des WireGuard Servers 10.1.1.1, nicht die der OPNSense.