Apache2 als Reverse Proxy für Home Assistent: Unterschied zwischen den Versionen
Aus znilwiki
BLinz (Diskussion | Beiträge) Die Seite wurde neu angelegt: „<u>'''Changelog:''</u><br> * 23.03.2025 erste Version ---- ==Vorwort== Da ich mir das wieder aus mehreren Quellen zusammensuchen musste bis es funktionierte, habe ich eine eigen Anleitung dafür geschrieben.<br> ---- ==Anpassungen an Home Assistent== Die {{code|configuration.yaml}} muss bearbeitet werden, und zwar muss man folgenden Abschnitt hinzufügen:<br> <source lang="yaml"> # Für Reverse Proxy http: use_x_forwarded_for: True trusted_proxies:…“ |
BLinz (Diskussion | Beiträge) KKeine Bearbeitungszusammenfassung |
||
(4 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
<u>'''Changelog:''</u><br> | <u>'''Changelog:'''</u><br> | ||
* 23.03.2025 erste Version | * 23.03.2025 erste Version | ||
* 23.05.2025 alternative Version hinzugefügt | |||
---- | ---- | ||
==Vorwort== | ==Vorwort== | ||
Zeile 29: | Zeile 30: | ||
<br> | <br> | ||
---- | ---- | ||
==Einstellung in der .vhost für Apache== | ==Einstellung in der .vhost für Apache - normale Version== | ||
Im Apache müssen die für die Proxy-Funktion notwendigen Module aktiviert sein:<br> | Im Apache müssen die für die Proxy-Funktion notwendigen Module aktiviert sein:<br> | ||
a2enmod proxy_http proxy_wstunnel | a2enmod proxy_http proxy_wstunnel | ||
Zeile 50: | Zeile 51: | ||
Die {{code|192.168.0.8}} müsst Ihr überall durch die IP eures Home Assistent System ersetzen.<br> | Die {{code|192.168.0.8}} müsst Ihr überall durch die IP eures Home Assistent System ersetzen.<br> | ||
<br> | <br> | ||
Das sieht zumindest zum Teil doppelt gemoppelt aus, funktioniert aber.<br> | |||
<br> | <br> | ||
---- | ---- | ||
==Einstellung in der .vhost für Apache - neue Version== | |||
Ab Apache2 Version 2.4.47 geht es auch einfacher!<br> | |||
In der {{code|.vhost}} Datei der Webseite müsst Ihr folgendes ergänzen:<br> | |||
<source lang="apache"> | |||
ProxyPreserveHost On | |||
ProxyRequests off | |||
ProxyPass / http://192.168.0.8:8123/ upgrade=websocket | |||
ProxyPassReverse / http://192.168.0.8:8123/ | |||
</source> | |||
Die {{code|192.168.0.8}} müsst Ihr überall durch die IP eures Home Assistent System ersetzen.<br> | |||
<br> | |||
Die Vorrausetzungen müssen natürlich wie in der anderen Version installiert sein.<br> | |||
<br> | |||
---- | |||
==Kommentare== | ==Kommentare== | ||
<comments /> | <comments /> |
Aktuelle Version vom 23. Mai 2025, 15:10 Uhr
Changelog:
- 23.03.2025 erste Version
- 23.05.2025 alternative Version hinzugefügt
Vorwort
Da ich mir das wieder aus mehreren Quellen zusammensuchen musste bis es funktionierte, habe ich eine eigen Anleitung dafür geschrieben.
Anpassungen an Home Assistent
Die configuration.yaml muss bearbeitet werden, und zwar muss man folgenden Abschnitt hinzufügen:
# Für Reverse Proxy
http:
use_x_forwarded_for: True
trusted_proxies:
- 192.168.1.2
- 192.168.0.0/22
- 10.42.42.0/24
- 127.0.0.1
ip_ban_enabled: True
login_attempts_threshold: 5
Ihr müsst folgendes Anpassen:
192.168.1.2 ist die IP-Adresse meines Reverse Proxy 192.168.0.0/22 ist mein Heimnetzwerk #1 10.42.42.0/24 ist mein Heimnetzwerk #2 127.0.0.1 ist das Home Assistent System selbst ip_ban_enabled: True blockiert Quell IP-Adressen nach Anmeldefehlversuchen login_attempts_threshold: 5 Anzahl der Fehlversuche die zur Blockade führen
Einstellung in der .vhost für Apache - normale Version
Im Apache müssen die für die Proxy-Funktion notwendigen Module aktiviert sein:
a2enmod proxy_http proxy_wstunnel systemctl restart apache2.service
In der .vhost Datei der Webseite müsst Ihr folgendes ergänzen:
ProxyPreserveHost On
ProxyRequests off
ProxyPass /api/websocket ws://192.168.0.8:8123/api/websocket
ProxyPassReverse /api/websocket ws://192.168.0.8:8123/api/websocket
ProxyPass / http://192.168.0.8:8123/
ProxyPassReverse / http://192.168.0.8:8123/
RewriteEngine on
RewriteCond %{HTTP:Upgrade} =websocket [NC]
RewriteRule /(.*) ws://192.168.0.8:8123/$1 [P,L]
RewriteCond %{HTTP:Upgrade} !=websocket [NC]
RewriteRule /(.*) http://192.168.0.8:8123/$1 [P,L]
Die 192.168.0.8 müsst Ihr überall durch die IP eures Home Assistent System ersetzen.
Das sieht zumindest zum Teil doppelt gemoppelt aus, funktioniert aber.
Einstellung in der .vhost für Apache - neue Version
Ab Apache2 Version 2.4.47 geht es auch einfacher!
In der .vhost Datei der Webseite müsst Ihr folgendes ergänzen:
ProxyPreserveHost On
ProxyRequests off
ProxyPass / http://192.168.0.8:8123/ upgrade=websocket
ProxyPassReverse / http://192.168.0.8:8123/
Die 192.168.0.8 müsst Ihr überall durch die IP eures Home Assistent System ersetzen.
Die Vorrausetzungen müssen natürlich wie in der anderen Version installiert sein.