Zugriff auf FHEM über das Interne!...

Begonnen von moonsorrox, 22 Oktober 2017, 12:19:47

Vorheriges Thema - Nächstes Thema

Christoph Morrison

Zitat von: moonsorrox am 26 Oktober 2017, 22:43:08
<IfModule mod_ssl.c> <VirtualHost *:443>
Füge mal zwischen IfModule- und VirtualHost-Direktive einen Zeilenumbruch ein, ebenso bei den schließenden Statements:


<IfModule mod_ssl.c>
<VirtualHost *:443>
...
</VirtualHost>
</IfModule>

moonsorrox

Zitat von: CoolTux am 27 Oktober 2017, 07:46:33
Startet denn der Indianer wenn Du Deine Config mal aus der sites-enabled raus nimmst?
folgendes eingegeben und er startet, also da kommt keine Meldung, dass hatte ich nur noch nicht erwähnt - das funktioniert.
Ist ja nur ein symbolischer Link gewesen..!

root@cubieHomeSrv:~# service apache2 restart
root@cubieHomeSrv:~#


Das heißt also das etwas an der conf Datei nicht OK ist.
Ich habe schon bei meinem Provider geschaut, wie der Servername ist ob es daran liegt, aber auch damit funktioniert es nicht.
Die Zeilenumbrüche habe ich in der erstellten Datei mit nano/putty auch schon gemacht aber auch das ist es nicht.

Ich weiß nicht mehr was da nicht richtig eingestellt ist. Ich habe die conf Datei schon zig fach durchsucht ob ein Fehler drin ist, aber nichts und so mächtig ist das Teil ja nicht
Intel-NUC i5: FHEM-Server 6.1 :: Perl v5.18.2

Homematic: HM-USB-CFG2,HM-CFG-LAN Adapter, HM-LC-BL1-FM, HM-LC-Sw1PBU-FM, HM-LC-Sw1-PI-2, HM-WDS10-TH-O, HM-CC-TC, HM-LC-SW2-FM

Wernieman

Kannst Du uns die Dateien mal "RAW" geben?
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

moonsorrox

So Leute ich habe jetzt nochmals die conf Datei mit nano editiert und auch den Servernamen bei meinem Provider eingetragen und jetzt funktioniert das  ;)

Ich sage mal Danke an alle die sich hier beteiligt haben, denn jeder hat wohl seinen Teil dazu getan ohne dieses wäre ich nicht dahinter gekommen.
Hauptsächlich ist es wohl der Servername gewesen, dann wurde mir die Datei ohne Zeilenumbrüche geschrieben und so waren es wohl noch einige Dinge...!  :-\

Das war es jetzt in der Testumgebung mal schauen ob ich das auf meinem Produktivsystem hinbekomme....
Intel-NUC i5: FHEM-Server 6.1 :: Perl v5.18.2

Homematic: HM-USB-CFG2,HM-CFG-LAN Adapter, HM-LC-BL1-FM, HM-LC-Sw1PBU-FM, HM-LC-Sw1-PI-2, HM-WDS10-TH-O, HM-CC-TC, HM-LC-SW2-FM

moonsorrox

Hier nochmal die Rückmeldung... auf meinem Produktivsystem hat es auch geklappt obwohl ich doch ein etwas altes Ubuntu (Trusty) da drauf habe.

Ein Frage habe ich nochmal, da ich das ja auch für weitere Freigaben oder wie das heißt nutzen möchte.

Im Moment ist das ja nur fhem, ich habe aber z.B. webhook mit Geofency am laufen welches bisher immer über eine Freigabe Port 8087 und User mit Passwort lief. Das habe ich aber eben wegen der weiteren Freigabe eines Port nicht mehr genutzt.
Das würde ich gerne in die conf Datei einfügen und z.B. noch den Zugriff auf meine VU+ Box.

Das weiß ich aber nicht wie ich das in die Datei integriere... Habe da auf dem Testsystem schon mal einen Versuch gestartet, aber funktionierte gar nicht.

Wenn jemand hier so etwas mit einem funktionierendem Beispiel hätte wäre das mal ganz hiflreich.
Intel-NUC i5: FHEM-Server 6.1 :: Perl v5.18.2

