Allowed: Unterschied zwischen den Versionen

Aus FHEMWiki
(Erste Rohfassung - needs editing...)
 
(Einleitung geändert)
Zeile 7: Zeile 7:
|ModForumArea=Automatisierung
|ModForumArea=Automatisierung
|ModTechName=96_allowed.pm  
|ModTechName=96_allowed.pm  
|ModOwner=rudolfkoenig ([http://forum.fhem.de/index.php?action=profile;u=8 Forum] / [[Benutzer Diskussion:rudolfkoenig|Wiki]])
|ModOwner=rudolfkoenig / [http://forum.fhem.de/index.php?action=profile;u=8 rudolfkoenig]
}}
}}


In der Grundkonfiguration kann jeder, der sich in dem selben Netzwerk wie der FHEM-Server befindet, unverschlüsselt und ohne der Eingabe von Benutzerdaten auf FHEM zugreifen. FHEM weist mit einer Sicherheitswarnung auf diesen Umstand hin.
[[allowed]] ist ein Erweiterungsmodul um Zugriffe auf den von fhem.pl bereitgestellten Serverdienst abzusichern.
 
==Einführung==
In der Grundkonfiguration kann jeder, der sich in dem selben Netzwerk<ref>Haben z.B. in Ihrem Heimnetzwerk alle angeschlossenen Geräte Adressen aus dem Bereich 192.168.178.x, wäre ein Zugriff von einem Gerät mit der Adresse 192.168.178.3 zulässig, nicht aber von 192.168.'''179'''.3 </ref> wie der FHEM-Server befindet, unverschlüsselt und ohne der Eingabe von Benutzerdaten auf FHEM zugreifen. FHEM weist mit einer Sicherheitswarnung auf diesen Umstand hin.
Das Definieren einer allowed-Instanz ist eine Möglichkeit, die Installation abzusichern.
Das Definieren einer allowed-Instanz ist eine Möglichkeit, die Installation abzusichern.


Ist keine allowed-Instanz definiert, sind Zugriffe auf FHEM nur innerhalb desselben Netzwerks möglich.
Daher ist es erforderlich, eine allowed-Instanz zu definieren, um
 
* Zugriffe auf FHEM aus anderen Netzwerken zu ermöglichen und/oder
Zusätzlich kann für FHEMWEB mithilfe des Attributes {{Link2CmdRef|Anker=HTTPS|Lang=de|Label=HTTPS}} eine HTTPS-Verbindung aktiviert werden. Für telnet (welches mehr oder weniger ein TCP/IP Port ist) wird das Attribut {{Link2CmdRef|Anker=SSL|Lang=de|Label=SSL}} verwendet.  
* die Möglichkeiten, auf FHEM zuzugreifen für Teilnehmer desselben Netzwerks einzuschränken oder auszuschließen.


== Syntax ==
== Syntax ==
Zeile 24: Zeile 27:
==Weitere Hinweise==
==Weitere Hinweise==
Sofern FHEM nicht nur aus dem lokalen Netz erreichbar sein soll, sollten neben der Definition einer oder mehrerer allowed-Instanzen zusätzliche Sicherheitsmaßnahmen ergriffen werden. Mögliche Optionen dafür sind die Verwendung eines VPNs (Virtual Private Network) und/oder eines Reverse-Proxy-Servers mit z.B. [[Apache_Authentication_Proxy|Apache]] oder [[HTTPS-Absicherung_%26_Authentifizierung_via_nginx_Webserver|nginx]].
Sofern FHEM nicht nur aus dem lokalen Netz erreichbar sein soll, sollten neben der Definition einer oder mehrerer allowed-Instanzen zusätzliche Sicherheitsmaßnahmen ergriffen werden. Mögliche Optionen dafür sind die Verwendung eines VPNs (Virtual Private Network) und/oder eines Reverse-Proxy-Servers mit z.B. [[Apache_Authentication_Proxy|Apache]] oder [[HTTPS-Absicherung_%26_Authentifizierung_via_nginx_Webserver|nginx]].
Zusätzlich kann für FHEMWEB mithilfe des Attributes {{Link2CmdRef|Anker=HTTPS|Lang=de|Label=HTTPS}} eine HTTPS-Verbindung aktiviert werden. Für telnet (welches mehr oder weniger ein TCP/IP Port ist) wird das Attribut {{Link2CmdRef|Anker=SSL|Lang=de|Label=SSL}} verwendet.




Zeile 39: Zeile 43:
     attr allowedTelnet password secret
     attr allowedTelnet password secret
== Links ==
== Links ==
[[Kategorie:]]

Version vom 13. März 2018, 10:19 Uhr


Clock - Under Construction.svg An dieser Seite wird momentan noch gearbeitet.



allowed
Zweck / Funktion
Absicherung des FHEM-Servers
Allgemein
Typ Gerätemodul
Details
Dokumentation EN / DE
Support (Forum) Automatisierung
Modulname 96_allowed.pm
Ersteller rudolfkoenig / rudolfkoenig
Wichtig: sofern vorhanden, gilt im Zweifel immer die (englische) Beschreibung in der commandref!


allowed ist ein Erweiterungsmodul um Zugriffe auf den von fhem.pl bereitgestellten Serverdienst abzusichern.

Einführung

In der Grundkonfiguration kann jeder, der sich in dem selben Netzwerk[1] wie der FHEM-Server befindet, unverschlüsselt und ohne der Eingabe von Benutzerdaten auf FHEM zugreifen. FHEM weist mit einer Sicherheitswarnung auf diesen Umstand hin. Das Definieren einer allowed-Instanz ist eine Möglichkeit, die Installation abzusichern.

Daher ist es erforderlich, eine allowed-Instanz zu definieren, um

  • Zugriffe auf FHEM aus anderen Netzwerken zu ermöglichen und/oder
  • die Möglichkeiten, auf FHEM zuzugreifen für Teilnehmer desselben Netzwerks einzuschränken oder auszuschließen.

Syntax

Ein allowed-Device für ein- oder mehrere FHEMWEB oder telnet-Instanzen wird wie folgt definiert:

    define <name> allowed <deviceList>

Weitere Hinweise

Sofern FHEM nicht nur aus dem lokalen Netz erreichbar sein soll, sollten neben der Definition einer oder mehrerer allowed-Instanzen zusätzliche Sicherheitsmaßnahmen ergriffen werden. Mögliche Optionen dafür sind die Verwendung eines VPNs (Virtual Private Network) und/oder eines Reverse-Proxy-Servers mit z.B. Apache oder nginx. Zusätzlich kann für FHEMWEB mithilfe des Attributes HTTPS eine HTTPS-Verbindung aktiviert werden. Für telnet (welches mehr oder weniger ein TCP/IP Port ist) wird das Attribut SSL verwendet.


Einschränkungen

Beispiele

Festlegen eines Users samt Passwort für gängige FHEMWEB-Instanzen:

    define allowedWEB allowed
    attr allowedWEB validFor WEB,WEBphone,WEBtablet
    attr allowedWEB basicAuth { "$user:$password" eq "admin:secret" }
    attr allowedWEB allowedCommands set,get

Dasselbe für Telnet:

    define allowedTelnet allowed
    attr allowedTelnet validFor telnetPort
    attr allowedTelnet password secret

Links

  1. Haben z.B. in Ihrem Heimnetzwerk alle angeschlossenen Geräte Adressen aus dem Bereich 192.168.178.x, wäre ein Zugriff von einem Gerät mit der Adresse 192.168.178.3 zulässig, nicht aber von 192.168.179.3