FHEM hinter Proxy

Begonnen von Engel, 09 November 2016, 22:06:28

Vorheriges Thema - Nächstes Thema

rudolfkoenig

Zitatweil ich einen Proxy dazwischen habe und das update aus fhem dann nicht funktioniert.
Inzwischen sollte das kein Problem sein: https://fhem.de/commandref.html#proxy

koef2

#46
Hallo zusammen,

Problem gelöst. Lösung aus dem Kopf

Ich hatte die svn Arbeitskopie auf dem Raspi zerschossen. Hatte nicht aufgepasst, wenn man lokal editiert, dass dann Konflikte entstehen und die in svn aufgelöst werden müssen.

service fhem stop

Eintrag zu fhem aus /var/lib/dpkg/status Einträge zu fhem löschen

Dazu alles neu installiert gemäß fhem.de mittels Einträgen in /etc/apt/sourceslist, apt-get update, apt-get install fhem

Dann über svn eingespielt und update (siehe fhem.de).

Rechte user gesetzt auf fhem:dialout

attr global proxy gesetzt

update check ging

Update funktioniert auch.

Viele Grüße
Kai
Koef


koef2

Guten MOrgen,

Nachtrag: wenn ein Proxy eingetragen ist unter "global" und "fhem2fhem" genutzt wird und diese im gleichen LAN vorhandenen Rechner aber keinen Proxy erfordern, bitte auf dem Rechner, auf dem fhem2fhem konfiguriert wird, den Remote-Rechner in "proxyExclude" angeben. Sonst versucht fhem wohl, auch dafür den angegeben Proxy zu nutzen. Ich habe es bei beiden Rechnern angegeben.

FHEM ist eine tolle Software und danke für die Integration der Proxyfunktion.

Viele Grüße
Kai
Koef2

TL

Moin!

Ich wollte mich gern bei allen Beteiligten, allen voran natürlich Rudi, für die Implementierung des Proxys bedanken! Endlich geht bei mir Update und Pushover und mal sehen, was mir noch einfällt. Was lange währt...  :)

Eine Frage habe ich aber noch: wie ist die genaue Syntax für das ProxyExclude-Attribut? In der Beschreibung steht "Regexp", aber es gibt leider keine Beispiele. Ich habe z.B. "..., 192.168.1.0, ..." und "..., *.test.intranet, ..." ausprobiert, aber das scheint nicht zu funktionieren. Mit IP-Adressen und Full-Qulified-Hostnames funktioniert es wunderbar, aber die Liste kann beliebig lang werden und muß vor allem eben auch gepflegt werden. Ich würde gern das ganze lokale Class-C Netz komplett vom Proxy ausnehmen. Hat jemand einen Tip für mich, wie der entsprechende Eintrag aussehen müsste?

Viele Grüße,
  TL
Einen Pi, sie zu knechten, sie alle zu finden,
ins FHEM zu treiben und ewig zu binden.

rudolfkoenig

ZitatIch würde gern das ganze lokale Class-C Netz komplett vom Proxy ausnehmen. Hat jemand einen Tip für mich, wie der entsprechende Eintrag aussehen müsste?

Die Pruefung gegen proxyExclude passiert vor der Namensaufloesung, d.h. der Regexp wird gegen den String geprueft, was man HttpUtils als host uebergeben hat. Falls man sich auf IP-Adressen beschraenkt, dann waere fuer den 192.168.1.255-er C-Netz
attr global proxyExclude ^192.168.*
einzusetzen (ja, etwas ungenau, sollte aber tun). Ein Regexp fuer alle "Intranet" Adressen (auch IPv6) findet man bei der Pruefung von allowedFrom:
^(::ffff:)?(127|192.168|172.(1[6-9]|2[0-9]|3[01])|10|169.254)\\.|^(f[cde]|::1)
Wenn man in FHEM Hostnamen in Klartext verwendet, dann muessen diese zusaetzlich spezifiziert werden.

TL

#50
Moin!

Zitat von: rudolfkoenig am 09 Oktober 2017, 19:16:46
Die Pruefung gegen proxyExclude passiert vor der Namensaufloesung, d.h. der Regexp wird gegen den String geprueft, was man HttpUtils als host uebergeben hat. Falls man sich auf IP-Adressen beschraenkt, dann waere fuer den 192.168.1.255-er C-Netz
attr global proxyExclude ^192.168.*
einzusetzen (ja, etwas ungenau, sollte aber tun).
...

Ich glaube, der .* am Ende ist nicht gut...

Ich habe jetzt folgenden String bei mir drin, das funktioniert bei mir anscheinend:

attr global proxyExclude ^192\.168\.1\.*|.*\.test\.intranet$

Viele Grüße
  Thomas
Einen Pi, sie zu knechten, sie alle zu finden,
ins FHEM zu treiben und ewig zu binden.

rudolfkoenig

ZitatIch glaube, der .* am Ende ist nicht gut...
Wie geschrieben, etwas ungenau, weil es auch 192.16890.1.1 matcht, aber das sollte selten ein Problem sein.