Homematic: HM-USB-CFG2,HM-CFG-LAN Adapter, HM-LC-BL1-FM, HM-LC-Sw1PBU-FM, HM-LC-Sw1-PI-2, HM-WDS10-TH-O, HM-CC-TC, HM-LC-SW2-FM

eisi

Sorry, gerade erst gesehen, aber nach dem IfModule darf nichts mehr kommen.

<IfModule mod_ssl.c>
<VirtualHost *:443>

3 x Rasp mit fhem 5.8 | 1 Rasp mit Kodi |1x Cube | 15 x MaxLan Thermostate und 18 Fensterschalter | 30 WLAN Schalter Sonoff | Diverse Sensoren mit Arduino | Tablet mit FTUI 2.6

moonsorrox

alles gut, funktioniert wie es soll...!  ;)

Mich beschäftigt jetzt eben das ich gerne weitere Freigaben hätte, aber da brauche ich Hilfe oder ein Beispiel  :-\
Intel-NUC i5: FHEM-Server 6.1 :: Perl v5.18.2

Homematic: HM-USB-CFG2,HM-CFG-LAN Adapter, HM-LC-BL1-FM, HM-LC-Sw1PBU-FM, HM-LC-Sw1-PI-2, HM-WDS10-TH-O, HM-CC-TC, HM-LC-SW2-FM

eisi

Das sollte kein Problem sein, wenn du mir sagst, was du genau machen möchtest. Freigabe ist da das falsche Wort :-)
Ein Webserver hat Hosts, die weitergeleitet werden können.
Was möchtest du von wo, wie weiterleiten?
3 x Rasp mit fhem 5.8 | 1 Rasp mit Kodi |1x Cube | 15 x MaxLan Thermostate und 18 Fensterschalter | 30 WLAN Schalter Sonoff | Diverse Sensoren mit Arduino | Tablet mit FTUI 2.6

moonsorrox

#23
ich habe mich wohl zu früh gefreut, gerade wollte ich mal drauf zugreifen.. nun geht das wieder nicht  :-\
Aber es werden keine Fehler angezeigt, nur diese Meldung

root@cubieHomeSrv:/# apachectl configtest
[Sun Oct 29 00:29:28.212368 2017] [proxy_html:notice] [pid 4370] AH01425: I18n support in mod_proxy_html requires mod_xml2enc. Without it, non-ASCII characters in proxied pages are likely to display incorrectly.
Syntax OK
root@cubieHomeSrv:/# service apache2 restart


jetzt nochmals auf meinem Testsystem probiert da funktioniert das...!!
OK, egal ich kann es ja auf dem Testsystem ausprobieren.

Folgendes hatte ich ja mal in Betrieb und dieses möchte ich wieder nutzen, meine Anwesenheitserkennung mit Geofency, dafür mußte ich aber einen weiteren Port (8087) für den Webhook in der Fritzbox freigeben, das habe ich jetzt aber deaktiviert.
Nun möchte ich das über den Apache machen und diesen Port mit in meine conf Datei nehmen.

In dem Video wo ich diese ganze Sache her habe wurde gesagt ich kann jetzt jederzeit anderen Geräte eben über diese Adresse mit eintragen.
So wollte ich auch noch meinen VU+ SAT Receiver darüber freigeben.

Aber da ich nicht weiß wie, habe ich das mal probiert, aber scheitere kläglich... Ist eben absolutes Neuland für mich  :-\
Im Internet habe ich dazu einiges gefunden, aber das verstehe ich nicht - da muss ich wohl noch etwas lesen... ich wollte nicht in meiner conf Datei herum pfuschen  ;)
Intel-NUC i5: FHEM-Server 6.1 :: Perl v5.18.2

Homematic: HM-USB-CFG2,HM-CFG-LAN Adapter, HM-LC-BL1-FM, HM-LC-Sw1PBU-FM, HM-LC-Sw1-PI-2, HM-WDS10-TH-O, HM-CC-TC, HM-LC-SW2-FM

eisi

Zu deiner Meldung:
Mach bitte mal auf dem System als root:

a2enmod mod_xml2enc

und dann mal bitte einen Restart des Apache.

