brain/03 Bereiche/Heimnetz & Home Assistant/OpnSense/Full Cert Chain in OpnSense...

84 lines
2.6 KiB
Markdown
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

Der Test [SSL Server Test: kbha.straso.com (Powered by Qualys SSL Labs)](https://www.ssllabs.com/ssltest/analyze.html?d=kbha.straso.com) lieferte Grade B, bei der Server nicht komplette Zertifikatskette ausgeliefert hatte.
Zertifikatsdateien liegen auf OneDrive: C:\Users\d-chrka\OneDrive\Backup\straso_certificate
### 🔧 Vorgehen zur Behebung auf OPNsense mit HAProxy
1. **Komplette Zertifikatskette beschaffen**
- Bei deiner Zertifizierungsstelle (z. B. Sectigo, DigiCert, GlobalSign, etc.) bekommst du **2 Dateien**:
- Dein Domain-Zertifikat (z. B. `example.com.crt`)
- Intermediate(s), z. B. `CA-Bundle.crt` oder mehrere einzelne `.crt`
- Falls du Lets Encrypt nutzt:
- `fullchain.pem` enthält bereits **Domain-Zertifikat + Intermediate(s)**
- `cert.pem` enthält **nur** das Domain-Zertifikat
→ Du musst **immer** `fullchain.pem` **nehmen**, nicht `cert.pem`.
---
2. **Kette zusammensetzen (falls nötig)**
Falls dein Anbieter nur getrennte Dateien liefert:
```
cat example.com.crt intermediate1.crt intermediate2.crt > fullchain.pem
```
(Reihenfolge wichtig: **zuerst dein Domain-Zertifikat, dann die Intermediates**.)
---
3. **In OPNsense importieren**
- Gehe zu **System → Trust → Authorities**
→ Importiere die Intermediates, falls sie nicht schon da sind.
- Gehe zu **System → Trust → Certificates**
→ Lade dein Zertifikat **inklusive Kette (fullchain.pem)** hoch.
- Falls du den privaten Schlüssel separat hast: kombiniere beim Upload `privkey.pem` + `fullchain.pem`.
---
4. **HAProxy anpassen**
- In der OPNsense-HAProxy-Config **nicht** das einfache Zertifikat wählen, sondern die Variante, die **mit Chain** importiert wurde.
- Danach HAProxy neu starten.
---
5. **Testen**
- Prüfe lokal mit:
```
openssl s_client -connect deine-domain.de:443 -servername deine-domain.de
```
→ Am Ende sollte **"Verify return code: 0 (ok)"** stehen, und du solltest die **vollständige Zertifikatskette** sehen.
- Danach erneut mit SSL Labs Test checken.
---
### ✅ Für Grade A noch beachten
- TLS 1.0 und 1.1 abschalten (nur TLS 1.2 & 1.3 aktiv lassen).
- Sichere Ciphers wählen (z. B. Mozilla SSL Config Generator).
- HTTP → HTTPS Weiterleitung einrichten.
- OCSP-Stapling aktivieren (optional, aber bringt Punkte).
- HSTS-Header setzen (`Strict-Transport-Security`).