Metainformationen zur Seite
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
reverse_proxy_opnsense [2020/05/05 11:42] – [Verschlüsselung optimieren] cb | reverse_proxy_opnsense [2020/05/10 09:52] (aktuell) – [Quellen & Links] cb | ||
---|---|---|---|
Zeile 3: | Zeile 3: | ||
Ich möchte ((Der Wechsel ist u.a. ein Gebot der Vernunft, da z.B. die Weiterentwicklung der von mir verwendeten und geschätzten Shorewall fraglich ist. Bei der Konfiguration bin ich wegen des eher seltenen Aufbaus auf mich alleine gestellt - keine Firma würde das supporten. Da ist OPNsense erfolgversprechender.)) von der Firewallbasis Debian mit Shorewall wechseln zu **OPNsense**. Dazu gehört auch die Funktion des Reverse-Proxys am Eingang des Netzes. Dieser übernimmt auch weitere Aufgaben wie Dynamisches DNS, SSL-Offloading, | Ich möchte ((Der Wechsel ist u.a. ein Gebot der Vernunft, da z.B. die Weiterentwicklung der von mir verwendeten und geschätzten Shorewall fraglich ist. Bei der Konfiguration bin ich wegen des eher seltenen Aufbaus auf mich alleine gestellt - keine Firma würde das supporten. Da ist OPNsense erfolgversprechender.)) von der Firewallbasis Debian mit Shorewall wechseln zu **OPNsense**. Dazu gehört auch die Funktion des Reverse-Proxys am Eingang des Netzes. Dieser übernimmt auch weitere Aufgaben wie Dynamisches DNS, SSL-Offloading, | ||
+ | Auch eine Schule kann einen Reverse-Proxy gut gebrauche, da man doch mit der Zeit den einen oder anderen Webdienst auch nach außen verfügbar machen will. Mit ein wenig Aufwand erhält man dann aber mit OPNsense ein hervorragendes Ergebnis. | ||
===Übersicht zum Aufbau des Netzes=== | ===Übersicht zum Aufbau des Netzes=== | ||
Zeile 9: | Zeile 10: | ||
Die Debian-Web-Server, | Die Debian-Web-Server, | ||
Der benachbarte AdminPC kann irgendein Betriebssystem haben - solange ein Browser zur Firewallsteuerung läuft. \\ | Der benachbarte AdminPC kann irgendein Betriebssystem haben - solange ein Browser zur Firewallsteuerung läuft. \\ | ||
- | Die roten Netze existieren alle nur innerhalb des KVM-Systems als virtuelle Netze (ohne DHCP oder Hostverbindung). Von oben sind es Schulnetz, Demonetz und das winzige Management-Netz. | + | Die roten Netze existieren |
- | So erfolgt der Zugriff aus dem Internet: Vom Clients ist zuerst die Fritzbox zu " | + | ==Uns so erfolgt |
+ | Vom Clients ist zuerst die Fritzbox zu " | ||
===Installation=== | ===Installation=== | ||
Plane das Netzwerk und die Serveradressen! Die restlichen Maschinen außer OPNsense können bereits installiert sein, man kann sie ja dann in den virtuellen Netzen verschieben. | Plane das Netzwerk und die Serveradressen! Die restlichen Maschinen außer OPNsense können bereits installiert sein, man kann sie ja dann in den virtuellen Netzen verschieben. | ||
- | IP-Adressen innerhalb des KVM-Servers: | + | Mögliche |
^ Maschine | ^ Maschine | ||
| OPNsense | | OPNsense | ||
Zeile 32: | Zeile 34: | ||
==OPNsense: Installation und erste Konfiguration== | ==OPNsense: Installation und erste Konfiguration== | ||
- | Stand: April 2020 | + | (Stand: April 2020) |
* Konfigurieren der virtuellen Netze | * Konfigurieren der virtuellen Netze | ||
* OPNsense installieren als FreeBSD 11.2 auf KVM, | * OPNsense installieren als FreeBSD 11.2 auf KVM, | ||
Zeile 88: | Zeile 90: | ||
* Die Verschlüsselung beim Public-Service greift auf das von Letsencrypt gelieferte Zertifikat zurück - sobald es da ist. Man kann den Public-Service für Port 443 also erst danach aktivieren! | * Die Verschlüsselung beim Public-Service greift auf das von Letsencrypt gelieferte Zertifikat zurück - sobald es da ist. Man kann den Public-Service für Port 443 also erst danach aktivieren! | ||
- | Unnötig zu sagen, dass HAProxy natürlich deutlich komplexer ist, als hier dargestellt. auch Backend-Server | + | Unnötig zu sagen, dass HAProxy natürlich deutlich komplexer ist, als hier dargestellt. |
Wenn es nicht funktioniert: | Wenn es nicht funktioniert: | ||
Zeile 110: | Zeile 112: | ||
* Enable HTTP/2 | * Enable HTTP/2 | ||
- | Schließlich kann man noch in dem DNS-Server der Domain einen CAA-Eintrag machen: | + | Schließlich kann man noch in dem DNS-Server der Domain |
example.org. CAA 128 issue " | example.org. CAA 128 issue " | ||
Zeile 116: | Zeile 118: | ||
===Fehler, die mir unterkamen und ihre Ursachen=== | ===Fehler, die mir unterkamen und ihre Ursachen=== | ||
* Letsencrypt kann das Zertifikat nicht aktualisieren | * Letsencrypt kann das Zertifikat nicht aktualisieren | ||
- | * -> überprüfe, | + | * -> überprüfe, |
* -> findet für diese URL eine Weiterleitung zu https statt, so ist entweder | * -> findet für diese URL eine Weiterleitung zu https statt, so ist entweder | ||
* eine solche im HAProxy eingerichtet worden (dann ergänze die Rule so, dass beim acme-challenge-Verfahren nicht weitergeleitet wird) oder | * eine solche im HAProxy eingerichtet worden (dann ergänze die Rule so, dass beim acme-challenge-Verfahren nicht weitergeleitet wird) oder | ||
* oben der Haken bei " | * oben der Haken bei " | ||
- | * HAProxy lässt sich nicht starten | + | * HAProxy lässt sich nicht starten |
* -> Teste die Konfiguration mit dem Button | * -> Teste die Konfiguration mit dem Button | ||
* -> Sind bei abgeschaltetem HAProxy die Ports 80 und 443 wirklich frei? D.h. nicht erreichbar? | * -> Sind bei abgeschaltetem HAProxy die Ports 80 und 443 wirklich frei? D.h. nicht erreichbar? | ||
Zeile 129: | Zeile 131: | ||
* Kein HTTPS-Zugriff mit Firefox möglich, mit anderen Browsern klappt es: | * Kein HTTPS-Zugriff mit Firefox möglich, mit anderen Browsern klappt es: | ||
* -> In Letsencrypt OCSP Must Staple angeklickt? Sonst eine gute Idee, wird aber von HAProxy nicht unterstützt und Firefox beschwert sich zu Recht. Also Haken weg, Zertifikat neu ausstellen lassen, fertig. | * -> In Letsencrypt OCSP Must Staple angeklickt? Sonst eine gute Idee, wird aber von HAProxy nicht unterstützt und Firefox beschwert sich zu Recht. Also Haken weg, Zertifikat neu ausstellen lassen, fertig. | ||
+ | ===Mozilla SSL-Konfiguration=== | ||
+ | * [[https:// | ||
+ | * Liefert eine Liste empfehlenswerter Verschlüsselungstechniken (Cipher). | ||
+ | * " | ||
+ | * Man sollte die Einstellungen z.B. jährlich aktualisieren... | ||
+ | * Derzeit (April 2020) lautet sie: | ||
+ | |||
+ | | ||
+ | |||
===Quellen & Links=== | ===Quellen & Links=== | ||
Deutsche Anleitungen: | Deutsche Anleitungen: | ||
Zeile 139: | Zeile 150: | ||
* Patric Green: [[https:// | * Patric Green: [[https:// | ||
- | Mozilla SSL-Konfiguration: | ||
- | * [[https:// | ||
- | * Liefert eine Liste empfehlenswerter Verschlüsselungstechniken (Cipher). | ||
- | * " | ||
- | * Man sollte die Einstellungen z.B. jährlich aktualisieren... | ||
- | * Derzeit (April 2020) lautet sie: | ||
- | | ||
{{tag> | {{tag> |