Hallo
Ich hab ein Problem mit dem Update check per ssh comando, auch nach einem FHEM update (heute) wird eine differenz angezeigt, in FHEMWEB nicht.
Ich bekomme folgendes zurück.
wget -qO - http://fhem.de/fhemupdate4/svn/controls_fhem.txt | cat - FHEM/controls_fhem.txt | egrep -v 'REV|CHANGED|commandref|firmware|pgm2|lib|gplot|fhemSVG' | sort | uniq -u | cut -d "/" -f 2 | sort | uniq
00_MQTT.pm
00_MYSENSORS.pm
00_ZWDongle.pm
01_FHEMWEB.pm
10_CUL_HM.pm
10_FBDECT.pm
10_GFPROBT.pm
10_MAX.pm
10_MQTT2_DEVICE.pm
10_ZWave.pm
14_CUL_MAX.pm
32_withings.pm
38_netatmo.pm
39_gassistant.pm
44_TEK603.pm
46_TeslaPowerwall2AC.pm
49_SSCam.pm
57_SSCal.pm
58_HVAC_DaikinAC.pm
60_Watches.pm
66_EseraDimmer.pm
66_EseraMulti.pm
66_EseraOneWire.pm
70_BRAVIA.pm
70_SolarEdgeAPI.pm
72_FRITZBOX.pm
72_XiaomiDevice.pm
73_AutoShuttersControl.pm
76_SMAPortal.pm
82_LGTV_WebOS.pm
88_HMCCURPC.pm
93_DbLog.pm
94_PWM.pm
95_YAAHM.pm
98_ArduCounter.pm
98_DOIF.pm
98_DSBMobile.pm
98_freezemon.pm
98_HMinfo.pm
98_monitoring.pm
98_SVG.pm
98_vitoconnect.pm
98_WeekdayTimer.pm
DevIo.pm
fhem.pl
HttpUtils.pm
MAINTAINER.txt
Sollten diese files nicht identisch sein?
https://fhem.de/fhemupdate/controls_fhem.txt (https://fhem.de/fhemupdate/controls_fhem.txt)
http://fhem.de/fhemupdate4/svn/controls_fhem.txt (http://fhem.de/fhemupdate4/svn/controls_fhem.txt)
Grüße
Heinz
ZitatSollten diese files nicht identisch sein?
https://fhem.de/fhemupdate/controls_fhem.txt
http://fhem.de/fhemupdate4/svn/controls_fhem.txt
Seit ca 3 Wochen (Verteilung des lib Verzeichnisses ueber update) wird fhemupdate4/svn/controls_fhem.txt (verwendet von FHEM-update bis FHEM 5.5) nicht mehr aktualisiert.
Siehe auch https://forum.fhem.de/index.php?topic=111125
Würde es gehen wenn ich die Seite mit wget laden könnte?
https://fhem.de/fhemupdate/controls_fhem.txt
Das geht leider nicht, warum ist das so?
wget -O - https://fhem.de/fhemupdate/controls_fhem.txt
--2020-06-11 11:46:40-- https://fhem.de/fhemupdate/controls_fhem.txt
Auflösen des Hostnamens »fhem.de (fhem.de)« ... 2a01:4f8:10a:806::2, 88.99.31.202
Verbindungsaufbau zu fhem.de (fhem.de)|2a01:4f8:10a:806::2|:443 ... verbunden.
HTTP-Anforderung gesendet, auf Antwort wird gewartet ... 403 Forbidden
2020-06-11 11:46:40 FEHLER 403: Forbidden.
Grüße
Heinz
Anscheinend geht es nicht weil man die Seite nicht downloaden sondern nur anzeigen kann. Probier mal mit curl damit geht es.
Zitat von: CoolTux am 11 Juni 2020, 11:56:18
Anscheinend geht es nicht weil man die Seite nicht downloaden sondern nur anzeigen kann. Probier mal mit curl damit geht es.
Also entweder hat das just jemand geändert, oder irgendwas ist bei heinzfo kaputt:
$ wget -O /dev/null https://fhem.de/fhemupdate/controls_fhem.txt
Auflösen des Hostnamens fhem.de (fhem.de)... 88.99.31.202, 2a01:4f8:10a:806::2
Verbindungsaufbau zu fhem.de (fhem.de)|88.99.31.202|:443 ... verbunden.
HTTP-Anforderung gesendet, auf Antwort wird gewartet ...
HTTP/1.1 200 OK
[...]
IPv6-Problem vielleicht?
wget -6 -O /dev/null https://fhem.de/fhemupdate/controls_fhem.txt
WARNUNG: Zeitstempel funktionieren nicht in Kombination mit der Option
»-O«. Genauere Erläuterungen finden Sie im Handbuch.
--2020-06-11 12:01:11-- https://fhem.de/fhemupdate/controls_fhem.txt
Auflösen des Hostnamens fhem.de (fhem.de)... 2a01:4f8:10a:806::2
Verbindungsaufbau zu fhem.de (fhem.de)|2a01:4f8:10a:806::2|:443 ... verbunden.
HTTP-Anforderung gesendet, auf Antwort wird gewartet ...
HTTP/1.1 200 OK
[...]
11:55 marko@notebook-ac tmp) > wget -O /dev/null https://fhem.de/fhemupdate/controls_fhem.txt
--2020-06-11 12:00:05-- https://fhem.de/fhemupdate/controls_fhem.txt
Auflösen des Hostnamens fhem.de (fhem.de)... 88.99.31.202, 2a01:4f8:10a:806::2
Verbindungsaufbau zu fhem.de (fhem.de)|88.99.31.202|:443 ... verbunden.
HTTP-Anforderung gesendet, auf Antwort wird gewartet ... 403 Forbidden
2020-06-11 12:00:05 FEHLER 403: Forbidden.
Da hast Du wohl einen magischen Finger oder aber mein Webfilter micht sich ein.
Zitat von: CoolTux am 11 Juni 2020, 12:00:52
Da hast Du wohl einen magischen Finger oder aber mein Webfilter micht sich ein.
Eher dicke Finger ;-)
Pihole?
OPNSense
und die sagt alles schick
2020-06-11T12:03:00.100000 115 10.6.9.3 TCP_TUNNEL/200 3957 CONNECT fhem.de:443 - ORIGINAL_DST/88.99.31.202 -
2020-06-11T12:02:59.980000 0 10.6.9.3 NONE/200 0 CONNECT 88.99.31.202:443 - HIER_NONE/- -
Was passiert wenn du den Git-Mirror benutzt?
https://raw.githubusercontent.com/fhem/fhem-mirror/master/fhem/controls_fhem.txt
Geht durch wie Butter
(12:09 marko@notebook-ac tmp) > wget -O /dev/null https://raw.githubusercontent.com/fhem/fhem-mirror/master/fhem/controls_fhem.txt
--2020-06-11 12:09:29-- https://raw.githubusercontent.com/fhem/fhem-mirror/master/fhem/controls_fhem.txt
Auflösen des Hostnamens raw.githubusercontent.com (raw.githubusercontent.com)... 151.101.112.133
Verbindungsaufbau zu raw.githubusercontent.com (raw.githubusercontent.com)|151.101.112.133|:443 ... verbunden.
HTTP-Anforderung gesendet, auf Antwort wird gewartet ... 200 OK
Länge: 145132 (142K) [text/plain]
Wird in »/dev/null« gespeichert.
/dev/null 100%[===============================================================>] 141,73K --.-KB/s in 0,03s
2020-06-11 12:09:30 (4,01 MB/s) - »/dev/null« gespeichert [145132/145132]
a )Mit https://raw.githubusercontent.com/fhem/fhem-mirror/master/fhem/controls_fhem.txt (https://raw.githubusercontent.com/fhem/fhem-mirror/master/fhem/controls_fhem.txt) geht das hier wieder:
wget -qO - https://raw.githubusercontent.com/fhem/fhem-mirror/master/fhem/controls_fhem.txt | cat - FHEM/co
ntrols_fhem.txt | egrep -v 'REV|CHANGED|commandref|firmware|pgm2|lib|gplot|fhemSVG' | sort | uniq -u | cut -d "/" -f 2 | sort | uniq
b) Mit curl geht es auf stdout curl https://fhem.de/fhemupdate/controls_fhem.txt
c) aber nicht so:
curl https://fhem.de/fhemupdate/controls_fhem.txt | cat - FHEM/controls_fhem.txt | egrep -v 'REV|CHANGED|commandref|firmware|pgm2|lib|gplot|fhemSVG' | sort | uniq -u | cut -d "/" -f 2 | sort | uniq
Das - nach curl geht nicht, gibt es eine Alternative?
Zitat von: heinzfo am 11 Juni 2020, 12:30:35
Mit curl geht es auf stdout curl https://fhem.de/fhemupdate/controls_fhem.txt
aber nicht so:
curl https://fhem.de/fhemupdate/controls_fhem.txt | cat - FHEM/controls_fhem.txt | egrep -v 'REV|CHANGED|commandref|firmware|pgm2|lib|gplot|fhemSVG' | sort | uniq -u | cut -d "/" -f 2 | sort | uniq
Das - nach curl geht nicht, gibt es eine Alternative?
Ja was machst du denn da mit
cat dazwischen? Was hast du vor?
curl lädt erstmal nix runter (wie
wget es macht), sondern pumpt den Output nur auf die Konsole.
Ich würde ja eher mal versuchen rauszufinden, warum euer wget nicht funktioniert.
wget -qO - https://raw.githubusercontent.com/fhem/fhem-mirror/master/fhem/controls_fhem.txt
Das funktioniert, und lädt auch herunter im genensatz zu curl, wie ich gerade von Dir gelernt habe ;-)
Ich lese aus welche Updates es gibt vs. zu meinem letzten FHEM update und sende es mir per Telegram zu.
Danke für die Hilfe!
Zitat von: heinzfo am 11 Juni 2020, 12:46:54
wget -qO - https://raw.githubusercontent.com/fhem/fhem-mirror/master/fhem/controls_fhem.txt
Das funktioniert, und lädt auch herunter im genensatz zu curl, wie ich gerade von Dir gelernt habe ;-)
Ich lese aus welche Updates es gibt vs. zu meinem letzten FHEM update und sende es mir per Telegram zu.
Bedenke, dass das ein (halbinoffizieller) Mirror ist. Du kannst das ganze auch mit
curl von den Originaldaten haben, dazu musst du nur curl etwas treten (https://curl.haxx.se/docs/manpage.html) und deine Pipe-Kette umbauen (https://sanctum.geek.nz/arabesque/useless-use-of-cat/):
curl -s https://fhem.de/fhemupdate/controls_fhem.txt 2>&1 | egrep -v 'REV|CHANGED|commandref|firmware|pgm2|lib|gplot|fhemSVG' | cut -d "/" -f 2 | sort | uniq
Sollte auch tun, was du möchtest und spart sogar noch eine
sort und
uniq Subkette.
2>&1 ist eine Redirection (https://www.gnu.org/software/bash/manual/html_node/Redirections.html) der Ausgabe von
STDERR auf
STDOUT (
- ist eine Abkürzung von STDOUT).
Ja, aber ich muss es ja mit meiner vorhandenen FHEM/controls_fem.txt vergleichen und die Unterschiede darstellen.
So geht es jetzt auch ohne den mirror
curl -s https://fhem.de/fhemupdate/controls_fhem.txt | cat - FHEM/controls_fhem.txt | egrep -v 'REV|CHANGED|commandref|firmware|pgm2|lib|gplot|fhemSVG' | sort | uniq -u | cut -d "/" -f 2 | sort | uniq
Besten Grüße
Heinz
Wenn man als Parameter noch ein -U Firefox übergibt, geht es auch mit wget - ohne den bekomme ich ebenfalls HTTP 403 Forbidden. Anscheinend mag der Server den User Agent von wget nicht.
Zitat von: xenos1984 am 11 Juni 2020, 14:31:24
Wenn man als Parameter noch ein -U Firefox übergibt, geht es auch mit wget - ohne den bekomme ich ebenfalls HTTP 403 Forbidden. Anscheinend mag der Server den User Agent von wget nicht.
Das ist des Pudels Kern. Ich hab 'ne
.wgetrc auf meinem System:
$ grep -i user .wgetrc
user_agent = Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)
Ohne config, gleiches Problem wie bei euch:
$ wget --no-config -O /dev/null https://fhem.de/fhemupdate/controls_fhem.txt
--2020-06-11 14:46:43-- https://fhem.de/fhemupdate/controls_fhem.txt
Resolving fhem.de (fhem.de)... 88.99.31.202, 2a01:4f8:10a:806::2
Connecting to fhem.de (fhem.de)|88.99.31.202|:443... connected.
HTTP request sent, awaiting response... 403 Forbidden
2020-06-11 14:46:43 ERROR 403: Forbidden.
wtf
Ich habe vor Jahren wget controls_fhem.txt per Apache-Regel untersagt, da etliche Zeitgenossen minuetlich die Datei abgeholt haben, was pro Zeitgenosse 150MB an sinnlosen taeglichen Traffic gekostet hat: die Datei wird ja nur einmal am Tag generiert.
Ein Zeitgenosse holt jetzt die Datei per curl minuetlich ab. Per curl wurde die Datei gestern 5277-mal abgeholt, macht 800MB an (nicht beabsichtigten) Traffic. Weiterhin 981-mal (vergeblich) von wget, und 2289 mal von FHEM selbst. Verhaeltnis Beabsichtigt vs. Missbrauch ist 1:3
Ich denke darueber nach in update-Modul was einzubauen, was per shell nicht ganz trivial nachzustellen ist.
Zitat von: rudolfkoenig am 11 Juni 2020, 15:00:20
Ich habe vor Jahren wget controls_fhem.txt per Apache-Regel untersagt, da etliche Zeitgenossen minuetlich die Datei abgeholt haben, was pro Zeitgenosse 150MB an sinnlosen taeglichen Traffic gekostet hat: die Datei wird ja nur einmal am Tag generiert.
Ein Zeitgenosse holt jetzt die Datei per curl minuetlich ab. Per curl wurde die Datei gestern 5277-mal abgeholt, macht 800MB an (nicht beabsichtigten) Traffic. Weiterhin 981-mal (vergeblich) von wget, und 2289 mal von FHEM selbst. Verhaeltnis Beabsichtigt vs. Missbrauch ist 1:3
Ich denke darueber nach in update-Modul was einzubauen, was per shell nicht ganz trivial nachzustellen ist.
Ich verstehe das Problem und verstehe auch nicht, warum man das so häufig macht. Aber wäre es nicht eher eine Idee, stattdessen ein rate limit (https://httpd.apache.org/docs/2.4/mod/mod_ratelimit.html) einzubauen? Du siehst (und weißt ja eh, vermute ich), wie trivial sich die Sperre mit einem geriggten User-Agent umgehen lässt - wechselnde IP sind deutlich aufwändiger. Dann können die curl und wgetler weiter laden, dauert dann halt nur ein paar Minuten ;-)
Zitat von: rudolfkoenig am 11 Juni 2020, 15:00:20ist 1:3
Ich denke darueber nach in update-Modul was einzubauen, was per shell nicht ganz trivial nachzustellen ist.
wieso nicht einfach über fail2ban oder mod_evasive vom apache? da kannst du jeweils ein erlaubtes rate limit für die datei angeben - z.b. 5 requests auf 60 min/20 auf 24h. damit sollte man die ,,poweruser" alleine aussperren können ohne normale nutzer zu beeinträchtigen. ginge jedenfalls schnell/einfach umzusetzen. wenn man lust hat, kann man das alternativ auch übern captcha dann schicken
Kann mir jemand erklaeren, _wozu_ das "manuelle" abholen dieser Datei gut ist?
Zitat von: rudolfkoenig am 11 Juni 2020, 23:23:23
Kann mir jemand erklaeren, _wozu_ das "manuelle" abholen dieser Datei gut ist?
das kann vermutlich nur der, der es verursacht ;D
ist aber auch so eine Sache. wenn mans komplett sperrt, dann sperrt man ggf. auch mal nutzer aus, die es - warum auch immer - fürs debugging brauchen.
Zitat von: rudolfkoenig am 11 Juni 2020, 23:23:23
Kann mir jemand erklaeren, _wozu_ das "manuelle" abholen dieser Datei gut ist?
heizfo hat unten ja erklärt, warum er das macht. Er lässt sich die ausstehenden Updates per Telegram schicken:
Zitat von: heinzfo am 11 Juni 2020, 12:46:54
Ich lese aus welche Updates es gibt vs. zu meinem letzten FHEM update und sende es mir per Telegram zu.
Per se finde ich auch nicht völlig sinnlos das zu tun, auch wenn man einfach svn nehmen und mit
svn status -u auch eine Liste der updates bekommen könnte.
Oder "update check" in FHEM.
Zitat von: rudolfkoenig am 12 Juni 2020, 10:21:50
Oder "update check" in FHEM.
Nicht jeder Prozess kann auf eine laufende Instanz von FHEM zurückgreifen und der Output von
update check ist nicht trivial weiterzuverarbeiten, oder?
das ist trotzdem sinnfrei, wegen eines update checks sowas minütlich abzufragen. selbst tools wie apt-cron aktualisieren sich per default nur einmal täglich, was auch für fhem locker ausreichend wäre. damit wäre die trafficlast schon mal nur noch bei 1/3600. deswegen ja der Vorschlag zur Nutzung von mod_evasive/fail2ban
Zitat von: Guybrush am 12 Juni 2020, 14:49:12
das ist trotzdem sinnfrei, wegen eines update checks sowas minütlich abzufragen. selbst tools wie apt-cron aktualisieren sich per default nur einmal täglich, was auch für fhem locker ausreichend wäre. damit wäre die trafficlast schon mal nur noch bei 1/3600. deswegen ja der Vorschlag zur Nutzung von mod_evasive/fail2ban
Also es ist erstmal nur eine Spekulation (nicht meine, um da klar zu sein), dass heizfo das ist und deshalb ist die Verknüpfung minütliche Downloads && Check auf Updates so erstmal nicht haltbar. Wir wissen nicht wer es ist und warum er es tut und ob er nicht einen guten Grund hat. Trotzdem hatte ich ja schon ein rate limit vorgeschlagen. Dann dauert es halt ein bisschen länger für Mr. Unknown.
Hat jemand mal die verschiedenen Github-Mirrors abgeklappert? Wäre jetzt meine spontane Vermutung.
Hallo
Ich rufe es einmal am Tag ab, künftig zwei mal pro Woche.
Zum testen nehme ich die Github Adresse, das kann ich nur jedem empfehlen
Hätte ich geahnt was ich da lostrete :-\
Beste Grüße
Heinz
Ich habe gar kein Problem mit eimal am Tag, das ist ja 1/1440-mal weniger als einmal die Minute. :)