Tutorial für Hetzner Cloud (?)

Started by jhort, November 05, 2020, 09:11:24 AM

Previous topic - Next topic
OK, böser Anfängerfehler. Das Hetzner-Gateway war als Standardgateway gesetzt. Ich habe in System->Gateways->Single das LAN_DHCP Gateway deaktiviert (wird sich noch herausstellen ob das notwendig oder eine gute Idee war), die beiden WAN_DHCP und WAN_DHCP6 auf active geschaltet, und das WAN_DHCP als Upstream eingestellt. Jetzt geht es.

Hallo zusammen,

ich stehe auch vor dem Problem das meine Opnsense auf Hetzner nicht so wirklich "will". Ich möchte auf Hetzner ein privates Netzwerk erstellen, welches über die Opnsense ins Internet kann - ebenso soll die Opnsense VPN Zugriff ermöglichen.

Bei der Installation bin ich wie folgt vorgegangen:

1. Hetzner Portal: Hetzner Cloud Server mit Ubuntu Image erstellt
2. Hetzner Portal: Opnsense Image an diesem Server eingehängt
3. Hetzner Portal KVM: Opnsense gebootet und installiert
4. Hetzner Portal KVM: WAN Interface vtnet0 zugeordnet und IP per DHCP konfiguriert
5. Hetzner Portal KVM: Sicheres root Passwort vergeben
6. Hetzner Portal KVM: Reboot
7. Openvpn WebUi: Browser login auf der public IP
8. Openvpn WebUi: Installationswizard durchlaufen und Checkbox bei Bogon Netz Häckchen aus Checkbox genommen und bei LAN keine Eintragungen gemacht
9. Openvpn WebUi: Systemupdates installiert
10. Openvpn WebUi: Firewall Regel für den WAN Zugriff auf HTTP/HTTPS erstellt
11. Openvpn WebUi: Server heruntergefahren
12. Hetzner Portal: privates Netzwerk erstellt  (172.18.40.0/24) , darin legt Hetzner dann automatisch das 172.18.40.0/28 Netz an
13. Hetzner Portal: Server dem privaten Netzwerk hinzugefügt (172.18.40.2)
14. Hetzner Portal: Route 0.0.0.0/0  mit Opnsense Server als Gateway hinzugefügt
15. Hetzner Portal: Server gestartet
16. Openvpn WebUi: Login per public HTTPS auf der Opnsense
17. Openvpn WebUi: LAN Interface konfiguriert, enabled und per DHCP die IPv4 Konfig gemacht (172.18.40.2)
18. Openvpn WebUi: Firewall -> Aliases : Eintrag für das Hetzner Netzwerk gemacht (Name: Hetzner-Net-Alias ; Type: Network ; Content 172.18.40.0/28)
19. Openvpn WebUi: Firewall -> Rules -> Lan:  Allow all from Hetzner-Net-Alias to Destination any (Interface: LAN ;Source Hetzner-Net-Alias ; Source-Port: Any ; Destination Address: Any ; Destination Port : Any)
20. Openvpn WebUi: Firewall -> Rules -> NAT -> Outbound: Hybrid outbount NAT rule generation aktiviert
21. Openvpn WebUi: Firewall -> Rules -> NAT -> Outbound: Manual rule hinzugefügt (Interface: WAN ;Source Hetzner-Net-Alias ; Source-Port: Any ; Destination Address: Any ; Destination Port : Any)

Nach dieser Opnsense Konfiguration habe ich  im Hetzner Cloud (prive) Netzwerk einen Windows Server installiert um alles zu testen. Das public Interface habe ich komplett deaktiviert und die private IP Adresse des Windows Servers wird per DHCP von der Hetzner infrastruktur konfiguriert (172.18.40.3). Über den Windows Server kann ich die Opnsense WebUI erreichen. Wenn ich am Windows Server einen tracert auf die 8.8.8.8 mache, komme ich genau so weit:

tracert 8.8.8.8

Routenverfolgung zu 8.8.8.8 über maximal 30 Hops

  1     5 ms     4 ms     4 ms  172.18.40.1
  2     1 ms    <1 ms    <1 ms  172.18.40.2
  3     5 ms     4 ms     3 ms  172.18.40.1
  4     *        *        *     Zeitüberschreitung der Anforderung.
  5     *        *        *     Zeitüberschreitung der Anforderung.
  6     *        *        *     Zeitüberschreitung der Anforderung.
