FHEM Forum

FHEM => Frontends => Thema gestartet von: FunkOdyssey am 28 Oktober 2016, 18:04:11

Titel: Apache oder FHEMWEB?
Beitrag von: FunkOdyssey am 28 Oktober 2016, 18:04:11
Ich bin testweise schon einmal mit einem FHEMWEB-Port/Instanz auf Apache "umgestiegen" bzw. nutze dafür den Apache inkl. SSL als Reverse Proxy.

Bevor ich weitermache wollte ich mir ein paar Gedanken über die richtige Vorgehensweise machen:
- Ports oder Directories
- Welche Art der Authentifizierung?
- etc.

Aber was mich hier nun vielmehr interessiert: Wie sicher ist das Ganze?

Ist ein Apache vom Laien konfiguriert wirklich sicherer als eine reine FHEMWEB-Instanz?

Wenn ich wirklich beim Apachen bleiben sollte, würde ich mir auch folgende Quelle genauer zur Brust nehmen: http://www.petefreitag.com/item/505.cfm




Aktuell habe ich
- einen Port für normalen Webzugriff inkl. Portweiterleitung im Router (Anmeldung notwendig)
- einen Port für den Webhook bzw. die Geo-Lokalisierung (Anmeldung notwendig)
- einen Port, der nur für den internen IP-Kreis nutzbar ist, um FHEM daheim ohne Anmeldung nutzen zu können.

Alles in allem keine schöne Lösung. Aber auch mit Apache2 würde es nicht großartig anders aussehen.

Danke für eure Meinung.
Titel: Antw:Apache oder FHEMWEB?
Beitrag von: rudolfkoenig am 28 Oktober 2016, 19:12:26
ZitatIst ein Apache vom Laien konfiguriert wirklich sicherer als eine reine FHEMWEB-Instanz?

Ich hoffe nicht, wer andere Infos hat, soll sich melden :)
Apache kann aber zusaetzlich auch "client-side certificates", siehe https://gist.github.com/gbirke/8608543
Titel: Antw:Apache oder FHEMWEB?
Beitrag von: FunkOdyssey am 28 Oktober 2016, 22:01:04
Ehrlich gesagt will ich nur zum Reverse Proxy, da (bei mir) FHEMWEB nicht mit HTTPS funktioniert. Dazu gibt es ja bereits einen Thread, aber leider kann ich dich bei der Fehlersuche nicht unterstützen.

Ich habe das Gefühl, dass ein eigener Apache2 ein bißchen oversized ist. Ich habe Bauchschmerzen, das Authentifizierungsverfahren auszulagern. Nu ja. Ich lese mich mal schlau.
Titel: Antw:Apache oder FHEMWEB?
Beitrag von: rudolfkoenig am 29 Oktober 2016, 10:23:06
Ein RPi sollte Apache noch laufen lassen koennen, ohne merkbare Nachteile, ich betreibe mein FHEM seit 10 Jahren so.
Lieber mit Apache und HTTPS als nur HTTP, HTTP ist einfach abzuhoeren, und FHEM kann kaum was dagegen tun.
Titel: Antw:Apache oder FHEMWEB?
Beitrag von: abc2006 am 06 Dezember 2016, 06:19:16
evtl ist auf dem Raspi dann der lighttpd interessant...

Grüße
Stephan
Titel: Antw:Apache oder FHEMWEB?
Beitrag von: klausw am 06 Dezember 2016, 12:31:03
Apache läuft bei mir auf dem PI1 ohne Probleme.
Bei den paar Clients die es bedienen muss ist es auch nicht langsamer als beispielsweise nginx
Zusätzlich habe ich noch fail2ban installiert um die Sicherheit etwas zu erhöhen.
Titel: Antw:Apache oder FHEMWEB?
Beitrag von: JoeALLb am 17 Januar 2017, 20:01:56
Wirklich lightweigt und sehr elegant ist nginx!
Würde ich unbedingt ansehen, kann alles was du brauchst! Du kannst damit auch alles über einen einzigen port laufen lassen!!
(mache ich so)
Titel: Antw:Apache oder FHEMWEB?
Beitrag von: DocCyber am 13 Februar 2017, 12:17:06
Zitat von: FunkOdyssey am 28 Oktober 2016, 18:04:11
Aktuell habe ich
- einen Port für normalen Webzugriff inkl. Portweiterleitung im Router (Anmeldung notwendig)
- einen Port für den Webhook bzw. die Geo-Lokalisierung (Anmeldung notwendig)
- einen Port, der nur für den internen IP-Kreis nutzbar ist, um FHEM daheim ohne Anmeldung nutzen zu können.