Das mit der neuen Config:
Apache hat einen sehr guten Aufbau der Configfiles.
Die Config, die du jetzt laufen hast, läßt du so, wie sie ist.
Sie sollte in /etc/apache2/sites-enabled stehen oder aus sites-available versymlinkt sein.
Dann machst du ein neues Configfile (das muss mit  .conf enden!!!!) für deine Idee mit dem geofancy.
Da schreibst du dann deine neue Config rein.
Die sollte so ähnlich aufgebaut sein, wie die alte Config. Nur!:
Hier bekommst du ein kleines Problem:

<VirtualHost *:443>
    ServerName fhem.resse-hausautomation.de

Du sagst dem Apache folgendes:
Alle IPs, die du kennst und deren Anfragen auf Port 443 kommen, haben den Hostnamen:
fhem.resse-hausautomation.de

Das ist nicht gut.
Du kannst ja deinem Apachen noch mehr IPs (ich schätze es sind interne also 192.168...) geben.
Dann kannst du in die erste Conf schreiben:

<VirtualHost 192.168.0.1:443>
    ServerName fhem.resse-hausautomation.de
    Rest den du machen willst


2. Configfile

<VirtualHost 192.168.0.2:443>
    ServerName geofancy.resse-hausautomation.de
    Rest den du machen willst


So hast du das sauber. Nur wichtig ist, dass es die Domain und den Host auch im DNS gibt.
ALso:  fhem.resse-hausautomation.de und  geofancy.resse-hausautomation.de

3 x Rasp mit fhem 5.8 | 1 Rasp mit Kodi |1x Cube | 15 x MaxLan Thermostate und 18 Fensterschalter | 30 WLAN Schalter Sonoff | Diverse Sensoren mit Arduino | Tablet mit FTUI 2.6

moonsorrox

so das es auch meinem Produktivsystem mal geht und mal nicht verstehe ich nicht...!
Ist aber erst mal nicht so schlimm, da ich ja mein Testsystem habe hier geht es muss eben nur in der Fritzbox umstellen.
Hier das angeforderte von dir:
root@FHEM-Server:/# a2enmod mod_xml2enc
ERROR: Module mod_xml2enc does not exist!
root@FHEM-Server:/# service apache2 restart
* Restarting web server apache2                                                                                                                                                 [Mon Oct 30 00:24:26.682697 2017] [proxy_html:notice] [pid 15527:tid 140096483161984] AH01425: I18n support in mod_proxy_html requires mod_xml2enc. Without it, non-ASCII characters in proxied pages are likely to display incorrectly.
AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message
                                                                                                                                                                          [ OK ]
root@FHEM-Server:/#


Das er sagt es existiert nicht (Module mod_xml2enc does not exist!) ist aber auf meinem Testsystem auch so, nur das ich hier immer auf die https://domain komme.

Gut zum testen reicht es mir erst mal, da ich ja mein Produktivsystem demnächst komplett neu mache.

Nun zu der geofancy.resse-hausautomation.de das ist natürlich kein Problem diese anzulegen, aber ich kann doch durch die Fritzbox nur eine DNS durchleiten...!
Intern arbeite ich übrigens mit 10.x.x.x IPs, aber das ist ja egal  ;)

In dem Video zu dieser ganzen Geschichte habe ich es so verstanden, dass ich nur die weiteren lokalen IPs eintragen sollte...!
Da ich davon bisher so gar keine Dunst  :-\ habe, habe ich dort nochmal gefragt nur leider noch keine Antwort erhalten.

Im Internet habe ich auf diversen Seiten geschaut und auch so einige Beiträge gefunden, werde aber nicht schlau daraus.
Ok ich warte mal was du schreibst zu dem durchleiten der weiteren DNS Adresse, denn das verstehe ich bisher noch nicht.

Wäre natürlich super wenn ich für jede IP eine *.conf anlegen könnte das sieht mir nach einer sauberen Trennung aller Geräte aus.
Intel-NUC i5: FHEM-Server 6.1 :: Perl v5.18.2

Homematic: HM-USB-CFG2,HM-CFG-LAN Adapter, HM-LC-BL1-FM, HM-LC-Sw1PBU-FM, HM-LC-Sw1-PI-2, HM-WDS10-TH-O, HM-CC-TC, HM-LC-SW2-FM

eisi

Eigentlich sollte es so gehen:


sudo apt-get install libapache2-mod-proxy-html libxml2-dev
sudo a2enmod proxy
sudo a2enmod proxy_http
sudo a2enmod proxy_html
sudo a2enmod xml2enc


Bin zur Zeit auf der Arbeit und habe keine FB zur Hand.
Eigentlich soll das kein Problem sein:

fhem.resse-hausautomation.de
Ankommender Port: 443
Weiterleitung auf ApacheIP (z.B 10.0.0.1) Port 443

geofancy.resse-hausautomation.de
Ankommender Port: 444
Weiterleitung auf ApacheIP (z.B 10.0.0.2) Port 443

Im Apache:
<VirtualHost 10.0.0.1:443>
Servername fhem.resse-hausautomation.de
Proxy auf Port 8083
Weitere Konfig
</Virtualhost>


Im Apache:
<VirtualHost 10.0.0.2:443>
Servername geofancy.resse-hausautomation.de
Proxy auf Port von geofancy
Weitere Konfig
</Virtualhost>

Du kannst für jede IP eine .conf anlegen. Genau dafür ist das gemacht.
3 x Rasp mit fhem 5.8 | 1 Rasp mit Kodi |1x Cube | 15 x MaxLan Thermostate und 18 Fensterschalter | 30 WLAN Schalter Sonoff | Diverse Sensoren mit Arduino | Tablet mit FTUI 2.6

moonsorrox

So ich kann aber eben keine zwei DNS Einträge in der Fritzbox hinterlegen, dass geht ja nicht...
Es ist diese hier aktiv:
fhem.resse-hausautomation.de
Ankommender Port: 443
Weiterleitung auf ApacheIP (z.B 10.0.0.50) Port 443


Der Apache hat ja die gleiche IP wie sie mein Fhem Server hat... das funktioniert ja auch.

Nun kann ich aber nicht diese hier auch eintragen:
geofancy.resse-hausautomation.de
Ankommender Port: 444
Weiterleitung auf ApacheIP (z.B 10.0.0.50) Port 443


deshalb wurde es ja in dem anderen Beitrag geschrieben das ich weitere Einträge in der conf Datei hinterlegen kann.
Das wäre ja auch einfach da die Anwesenheit mit Geofancy eben auch auf dem Fhem Server ist..

Früher hatte ich mal die DNS Adresse
http://meine-adresse.de:8087/webhook/geo damit funktionierte das auch, nur ich mußte eben einen zusätzlichen Port (8087) in der Fritzbox öffnen und das wollte ich ja umgehen und nur diesen einen 443 öffnen.

Ich habe im Internet ja Beispiele gefunden kann damit aber nichts anfangen, weil ich das nicht kenne. Die schreiben da irgendwas mit "balancer"

<VirtualHost *:443>

    SSLProxyEngine On
    SSLProxyVerify none
    SSLProxyCheckPeerCN off
    SSLProxyCheckPeerName off
    SSLProxyCheckPeerExpire off
    ProxyPreserveHost off
           
    <Proxy balancer://meinloadbalancer>
        BalancerMember https://webserver01.tld/
      BalancerMember https://webserver02.tld/
    </Proxy>

    ProxyPass / balancer://meinloadbalancer/
    ProxyPassReverse / balancer://meinloadbalancer/

...

</VirtualHost>


Später wie gesagt kommt noch mein SAT Receiver dazu der wiederum hat ja auch eine andere IP
Intel-NUC i5: FHEM-Server 6.1 :: Perl v5.18.2

Homematic: HM-USB-CFG2,HM-CFG-LAN Adapter, HM-LC-BL1-FM, HM-LC-Sw1PBU-FM, HM-LC-Sw1-PI-2, HM-WDS10-TH-O, HM-CC-TC, HM-LC-SW2-FM

eisi

Zitat
So ich kann aber eben keine zwei DNS Einträge in der Fritzbox hinterlegen, dass geht ja nicht...
Doch, das geht :-)
fhem.resse-hausautomation.de hat ja eine extern Gültige IP, nämlich die, die sich die Fritzbox vom Provider zieht.
geofancy.resse-hausautomation.de setzt du jetzt auf die gleiche IP. Nehmen wir mal an: 212.80.90.65