.......


Windows kommt also bis zum Hetzner Gateway, dann zur Opnsense, dann wieder zum Hetznergateway aber danach geht es nicht mehr weiter. Hat jemand von euch eine Idee woran das liegen kann?

Hab den Hetzner Support kontaktiert, der mir ,,nichts neues" gesagt hat: ,,...auf der Hetzner Oberfläche eine Route 0.0.0.0/0 auf die IP des Opnsense Server eintragen" (Punkt 14)
Hab jetzt schon stundenlang nach Fehlern oder Problemen gesucht und komme nicht weiter. Auf Hetzner Seite sind keine weiteren Firewalls etc. aktiv.

Hab mir eure obige Diskussion angesehen und dachte mir, es geht in die gleiche Richtung...


Habt ihr einen Tipp für mich?

Mir geht es leider genauso......

- opnSense ist erreichbar und kann pingen vom LAN und vom WAN
- Der Client bekommt per DHCP eine IP und kann pingen auf die opnSense bzw. die opnSense auf den Client
- Der Client kommt über ens10 nicht ins Internet

Hat das jemand zum Laufen bekommen???????

Grüße
Rafael

Hallo zusammen,

bei mir funktioniert es jetzt. Habe Firewall->NAT->Outbound auf Hybrid gestellt und eine Regel hinzugefügt gemäß

https://community.hetzner.com/tutorials/how-to-route-cloudserver-over-private-network-using-pfsense-and-hcnetworks

Interface: WAN
Address Family: IPv4+IPv6
Protocol: any
Source: 10.0.0.0/16
Destination: any
Translation -> Address: Interface Address

Ein zusätzliche Firewall rule war nicht nötig.

Grüße,
Andreas

Hallo,

ich bin aktuell auch dabei bei Hetzner eine private Network hinter einer OPNSense einzurichten.
Nach langem probieren hatte ich das mit dem Outbound Hybrid auch rausgefunden.

Das Problem welches ich jetzt habe ist, das die Clients (VMs) hinter der Firewall ins Internet über die OPNSense kommen, das passt alles, aber meine OpnSense selbst kann irgendwie nicht ins Internet übertagen. Äußert sich in folgenden Punkten

- Key Exchange bei Site-to-Site VPN klappt nicht
- Mobile VPN Einwahl per IPsec (IKEv2) klappt nicht
- Update Überprüfung scheitert mit Timeout beim Repository durchsuchen

ich habe das Gefühl das da eine Regel fehlt damit die Firewall selbst antworten senden kann bzw. ins
Internet kommt um nach Updates zu suchen.
Ich sehe im Log Einträge zu der Einwahl per VPN bzw. bei Site-to-Site das Pakete von der anderen Firewall
ankommen, aber die OPNsense scheint Ihre Pakete nicht gesendet zu bekommen.

Habt ihr hier einen Rat ? bzw. kennt Ihr das Problem

Vielen Danke und schöne Woche noch

Hallo,

eine Ergänzung zu meinem Problem mit der OPNSense bei Hetzner und dem Hetzner Network.

Die VM hinter der OPNSense kommt uneingschränkt ins internet, ohne Probleme.
Mache ich einen "traceroute" zum Beipsiel auf eine externe IP, sehe ich ordnungsgemäß den Ablauf.

IP der VM: 192.168.60.253/32 (per DHCP vom Hetzner Netzwerk)

1. Gateway vom Hetzner-Netzwerk (per Route), in dem Falle die 192.168.0.1 --> OK
2. danach die OPNSense (internes Interace), in dem Falle die 192.168.60.254 --> OK
3. danach das Gateway des WAN Interfaces der OPNSense, in dem Falle von Hetzner die 172.31.1.1 --> OK
4. externe IPs .....--> OK

nun das Problem, mache ich einen traceroute auf die gleiche IP über die Shell der OPNSense bleibt dieser
nach dem Gateway von Hetzner hängen, sprich Gateway 192.168.0.1 wird erriecht, danach "keine Antwort"

deshalb denke ich kann ich auch keine Updates über das Webinterface der OPNSense machen (timeout bzw. no route to host)