Ich bin auch an dieser Thematik interessiert, besonders auch das fett markierte Thema.
Außerdem würde ich gern einzelne UI-Websites (ich verwende FTUI) davon auschließen wollen, von jedermann im Haus (z.B. meine Kinder) benutzt zu werden.

Leider kenne ich mich in diesem Komplex nicht wirklich aus, also FHEM auf Apache zu instllieren. Hast du Erfahrungen, wo ich informieren kann; am besten  FHEM-spezifisch?


Vielen Dank im Voraus!
Titel: Antw:Apache oder FHEMWEB?
Beitrag von: FunkOdyssey am 13 Februar 2017, 16:41:30
Zitat von: DocCyber am 13 Februar 2017, 12:17:06
Ich bin auch an dieser Thematik interessiert, besonders auch das fett markierte Thema.
Außerdem würde ich gern einzelne UI-Websites (ich verwende FTUI) davon auschließen wollen, von jedermann im Haus (z.B. meine Kinder) benutzt zu werden.

Leider kenne ich mich in diesem Komplex nicht wirklich aus, also FHEM auf Apache zu instllieren. Hast du Erfahrungen, wo ich informieren kann; am besten  FHEM-spezifisch?


Vielen Dank im Voraus!

Ich bin mittlerweile auf Apache >2.4 gewechselt. Das >2.4 erwähne ich, weil sich hier halt einige Dinge geändert haben und ein simples Copy&Paste der Konfiguration nicht unbedingt möglich war.

Ich habe immer noch zwei Ports offen. Diese laufen nun jedoch SSL-verschlüsselt durch einen Apache Reverse Proxy.
Intern wie auch von außen per VPN greife ich per Client-Zertifikat auf https://fhem.fritz.box ohne Authentifizierung zu.
Das alles hat mich ganz schön Nerven gekostet, da jede Anleitung, die ich hier im Forum gefunden habe, nur zum Teil für mich passend war.
Leider habe ich gerade keinen Link greifbar. Es war auch ein ziemliches Durcheinander und ich könnte es momentan auch nicht rekonstruieren.

Ehrlich gesagt: Ich habe auch ein wenig Bauchschmerzen, dass durch eine Fehlkonfiguration von Apache2 ich eigentlich noch ein größeres Loch öffne.

Titel: Antw:Apache oder FHEMWEB?
Beitrag von: DocCyber am 13 Februar 2017, 16:55:47
hhmmm...

Vielen Dank für deine Antwort - die Thematik scheint hinreichend komplex zu sein.
Aber vielleicht stößt ja noch jemand auf diesen Thread und hat weitergehende Ideen.

Titel: Antw:Apache oder FHEMWEB?
Beitrag von: ahome77 am 07 März 2017, 15:12:12
Sehe ich das richtig, das wenn ich php nutzen möchste (Bei Tablet UI), dass ich dann apache und php5 auf dem RaspberryPi installieren muss? Sprich FHEMWEB kann kein php5, richtig?


sudo apt-get install apache2 php5 libapache2-mod-php5


Wohin soll dann das "home Verzeichnis" vom apache zeigen?  opt/fhem/www/tablet ? (bei der Nutzung von Tablet UI?)


cd /etc/apache2/sites-enabled/
nano 000-default.conf


editieren:


# DocumentRoot /var/www/html
DocumentRoot /opt/fhem/www/tablet


Oder "beißt" sich FHEMWEB so mit dem Apache?
Titel: Antw:Apache oder FHEMWEB?
Beitrag von: klausw am 07 März 2017, 15:26:14
Zitat von: ahome77 am 07 März 2017, 15:12:12
Sehe ich das richtig, das wenn ich php nutzen möchste (Bei Tablet UI), dass ich dann apache und php5 auf dem RaspberryPi installieren muss? Sprich FHEMWEB kann kein php5, richtig?


sudo apt-get install apache2 php5 libapache2-mod-php5


