OPNsense mit Caddy, VLans für 3CX, Nextcloud, Rustdesk, usw. sinnvoll und sicher

Started by spooner.arthur, April 02, 2026, 05:43:56 PM

Previous topic - Next topic
Hallo Zusammen,
bisher ist nur die 3CX direkt von außen, übers Internet, erreichbar.
Alle anderen Dienste sind nur über VPN zugänglich.
Jetzt stehen aber ein paar Umstellungen an und es gibt Überlegungen verschiedene Dienste direkt online verfügbar zu machen.
Es gibt eine öffentliche externe IP-Adresse.

Jetzt zum möglichen Szenario:
Auf der OPNsense den Caddy installieren, als reverse Proxy für den Zugriff auf die Nextcloud und eventuell weitere Dienste einrichten.
Für jeden Dienst ein eigenes Vlan anlegen, eins für die Telefonie (bereits vorhanden), eins für die Nextcloud, Mailcow, usw.

Macht das Sinn?
Und noch viel wichtiger, ist es dann überhaupt sicherer?
Was meint ihr?

Viele Grüße
Arthur

Ach so, noch ein Hinweis:
alle Server / Dienste laufen auf einem Proxmox Host

Quote from: spooner.arthur on April 02, 2026, 05:43:56 PMMacht das Sinn?

Wenn die Dienste von außen erreichbar sein sollen, dann sicherlich. Ich nutze den HAProxy in der OPNsense dafür. Der regelt den Zugriff auf die intern definierten Dienste.

Quote from: spooner.arthur on April 02, 2026, 05:43:56 PMUnd noch viel wichtiger, ist es dann überhaupt sicherer?

"Sicherer" als was? VPN? Nein.

Quote from: spooner.arthur on April 02, 2026, 05:43:56 PMJetzt stehen aber ein paar Umstellungen an und es gibt Überlegungen verschiedene Dienste direkt online verfügbar zu machen.
Überlegungen?
Die Frage sollte sein, ob es eine Notwendigkeit dafür gibt.

Falls ja, ist Segmentieren ein guter Weg, um das Angriffspotential zu verringern, weil es die VMs von anderen eventuell kompromittierten je nach FW-Regeln schützen kann.
Also Nextcloud und Mailcow in eigene Netzwerksegmente zu setzen, halte ich schon für sinnvoll.

Aber inwiefern dir hierbei Caddy oder ein anderer Reverse-Proxy helfen kann, ist mit nicht klar.
Caddy kann eine externe IP:Port-Kombination auf unterschiedliche interne weiterleiten, entweder auf Basis von HTTP-Analysen oder SNI, und ggf. kann er Zugriffe auch einschränken. Aber bei dir nutzt anscheinend ohnehin jeder Service eine anderen interne IP.
Einzig die Anzahl der Verbindungen auf die Backends kann er einschränken, um sie vor DDoS-Angriffen zu schützen.

Quote from: viragomann on Today at 03:40:30 PMAber inwiefern dir hierbei Caddy oder ein anderer Reverse-Proxy helfen kann, ist mit nicht klar.
Nun ja, der sorgt dafür, dass die internen Dienste (unabhängig von deren IP / Port) über die externe IP basierend auf dem DNS-Namen erreichbar sind. Das ist bei mir die Aufgabe des HA-Proxy. Intern werden die Dienste über den DNS-Server der OPNSense mit ihren privaten IPs aufgelöst und extern zeigen deren DNS-Namen auf die WAN-IP, wo der HA-Proxy dann das weiterleiten an die interne Adresse übernimmt.

Quote from: ATL on Today at 05:02:19 PMNun ja, der sorgt dafür, dass die internen Dienste (unabhängig von deren IP / Port) über die externe IP basierend auf dem DNS-Namen erreichbar sind.
Und eben die Sinnhaftigkeit dessen habe ich hinterfragt.

Sämtliche oben aufgezählten Dienste verwenden standardmäßig verschiedene und eindeutige Ports. Je nach Client braucht der nicht angegeben zu werden oder doch.
Wird er nicht angegeben könnte der konkrete Service über SNI oder HTTP-Header ermittelt werden. Hab ich auch oben geschrieben, damit der TO selbst beurteilen kann, ob das für ihn Sinn macht.
Für nur einen Webserver, einen Mailserver und 3CX sehe ich aber keine unbedingte Notwendigkeit.

Quote from: ATL on Today at 05:02:19 PMIntern werden die Dienste über den DNS-Server der OPNSense mit ihren privaten IPs aufgelöst und extern zeigen deren DNS-Namen auf die WAN-IP, wo der HA-Proxy dann das weiterleiten an die interne Adresse übernimmt.
Pakete weiterleiten kann OPNsense auch nativ, und für mehr verwendest du HAproxy offenbar nicht, weil interne Verbindungen umgehen ihn ja. So hat er nur für externe Verbindungen Nutzen.
Ich vermute aber, du hast mehrere Webserver auf verschiedenen internen Hosts. Dann macht ist ein Reverse-Proxy natürlich eine Lösung.

Du könntest in Erwägung ziehen, die betroffenen Hosts aus dem internen DNS raus zu schmeißen und HAproxy auch für interne Verbindungen zu nutzen. So kommst du bspw. in den Genuss der öffentlichen SSL Zertifikate, ohne sie auf das Backend kopieren zu müssen.
Auch weitere Funktionen (bspw. URL-Rewrites) könnte HAproxy dann übernehmen, die gleichermaßen für externe und interne Verbindungen gelten. Auch Filter kann man einbauen, die bspw. Zugriff auf bestimmte Zielpfade nur internen Quellen erlauben.
Aber das sollte in diesem Thread eigentlich nicht behandelt werden.

Vielen Dank für die Rückmeldungen.

Also es ist außer Frage, das der Zugriff über VPN der sicherste Weg ist.

Mir ging es darum ob die verschiedenen VLans das ganze Konstrukt sicherer macht.

Also, es gibt zwei Proxmox Hosts im Cluster und darauf laufen mehrere Server, Docker Container.

Der Reverse Proxy soll einfach auch noch eine zusätzliche Sicherheit bieten und er könnte auf Grund der nur einen vorhanden externen IP-Adresse eventuell auch noch das Routing übernehmen.

Ist der HAProxy besser als der Caddy?
Sollte ich mir diesen mal anschauen?

Klar, am besten wäre es, wenn der Zugriff von intern und extern vollständig identisch ist, also gleiche externe URL und Port.