> und ich nehme stark an das das auch Problem ist warum ich keinen VPN Tunnel aufbauen kann, sowohl
Site-to-Site als auch mobile-VPN, da die OPNSense selbst keinerlei Pakete nach außen senden bzw. beantworten kann.

ich denke mir fehlt hier irgendwo eine Einstellungen oder eine Regel ?!?!? oder es hat etwas mit dem NAT Modus zu tun

Ich bitte hier noch einmal um einen Rat.

Danke



oh man, wer lesen kann ist klar im Vorteil!!!!

Vielen Dank an "simonszu"

Der Beitrag von Ihm war auch meine Lösung.

Die OPNSense hat beim mir das Gateway des LAN-Adapters (Hetzner-Netzwerk) als"Active" gesetzt.
Nachdem ich dieses deaktiviert habe und das WAN als "Active" und auch als UpStream gesetzt habe funktioniert nun alles.

System - Gateways - Single --> LAN Interface disbaled
System - Gateways - Single --> WAN Interface Upstream active

Alle meine Problem sind damit behoben und funktionieren nun. Das komische ist nur das bevor ich meine
Eisntellung gesetzt hatte, die Cleint VM dahinter normal ins Internet kam, naja wer weiß

VPN-Site-to-Site --> OK
VPN Mobile IKEv2 --> OK
Updates über Webinterface --> OK

Danke

Hat jemand von euch schon einmal eine Portweiterleitung mit dem Setup hinbekommen? Meine VM´s hinter der Opnsense VM haben Internet usw. nur ich kann einfach keine Portweiterleitung einrichten. Routing ist auch eingetragen.

Wo genau ist denn Dein Problem.
Port öffnen auf WAN Seite und dann ein Portforwarding machen von WAN Interface zum Zielhost

Ich versuche ssh freizugeben, damit ich die VM hinter der Opnsense konfigurieren kann, diese Port Forwarding Regel hab ich aktuell angelegt.
In der Live View sehe ich auch das die Regel bearbeitet wird. Aktuell vermute ich, dass es irgendwie am NAT oder an der Route liegt. Über die Diagnostics kann ich aber die VM pingen.

Hallo zusammen, ich bin auch gerade dabei mein Homelab zu Hetzner umzuziehen, und wie zu erwarten wenn ich hier schreibe, gibts ein Problem.
Und zwar kann mein LAN Client weder die OPNsense noch irgend eine externe Adresse erreichen.
Zuerst vorneweg, ich bin kein Netzwerkprofi, aber das ist auch nicht die erste OPNsense die ich installiere.

Derzeit habe ich 4 CPX11/21 am laufen, eine davon ist die OPNsense, und sobald alles funktioniert sollen die anderen die momentan im offenen Internet hängen hinter die Firewall.
Nachdem ich den Thread hier und die Hetzneranleitung zu pfsense, ein paar mal durchgelesen habe ist die Situation wie folgt:

Ich habe in der Hetzner Cloud Console ein Netzwerk mit den folgenden Werten (Standardeinstellungen) eingerichtet:
- Netz: 10.0.0.0/16
- Subnetz: 10.0.0.0/24
- Eine Route mit Ziel 0.0.0.0/0 und Gateway 10.0.0.2 (die LAN Adresse der OPNsense)

Weiterhin habe ich eine Debian VM eingerichtet die nur im LAN hängt, IP 10.0.0.4/32 und via "ip route add default via 10.0.0.1" eine Default Route eingerichtet.
Laut Hetzner Dokument brauche ich auf dem Client eine Route zum Hetzner Gateway, und auf dem Hetzner Gateway eine Route zur OPNsense. Ich denke das habe ich mit den beiden obigen Einstellungen erledigt?

Der Debian Client kann via ping alle IPs bis auf die OPNsense im 10.0.0.0 Netz erreichen. Da scheint also mit dem LAN Gateway noch was zu klemmen?
Traceroute zu einer beliebigen Adresse außerhalb geht genau bis zum 1. Hop, dem Hetzner Gateway auf 10.0.0.1, und dann ist Schluß. Das heißt dann wohl die Default Route wird korrekt genutzt, aber das Hetzner Gateway kann nicht mit der OPNsense kommunizieren.