Wohin soll dann das "home Verzeichnis" vom apache zeigen?  opt/fhem/www/tablet ? (bei der Nutzung von Tablet UI?)
genau
oder ein link von opt/fhem/www/tablet  nach /var/www/html/tablet
oder opt/fhem/www/tablet nach /var/www/html/tablet kopieren
Ob noch PHP Pakete fehlen weiss ich nicht
Ich habe
sudo apt-get -y install php5
sudo apt-get -y install libapache2-mod-perl2 php5-curl php5-dev php5-gd php5-imap php5-ldap php5-mysql php5-odbc
sudo apt-get -y install php-pear php-apc

installiert.

Du kannst auch zusätzlich FHEMWEB über den Apache Proxy laufen lassen (https://wiki.fhem.de/wiki/Apache_Authentication_Proxy) und darüber absichern.

Zitat von: ahome77 am 07 März 2017, 15:12:12
Oder "beißt" sich FHEMWEB so mit dem Apache?

Nein, die kommen sich nicht in die Quere, sofern sie nicht die gleichen Ports nutzen wollen.
Titel: Antw:Apache oder FHEMWEB?
Beitrag von: kadettilac89 am 07 März 2017, 23:16:44
Zitat von: JoeALLb am 17 Januar 2017, 20:01:56
Wirklich lightweigt und sehr elegant ist nginx!
Würde ich unbedingt ansehen, kann alles was du brauchst! Du kannst damit auch alles über einen einzigen port laufen lassen!!
(mache ich so)

Hast du hierzu Vergleich der Laufzeiten zwischen nginx und FhemWeb direkt?

Ich habe zum Test der SSL-Zertifikate Apache auf meinem BananaPro getestet aber die Seitenladezeiten sind etwas langsamer als direkt über FhemWeb. Auch über Http ohne irgend welche Verschlüsselung oder Passwörter. Ich merke das auf Seiten die mehrere Plots haben. Da sind es 2 Sek. ohne und 4 Sek. mit Apache. Gemessen mit IE-Entwicklertools.

Aktuell habe ich keine Zeit mich näher damit zu befassen. Habe vor auf Raspberry 3 oder andere Hardware umzusteigen, dann wird es wieder interessant. Wenn ich dann schon neu konfiguriere ist der Aufwand Apache oder nginx vergleichbar. Da habe ich dann auch keine Präferenz.
Titel: Antw:Apache oder FHEMWEB?
Beitrag von: JoeALLb am 08 März 2017, 06:28:38
Nein, keine Messung. Da ich aber Features von nginx benötige, ist pures fhemweb für mich keine Option.
Titel: Antw:Apache oder FHEMWEB?
Beitrag von: ahome77 am 08 März 2017, 14:34:19
Zitat von: ahome77 am 07 März 2017, 15:12:12

cd /etc/apache2/sites-enabled/
nano 000-default.conf


editieren:


# DocumentRoot /var/www/html
DocumentRoot /opt/fhem/www/tablet




Welchem User muss ich dann für das Verzeichnis  "/opt/fhem/www/tablet" welche Rechte vergeben? Oder muss ich da im Apache noch was anderes einstellen?

Momentan kommt folgende Meldung vom Apache:

Forbidden

You don't have permission to access / on this server.
Apache/2.4.10 (Raspbian) Server at 192.168.222.119 Port 80


Bin mir da jetzt nicht ganz sicher ob es eher ein Linux Rechteproblem ist oder ein Apache Rechteproblem...
Titel: Antw:Apache oder FHEMWEB?
Beitrag von: mani am 27 November 2017, 21:48:36
Hallo ahome77,

versuch auch gerade Tablet Ui über apache2 laufen zu lassen da ich gerne php nutzen möchte....

leider stecke ich beim selbigen Problemchen fest :'(...hast du das mittlerweile lösen können?


Mfg Mani

Titel: Antw:Apache oder FHEMWEB?
Beitrag von: fireb am 15 März 2018, 11:47:47
Hallo Mani,

stehe auch vor genau demselben Problem. Konntest Du das Problem bereits lösen?

L.G.
fireb
Titel: Antw:Apache oder FHEMWEB?
Beitrag von: Eisix am 15 März 2018, 16:33:12
Hallo,

/etc/apache2/apache2.conf



<Directory /opt/fhem/www/>
        Options Indexes FollowSymLinks
        AllowOverride None
        Require all granted
</Directory>



zufügen (wenn das auch euer www Ordner ist) und dann den service neu starten.
Das löst das Problem. Ob das sicherheitstechnisch eine Auswirkung hat muss ich nochmal durchdenken. Die alte Lösung mit Link sollte eigentlich die gleiche Auswirkung haben.

Gruß
Eisix