Jetzt sagst du deiner Fritzbox (ich habe eine 7490) dass du das Gerät, worauf der Apache läuft freigeben möchtest.
Alle Kästchen wie exposed host bleiben bitte leer!!!
Auf dem unteren Teil dieser Seite steht: Neue Freigabe
Klicken, dann erst Port 443 auf 443
OK (also Freigabe speichern)
Dann Neue Freigabe dann Port 444 und OK
(Wie auf den Bildern beschrieben ausfüllen)
Dann solltest du für dieses Gerät 2 Freigaben haben.
Mit Okay aktivierst du die dann.
Jetzt hast du Folgendes eingestellt:
Alles was auf 212.80.90.65 port 443 (also https) kommt wird an deinen Apache Port 443 geleitet.
Alles was auf 212.80.90.65 port 444 (auch mit https beginnen) kommt wird an deinen Apache Port 444 geleitet.
Nun baust du wie vorher schon gesagt, die beiden Configs für den Apache.
Interne IP (10....) (also das Gerät, was du in der FB freigegeben hast) Port 443 für FHEM und 444 für geofancy.


Ein Balancer ist was komplett Anderes. Der leitet Anfragen von einem Service auf mehrere Geräte.
Du brauchst einen Proxy, wie in deiner ersten Config, nur eben mit dem Geofancy-Port.

Zum Thema Satreceiver:
Bitte denke daran, dass hier deine Uploadbandbreite als Signalübertragung genommen wird, nicht die Downloadbandbreite.
Wenn du zum Beispiel eine DSL-Leitung 16 Down 1,5 UP hast, kannst du halt kein 2MB Signal übertragen, da es an deinem Upload scheitert.

3 x Rasp mit fhem 5.8 | 1 Rasp mit Kodi |1x Cube | 15 x MaxLan Thermostate und 18 Fensterschalter | 30 WLAN Schalter Sonoff | Diverse Sensoren mit Arduino | Tablet mit FTUI 2.6

moonsorrox

Zitat von: eisi am 30 Oktober 2017, 18:48:19
Doch, das geht :-)
fhem.resse-hausautomation.de hat ja eine extern Gültige IP, nämlich die, die sich die Fritzbox vom Provider zieht.
geofancy.resse-hausautomation.de setzt du jetzt auf die gleiche IP. Nehmen wir mal an: 212.80.90.65
Ok, dass habe ich auch so verstanden und auch gemacht, mir war nur nicht klar das diese IP dann auch auf meinem Provider aktualisiert wird für die geofancy....... werde morgen mal schauen  ;)

Zitat von: eisi am 30 Oktober 2017, 18:48:19
Jetzt sagst du deiner Fritzbox (ich habe eine 7490) dass du das Gerät, worauf der Apache läuft freigeben möchtest.
Alles was auf 212.80.90.65 port 443 (also https) kommt wird an deinen Apache Port 443 geleitet.
Alles was auf 212.80.90.65 port 444 (auch mit https beginnen) kommt wird an deinen Apache Port 444 geleitet.
Nun baust du wie vorher schon gesagt, die beiden Configs für den Apache.
Interne IP (10....) (also das Gerät, was du in der FB freigegeben hast) Port 443 für FHEM und 444 für geofancy.
OK das habe ich auch  ;)


Zitat von: eisi am 30 Oktober 2017, 18:48:19
Zum Thema Satreceiver:
OK das kommt dann später... ich habe ein 50.000 VDSL Leitung  ;)

Ich schreibe nochmal eine PN  ;)

Was ich aber jetzt feststelle, ich muss ein zweites Zertifikat erstellen da dieses was ich habe nur für die fhem..... conf gilt. Somit muss ich für alle weiteren auch jeweils ein Zertifikat erstellen ist das nicht ziemlich aufwendig.
Da wäre es komfortabler ich könnte alle weitere IPs mit in die eine conf Datei integrieren, dass wäre natürlich optimal, dann hätte ich für alle ein Zertifikat.

Intel-NUC i5: FHEM-Server 6.1 :: Perl v5.18.2

Homematic: HM-USB-CFG2,HM-CFG-LAN Adapter, HM-LC-BL1-FM, HM-LC-Sw1PBU-FM, HM-LC-Sw1-PI-2, HM-WDS10-TH-O, HM-CC-TC, HM-LC-SW2-FM