Wenn ich auf der Console der OPNsense bin kann ich mit einem Ping sowohl im LAN als auch im WAN alle Adressen erreichen. DNS funktioniert auch. SSH über das WAN funktioniert auch. Interessanterweise komme ich mit einem ping auch an die 10.0.0.4, den LAN Client, der seinerseits die OPNsense nicht erreicht?

Das LAN Routing auf der OPNsense scheinen mir auch zu passen?
root@OPNsense:~ # netstat -rn
Routing tables

Internet:
Destination        Gateway            Flags     Netif Expire
default            172.31.1.1         UGS      vtnet0
10.0.0.1           link#2             UHS      vtnet1
10.0.0.2           link#2             UH          lo0
...

Nachdem ich hier feststecke habe ich versucht sämtliche Vorschläge hier im Thread nachzuvollziehen.

1. Nach der Basisinstallation habe ich mir, wie in Antwort 2 vorgeschlagen, gleich eine Regel hinzugefügt um (ausschließlich) meinem Rechner WAN Zugriff auf das Webinterface zu geben:
Firewall/Rules/WAN:
Protocol    Source      Port    Destination    Port    Gateway    Schedule       Description    
IPv4*       Meine IP  *    This Firewall    *        *            *               Access for just my IP to the WebUI
Funktioniert!

2. Weiterhin wird hier vorgeschlagen einen Alias anzulegen. Habe ich gemacht:
Firewall/Aliases:
Enabled Name                   Type            Description   Content           Loaded#
x           HetznerNetAlias     Network(s)                10.0.0.0/24      1   
Wobei mir nicht klar ist wo ich den Alias dann benutzen muss?

3. Danach habe ich mich an den Vorschlag von JeGr in #13 gehalten und auf der OPNsense das LAN Interface via DHCP anstatt statisch eingerichtet, sowie eine statische Route zu 10.0.0.0/24 eingerichtet.
System/Routes/Configuration/
Disabled  Network        Gateway                 
         10.0.0.0/24     LAN_DHCP - 10.0.0.1       

Was mir nicht klar ist ist die Aussage von JeGr hier:
<Man muss lediglich aufpassen, dass man auf dem LAN dann nicht versehentlich "LAN network" verwendet oder verwenden will, da das dann /32 wäre und nichts bringt. Man muss also mit dem Alias 10.0.0.0/24 arbeiten das man sich manuell anlegt>>
Wo muß ich mit dem Alias arbeiten?

4. Dann habe ich noch wie in #15 vorgestellt das LAN Standardgateway deaktivert
System/Gateways/Single das LAN_DHCP Gateway deaktiviert, die beiden WAN_DHCP und WAN_DHCP6 waren schon auf active geschaltet, und das WAN_DHCP als Upstream eingestellt.
Name                   Interface       Protocol     Priority                    Gateway            Status   Description
WAN_DHCP (active)    WAN        IPv4        254 (upstream)    172.31.1.1    Online   Interface WAN_DHCP Gateway    
WAN_DHCP6 (active)    WAN        IPv6        254 (upstream)              Online   Interface WAN_DHCP6 Gateway
LAN_DHCP            LAN        IPv4        254            10.0.0.1    Pending  Interface LAN_DHCP Gateway <- Ausgegraut/Deaktiviert

Komischerweise ist LAN_DHCP zwar ausgegraut, aber der Status bleibt selbst nach einem Reboot auf Pending

5. Dann gab's in #18 noch den Vorschlag in Firewall/NAT/Outbound auf Hybrid zu stellen, sowie die Regel unten anzulegen
Interface    Source            Source Port    Destination    Destination Port    NAT Address        NAT Port    Static Port
WAN        10.0.0.0/16     *                *                *                    Interface address    *            NO

Sollte hier als Source eventuell der Alias stehen? Und warum /16 und nicht /24? ich habs ausprobiert, hat nichts genutzt.

Und jetzt bin ich mit meiner Weisheit am Ende, eventuell klemmts ja gar nicht an der OPNsense sondern dass das Hetzner Gateway nicht funktioniert, aber da gibt es eigentlich außer den 3 Punkten ganz am Anfang nichts einzustellen.
Fällt eventuell jemandem hierzu was ein?

Vielen Dank schon mal...