mirror of
https://github.com/fhem/fhem-mirror.git
synced 2024-11-22 02:59:49 +00:00
1a13fe6cd2
git-svn-id: https://svn.fhem.de/fhem/trunk@12802 2b470e98-0d58-463d-a4d8-8e2adae1ed80
438 lines
24 KiB
HTML
438 lines
24 KiB
HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
|
<html xmlns="http://www.w3.org/1999/xhtml"><head>
|
|
<title>Mit FHEM beginnen</title>
|
|
<script type="text/javascript" src="fhemdoc.js"></script>
|
|
<noscript>
|
|
<link rel="stylesheet" type="text/css" href="../www/pgm2/style.css" />
|
|
</noscript>
|
|
<meta http-equiv="Content-type" content="text/html; charset=UTF-8">
|
|
</head>
|
|
|
|
|
|
<body>
|
|
|
|
<div id="menuScrollArea">
|
|
<div id="logo"></div>
|
|
<div id="menu">
|
|
<h3>FHEM Howto</h3>
|
|
Version: <a href="HOWTO.html">EN</a> <b>DE</b>
|
|
<br>
|
|
<br>
|
|
<table class="room">
|
|
<tr><td></td></tr>
|
|
<tr><td><b>Inhalt:</b></td></tr>
|
|
<tr><td><a href="#starting">Start</a></td></tr>
|
|
<tr><td><a href="#attaching">USB Geräte</a></td></tr>
|
|
<tr><td><a href="#sensors">Sensoren</a></td></tr>
|
|
<tr><td><a href="#actors">Aktoren</a></td></tr>
|
|
<tr><td><a href="#at">At/Notify</a></td></tr>
|
|
<tr><td><a href="#logging">Daten loggen</a></td></tr>
|
|
<tr><td><a href="#plotting">Plotten</a></td></tr>
|
|
<tr><td><a href="#security">Sicherheit</a></td></tr>
|
|
<tr><td><a href="#fhemweb">Anpassungen</a></td></tr>
|
|
<tr><td><a href="#structure">Strukturen</a></td></tr>
|
|
<tr><td>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
|
|
<div id="right">
|
|
|
|
<a name="starting"></a>
|
|
<h3>Mit FHEM beginnen</h3>
|
|
<ul>
|
|
Diesen Abschnitt können Sie überspringen wenn Sie FHEM entweder mittels eines Debian-<a href="http://fhem.de/fhem-5.3.deb">Paketes</a> oder mittels
|
|
einer <a href="http://fhem.de/fhem-5.3-fb7390.image">Imagedatei</a> auf der FRITZ!Box oder mittels des <a href="http://fhem.de/fhem-5.3-fb7270.zip">Zip-Files</a> für die FRITZ!Box 7170/7270
|
|
installiert haben.
|
|
<p>Viele FHEM-Installationen verbinden die Außenwelt über ein USB-Gerät welches mit dem FHEM-Rechner verbunden ist (diese
|
|
Geräte sind z.B. CUL, FHZ1x00, TUL, EUL etc). Diese Installationen benötigen
|
|
die PERL serial-Module. In dem commandref-Abschnitt des jeweiligen USB-Gerätes sehen
|
|
Sie, ob das entsprechende Modul benötigt wird.
|
|
Sie benötigen dieses Modul nicht, wenn das Gerät über Ethernet angeschlossen wird (z.B. HM-LAN oder CUNO).</p>
|
|
<p>Wenn Sie dieses Modul benötigen, können Sie es mit dem Kommando sudo cpan Device::SerialPort nachträglich installieren. Es
|
|
gibt aber auch schon bereits vorkompilierte Debian-Pakete (libdevice-serialport-perl) und im OSX 10.5 ist das Paket auch bereits enthalten. Wenn Sie das Paket
|
|
nicht installieren können, dann schauen Sie sich die @directio-Option auf der commandref.html-Seite als mögliche Informationsquelle an.</p>
|
|
<p>Die Standard-Installation installiert FHEM in das Verzeichnis /opt/fhem.
|
|
Wenn Sie jedoch lieber in ein anderes Verzeichnis installieren wollen, so
|
|
ändern Sie das Installationsverzeichnis im Makefile von FHEM.</p>
|
|
<p>Sie können FHEM auch direkt von dem Verzeichnis wo Sie es entpackt haben starten. Um FHEM zu entpacken und gleichzeitig zu
|
|
starten geben Sie folgendes ein:</p>
|
|
<pre> make
|
|
cd /opt/fhem
|
|
perl fhem.pl fhem.cfg</pre>
|
|
|
|
<p>Danach sollten die Einträge im FHEM-Logfile des
|
|
Log-Verzeichnisses wie folgend aussehen:</p>
|
|
<pre> 2012.10.27 17:14:28 1: Including fhem.cfg
|
|
2012.10.27 17:14:28 3: WEB: port 8083 opened
|
|
2012.10.27 17:14:28 3: WEBphone: port 8084 opened
|
|
2012.10.27 17:14:28 3: WEBtablet: port 8085 opened
|
|
2012.10.27 17:14:28 1: Including /tmp/fhem.save
|
|
2012.10.27 17:14:28 3: telnetPort: port 7072 opened
|
|
2012.10.27 17:14:28 1: usb create starting
|
|
2012.10.27 17:14:28 1: usb create end
|
|
2012.10.27 17:14:28 2: SecurityCheck: ...
|
|
2012.10.27 17:14:28 0: Server started (version Fhem 5.3 ...</pre>
|
|
|
|
<p>Die Sicherheits-Warnung sagt Ihnen, dass einige der
|
|
FHEM-Webseiten ohne die Eingabe eines Passwortes geöffnet worden sind. Sie
|
|
sollten entweder ür jede Webseite, wie weiter unten angegeben, ein
|
|
Passwort festlegen oder das globale Attribut setzen um diese Meldung zu unterdrücken wenn Sie sicher sind das kein Passwort benötigt werden soll.</p>
|
|
|
|
</ul>
|
|
|
|
<a name="attaching"></a>
|
|
<h3>Anschließen des USB-Gerätes an den PC/die FRITZ!Box (CUL/FHZ1x00PC etc.)</h3>
|
|
<ul>
|
|
<p>Verbinden Sie sich mit FHEM indem Sie im Internet-Browser bei Verwendung eines normalen Desktop-Rechners
|
|
<a href="http://fhem-host:8083/fhem">
|
|
http://fhem-host:8083/fhem</a> oder bei Verwendung eines Smartphones <a href="http://fhem-host:8084/fhem">
|
|
http://fhem-host:8084/fhem</a> oder bei Verwendung eines Tablets wie dem iPad <a href="http://fhem-host:8085/fhem">
|
|
http://fhem-host:8085/fhem</a> eingeben.</p>
|
|
<p><br>
|
|
|
|
<b>Achtung:</b> In der Standardkonfiguration ür die FRITZ!Box ist die Passwortabfrage für alle FHEM-Webseiten voreingestellt. Der Benutzername
|
|
kann frei bleiben, aber das einzugebende Passwort muss dem FRITZ!Box-Passwort entsprechen</p>
|
|
<p>
|
|
In der Standard-Konfiguration sucht FHEM beim Start nach über USB verbundenen Geräten wie FHZ, CUL, COC, ZWave oder TCM und erstellt
|
|
automatisch die entsprechenden Einträge in der fhem.cfg. Schließen Sie also diese Geräte vor dem Start von FHEM an.</p>
|
|
<p>
|
|
Unter dem Betriebssystem LINUX (speziell bei der FRITZ!Box 7390) wird FHEM
|
|
versuchen einen bereits angesteckten aber noch unprogrammierten CUL zu
|
|
programmieren. Details dazu entnehmen Sie bitte den Beschreibungen der
|
|
Befehle usb und CUL flash in der commandref.html. Die neu angelegten
|
|
Geräte werden im Raum/Men?unkt Unsorted angezeigt. Achtung: Die
|
|
Umschaltung eines CUL in den HomeMatic Modus erfolgt nicht automatisch,
|
|
sondern muss manuell erfolgen.<br><br>
|
|
|
|
Um Geräte mit USB-Anschluss manuell zu definieren (oder falls FHEM diese nicht automatisch erkennt), schließen Sie das USB-Gerät (CUL,
|
|
FHZ1000PC/FHZ1300, TUL, EUL, etc) zuerst an Ihren Computer an. Dann sehen Sie im Verzeichnis /dev nach der dort entsprechend eingetragenen
|
|
Gerätebezeichnung. Für einen CUL wird eine Datei mit der Bezeichnung /dev/ttyACM* unter dem Betriebssystem LINUX und /dev/cu.usbmodem* unter dem
|
|
Betriebssystem OS x angelegt. Beachten Sie die exakte Bezeichnung des Gerätes. Definieren Sie es in FHEM, indem Sie folgenden Eintrag in die
|
|
FHEM Kommandozeile der Webseite eingeben:</p>
|
|
<pre> define CUL1 CUL /dev/ttyACM0@9600 1234</pre>
|
|
|
|
<p>Details über die Parameter zur Definition eines CUL finden Sie <a href="commandref_DE.html#CUL">hier</a></p>
|
|
|
|
<p>Ein <a href="commandref_DE.html#FHZ">FHZ-Gerät</a> wird ebenso, aber mit anderen Parametern, angelegt </p>
|
|
</p>
|
|
<pre> define FHZ1 FHZ /dev/ttyUSB0</pre>
|
|
<p>
|
|
<b>Achtung/Bemerkungen:</b> </p>
|
|
<ul>
|
|
<li>
|
|
Vergessen Sie nicht, den save-Button neben der FHEM-Befehlseingabezeile nach der Eingabe einer Gerätedefinition oder
|
|
eines Geräteattributes zu drücken. In diesem Fall werden die erfolgten Eingaben nicht in der Konfigurationsdatei gespeichert und bei einem
|
|
Neustart von FHEM nicht mehr berücksichtigt.</p>
|
|
</li>
|
|
<li>
|
|
Zur Ausführung von in der FHEM Befehlszeile eingegebenen Anweisungen drücken
|
|
Sie Enter auf der Tastatur. Betätigen des save-Buttons
|
|
führt diese eingegebenen Anweisungen nicht aus.</p>
|
|
</li>
|
|
<li>
|
|
Sie erhalten den CUL vom Hersteller ohne Firmware. Sie können ihn
|
|
mittels des CULflash Kommandos programmieren wenn das Programm dfu-programmer
|
|
im Verzeichnis fhem vorhanden ist. Das Programm dfu-programmer ist Bestandteil des Images für die FRITZ!Box 7390.</span></li></ul>
|
|
</ul>
|
|
|
|
<h3>
|
|
Konfiguration der Sender (Sensoren)</h3>
|
|
<ul>
|
|
<p>Viele funkgesteuerte Geräte werden in der default-Konfiguration wegen
|
|
der voreingestellten autocreate-Funktion automatisch erstellt.</p>
|
|
<p>Diese Funktion erstellt automatisch diese Geräteeintragungen bei Empfang einer Nachricht von diesen Geräten (z.B.
|
|
eines Sensors wie dem S300 oder FHT). Bitte warten Sie eine gewisse Zeit, beobachten Sie die Logeinträge und aktualisieren Sie Ihren Browser um neu
|
|
erreichte Geräte angezeigt zu bekommen. Sie können den Befehl rename benutzen, um automatisch erstellte Geräteeinträge umzubenennen. Geben Sie
|
|
den Befehl mit den entsprechenden Parametern in der Befehlszeile der Webseite ein. Z.B.:</p>
|
|
<br>
|
|
<ul>
|
|
<code>rename FHT_1234 fht.kitchen
|
|
</code></ul>
|
|
<br>
|
|
<b>Achtung:</b>
|
|
Wenn Sie das Gerät selbst umbenennen, werden auch die zugehörigen Logfiles und Weblinks automatisch mit umbenannt. Wenn Sie entweder die Weblinks
|
|
oder Logfiles selbst umbenennen, werden die zugehörigen Geräte nicht mit umbenannt!<br><br>
|
|
|
|
Wenn Sie das Gerät manuell umbenennen wollen, dann gehen Sie folgendermaßen vor:<br>
|
|
<p>Warten Sie eine Weile bis Daten übertragen werden. Im Logfile (zu erreichen unter Webseite Menüpunkt Unsorted-> FileLog -> Logfile ->
|
|
text) erscheint z.B. folgende Textzeile:</p>
|
|
<ul><code>
|
|
FS20 Unknown device <HOUSECODE>, Button <BTN> Code
|
|
<CDE>, please define it
|
|
</code></ul>
|
|
|
|
<p>Definieren Sie dieses neue Gerät mittels folgendem Eintrag:</p>
|
|
<ul><code>
|
|
define piri1 FS20 <HOUSECODE> <BTN>
|
|
</code></ul>
|
|
|
|
<p>Setzen sie das model-Attribut des Gerätes: </p>
|
|
<ul><code>
|
|
attr piri1 model fs20piri
|
|
</code></ul>
|
|
|
|
<p>um nur die für dieses Gerät verfügbaren Attribute angezeigt zu bekommen.
|
|
<a href="commandref_DE.html#model">Hier</a> sehen Sie eine
|
|
komplette Liste der FS20 Modelle.<br>
|
|
Bei einem anderen neuen Geräten sollte eine ähnliche Nachricht im Logfile
|
|
erscheinen.</p>
|
|
<p>HomeMatic Geräte müssen nicht mit FHEM gepairt werden, andererseits wird FHM solche Geräte
|
|
nur automatisch eintragen wenn es eine pairing-Anfrage erhält. Dazu müssen Sie FHEM
|
|
mit dem Befehl set CUL hmPairForSec 600 in Empfangsbereitschaft versetzen.
|
|
Gleiches Vorgehen gilt für das pairing von ZWave-Geräten</p>
|
|
</ul>
|
|
|
|
<a name="actors"></a>
|
|
<h3>Konfiguration von Empfängern (Aktoren)</h3>
|
|
<ul>
|
|
Definieren Sie das <a href="commandref_DE.html#FS20">FS20</a> Gerät mit z.B folgendem Eintrag in die fhem.cfg:</p>
|
|
<pre> define lamp1 FS20 1234 56</pre>
|
|
|
|
<p>Dann drücken Sie den Anmeldeknopf an dem Gerät solange, bis die LED blinkt. Anschließend klicken sie auf den on Link
|
|
auf der FHEM Webseite um das Kommando zu senden. Die LED sollte aufhören zu blinken. Das Gerät ist nun auf den Hauscode 1234 Gerätecode 56
|
|
programmiert. Sie können alternativ die 4-base ELV-Notation benutzen.
|
|
Anschließend können Sie modellspezifische Attribute ür das Gerät setzen.
|
|
Z.B.:</p>
|
|
<pre> attr lamp1 model fs20st</pre>
|
|
|
|
<p>Mit diesem Eintrag bekommen Sie nunmehr nur die für dieses Gerät relevanten Kommandos angezeigt</p>
|
|
<p>Andere Systeme (EnOcean/HomeMatic/ZWave) brauchen eine umfangreichere Prozedur und das entsprechende Gerät
|
|
muss zuerst in den pairing mode versetzt werden. Bitte sehen Sie sich den entsprechenden Eintrag auf der commandref.html-Seite für Ihr Gerät zur
|
|
Information an. </p>
|
|
<p>Das automatische oder manuelle eintragen von FHT/HomeMatic/EnOcean-Geräten in FHEM bedeutet nicht automatisch, dass der CUL oder die FHZ mit FHEM gepairt
|
|
ist.</p>
|
|
<ul>
|
|
<li>FHT:<br>
|
|
Damit FHT neue Geräte akzeptiert aktivieren Sie am FHT mit Prog:Cent:N/A
|
|
und senden Sie ein Kommando an FHT (z.B. set fht.kitchen desired-temp 20).
|
|
Wenn das Signal nach einer Weile nicht eingetroffen ist, lesen Sie sich
|
|
bitte den entsprechenden Eintrag in den FAQ durch.<br>
|
|
</li>
|
|
<li>HomeMatic:<br>
|
|
Versetzen Sie den CUL/HMLAN in den pairing-Modus mit dem Befehl:<ul><code>
|
|
set CUL hmPairForSec 600
|
|
</code></ul>
|
|
<p>Dann drücken Sie den Anmeldeknopf am HomeMatic-Gerät. Wenn das pairing
|
|
erfolgreich war sehen Sie CommandAccepted:
|
|
yes im Detailfenster des Gerätes auf der FHEM Webseite.</li></ul>
|
|
</ul>
|
|
|
|
|
|
<a name="at"></a>
|
|
<h3>Zeitabhängige Kommandos (at)/Notifikationen (notify, watchdog)</h3>
|
|
<ul>
|
|
Um at-Kommandos zu einer bestimmten Zeit/periodisch
|
|
auszuführen müssen Sie Geräte vom Typ at definieren. Entsprechende Beispiele und Definitionen finden Sie <a href="commandref_DE.html#at">hier</a>.</p>
|
|
<br><br>
|
|
|
|
Um Kommandos ausführen zu lassen wenn ein Gerät eine Nachricht aussendet, müssen Sie Geräte vom Typ <a href="commandref_DE.html#notify">notify</a> oder
|
|
<a href="commandref_DE.html#watchdog">watchdog</a> definieren.
|
|
Um die in FHEM auftretenden Ereignisse besser zu verstehen/erkennen sollten Sie eine Telnet-Verbindung zu Ihrem FHEM aufbauen. </span>
|
|
Geben Sie z.B. in der Eingabeaufforderung folgendes ein:<ul> <p>
|
|
<code>
|
|
telnet <fhemhost> 7072
|
|
</code></p>
|
|
</ul><br>
|
|
|
|
Nachdem die Verbindung aufgebaut wurde geben Sie ein:<br><br><ul><code>
|
|
inform timer
|
|
</code></ul><br>
|
|
|
|
Nun sehen Sie in dieser telnet-Verbindung alle Ereignisse wie z.B.:<p> </p>
|
|
<ul><code>
|
|
2011-12-16 21:51:55 FS20 myPiri on-for-timer 120
|
|
</code></ul><br>
|
|
Gemäß diesem Eintrag können Sie eine Aktion wie folgt definieren:<br><br><ul><code>
|
|
define lampNotify notify myPiri set myLamp on
|
|
</code></ul>
|
|
oder
|
|
<ul><code>
|
|
define lampNotify notify myPiri:on.* set myLamp on
|
|
</code></ul><br>
|
|
Um dieses notify zu testen können Sie die Ereignisse unter Verwendung des trigger-Kommandos simulieren. <span lang="EN-US">Z.B.:</span><p> </p>
|
|
<ul><code>
|
|
trigger myPiri on-for-timer 120
|
|
</code></ul><br>
|
|
|
|
<p>at, notify und watchdog verwenden entweder vordefinierte FHEM-Kommandos, SHELL-Scripte
|
|
oder PERL-oneliners
|
|
als Argumente. Für Details und Tipps für perl onliners lesen Sie bitte die <a href="commandref_DE.html#perl">PERL-specials</a> Abschnitte in der commandref.html.</p>
|
|
|
|
</ul>
|
|
|
|
<a name="logging"></a>
|
|
<h3>Daten loggen</h3>
|
|
<ul>
|
|
Um Daten/Nachrichten/Ereignisse in einer Datei zu speichern müssen Sie ein Gerät vom Typ <a href="commandref_DE.html#FileLog">FileLog</a>
|
|
anlegen. Die Funktion autocreate erstellt
|
|
für neu erkannte Geräte automatisch eine Logdatei. Sie können jedoch die Funktion <a href="commandref_DE.html#createlog">createlog</a> nutzen, um später eine weitere Logdatei
|
|
hinzuzuügen.
|
|
<p>Um Daten/Nachrichten/Ereignisse in einer Datenbank zu speichern informieren Sie sich im Verzeichnis contrib/dblog der FHEM Distribution.</p>
|
|
<p><br>
|
|
|
|
FHEMWEB hat eine vordefinierte Funktionen Anzeige von Dateien des Typs FileLog.
|
|
Weitere Informationen im folgenden Abschnitt <a href="#plot">plot</a>.
|
|
</p>
|
|
<p>
|
|
Die Geräte einer jeden Logdatei (<a href="commandref_DE.html#FileLog">FileLog</a>)wird durch die eingegebenen Logkriterien (z.B. Jahr/Monat/Woche/Tag)
|
|
bestimmt. Sie k?nen das Archivieren mit den Attributen <a href="commandref_DE.html#nrarchive">nrarchive</a></span><span style="font-size: 11.0pt; line-height: 115%; font-family: Arial,sans-serif">
|
|
oder <a href="commandref_DE.html#archivedir">archivecmd</a> erlauben.
|
|
</p>
|
|
</ul>
|
|
|
|
<a name="plotting"></a>
|
|
<h3>Inhalte von Logdateien plotten (zeichnen)</h3>
|
|
<ul>
|
|
<p>Die Funktion autocreate erstellt Weblinks (d.h. Plots) für neu erkannte Geräte. Der folgende Abschnitt beschreibt wie man
|
|
z.B. Plots von unterschiedlichen Sensoren gemeinsam ausgibt.</p>
|
|
<p>Die Daten für einen Plot stammen jeweils aus seiner FileLog-Datei. ändern Sie ggf. die Filterkriterien (regexp) wenn noch andere Daten geplottet werden sollen. Als nächsten Schritt setzen Sie das <a href="commandref_DE.html#logtype">logtype</a>
|
|
Attribut des FileLog. Damit bestimmen Sie, welche Plotvorlagedatei (.gplot) benutzt werden soll. Die
|
|
übersicht über die vorhandenen gnuplot-Dateien
|
|
finden Sie unter dem Men?unkt Edit files. Die gnuplot-Dateien enthalten die zugehörigen FileLog Beispiele.</p>
|
|
<p>Beachten Sie bitte, dass die .gnuplot-Dateien ebenfalls bei der Darstellung von SVG anstelle des Gnuplot Backends benutzt werden. </span>
|
|
</p>
|
|
<p>
|
|
Die gnuplot-Dateien müssen #Filelog-Einträge haben, damit sie mit gnuplot scroll oder SVG benutzt werden können (Diese Zeilen werden von gnuplot,
|
|
aber nichrt von FHEM, als Kommentare behandelt). Wenn die Auswahl mittels der FileLog get-Funktion erfolgen soll, dann lesen Sie sich für die
|
|
Syntax die mitgelieferten gnuplot-Dateien oder den column_spec Abschnitt hier durch.</p>
|
|
<p>
|
|
Beispiele:</p>
|
|
<pre> attr em1000log logtype power8:Power,text
|
|
attr fs20_log logtype fs20:Plot,text
|
|
attr hms100th_log logtype temp4hum6:Plot,text
|
|
</pre>
|
|
|
|
<p>Lassen Sie sich das Diagramm (/denPlot) anzeigen, indem Sie darauf klicken und erstellen Sie einen <a href="commandref_DE.html#weblink">Weblink</a> der seine eigenen
|
|
Attribute hat. Wenn der Weblink zur aktuellen Logdatei gehört, dann wird er als aktueller Weblink gespeichert und angezeigt (Sie müssen ihn nicht
|
|
erneut definieren, wenn sich in seinem Dateinamen die Bezeichnungen für
|
|
Jahr/Monat/Datum ändern).</p>
|
|
<p>Die Logs können entweder mit gnuplot (welches im aktuellen Pfad installiert sein muss), oder mittels des im Programm
|
|
enthaltenen SVG-Moduls erstellt werden. In diesem Fall muss Ihr Browser SVG unterstützen. Alle Browser unterstützen SVG, ausser dem Internet
|
|
Explorer vor der Version 9 und Android vor der Version 3.0. Wenn Sie ein Gerät mit diesen Android-Versionen benutzen, dann versuchen Sie bitte als
|
|
Browser Opera oder Firefox.</p>
|
|
<p><br>Der voreingestellte Modus ist SVG. Um das zu ändern, setzen Sie die <a href="commandref_DE.html#plotmode">plotmode</a>
|
|
Attribute auf gnuplot oder gnuplot scroll.<br><br>
|
|
|
|
Um ältere Daten anzeigen zu lassen, erstellen Sie bitte einen anderen
|
|
Weblink und setzen das fixedrange-Attribut auf z.B.:</p>
|
|
<ul><code>
|
|
attr weblink_1 fixedrange 2006-01-01 2007-01-01
|
|
</code></ul>
|
|
<p>Um fremde (nicht unter FHEM erfasste) Daten als Plot oder als normalen
|
|
Text anzuzeigen, erstellen Sie bitte ein fake-Logfile
|
|
mit dem korrekten Dateinamen und einer unbenutzten regexp, z.B.: </p>
|
|
<pre> define messages FileLog /var/log/messages fakelog</pre>
|
|
</ul>
|
|
|
|
|
|
|
|
|
|
<a name="security"></a>
|
|
<h3>Sicherheit</h3>
|
|
<ul>
|
|
<li>
|
|
<p>Beide Standard TCP/IP Weboberflächen in FHEM (telnet und FHEMWEB) k?nen mit einem Passwort und zusätzlich mit
|
|
Verschlösselung (HTTPS/SSL) gesichert werden.</p>
|
|
<ul>
|
|
<li>für <a href="commandref_DE.html#FHEMWEB">FHEMWEB</a>
|
|
benutzen Sie die
|
|
<a href="commandref_DE.html#basicAuth">basicAuth</a>
|
|
und
|
|
<a href="commandref_DE.html#HTTPS">HTTPS</a>
|
|
Attribute
|
|
</li><li>für <a href="commandref_DE.html#telnet">telnet</a> (welches
|
|
mehr oder weniger ein TCP/IP Port ist) benutzen Sie die
|
|
<a href="commandref_DE.html#password">password</a> und
|
|
<a href="commandref_DE.html#SSL">SSL</a> Attribute
|
|
</li></ul>
|
|
<p>Das ist jedoch nicht der Standard für die meisten Konfigurationen und es ist der Grund weshalb Sie eine
|
|
Sicherheitswarnung nach der Installation erhalten.</p>
|
|
<br></li>
|
|
|
|
<li>
|
|
<p>Ein anderer Weg, einen sicheren Zugriff von Aussen auf FHEM zu erhalten, ist es eine VPN-Verbindung zu verwenden. Die
|
|
Verbindung z.B. zu einer FRITZ!Box mittels VPN funktioniert sowohl für Geräte mit iOS als auch mit Android Betriebssystemen obwohl letzteres im
|
|
Setup komplizierter ist.</p>
|
|
<br></li>
|
|
|
|
<li>
|
|
<p>Sie können FHEM ebenfalls durch Nutzung eines Apache-Servers absichern, indem Sie basicAuth/HTTPS als Prefix
|
|
für Ihre FHEMWEB Instanz aktivieren. Fügen Sie die folgenden Zeilen ihrer Datei http.conf des Apache-Servers hinzu.</p>
|
|
<pre> <Proxy *>
|
|
AuthType Basic
|
|
AuthName "Password Required"
|
|
AuthUserFile /home/httpd/etc/passwd
|
|
Require valid-user
|
|
Allow from 127.0.0.1
|
|
</Proxy>
|
|
ProxyPass /fhem http://localhost:8083/fhem
|
|
ProxyPassReverse /fhem http://localhost:8083/fhem</pre>
|
|
|
|
Dann starten Sie den Apache-Server erneut mit dem Kommando apachectl
|
|
graceful. Um die Passwortdatei zu erzeugen geben Sie bitte folgende
|
|
Befehlszeile ein:
|
|
<ul><code>
|
|
htpasswd -c /home/httpd/etc/passwd <username>
|
|
</code></ul>
|
|
Eine ausführlichere Dokumentation findet man <a
|
|
href="http://fhemwiki.de/wiki/Apache_Authentication_Proxy">hier</a>, eine
|
|
noch bessere, mit client/server Zertifikaten <a
|
|
href="https://gist.github.com/gbirke/8608543">hier</a>.
|
|
<br><br>
|
|
|
|
Um das Protokoll HTTPS zu verwenden editieren Sie die http.conf folgendermaßen:<p>
|
|
<br>
|
|
<ul>
|
|
<li>fügen Sie folgende Zeilen hinzu:
|
|
<pre>LoadModule ssl_module lib/apache/mod_ssl.so
|
|
Include /etc/httpd/conf/ssl.conf</pre></li>
|
|
<li>erstellen Sie ein Server-Zertifikat</li>
|
|
</ul>
|
|
<p> <ul>
|
|
<li>
|
|
<p>Starten Sie den httpd-Deamon mit der startssl-Option (SSL muss in einer Ihrer Systemdateien, z.B. /etc/init.d/http),
|
|
gesetzt sein.</li>
|
|
</ul>
|
|
</li></ul>
|
|
|
|
<a name="fhemweb"></a>
|
|
<h3>FHEMWEB (pgm2) anpassen</h3>
|
|
<ul>
|
|
<p>Es macht Sinn, Ihre Geräte in Räumen zu gruppieren, indem Sie das group-Attribut setzen. FHEMWEB zeigt Geräte
|
|
ohne Raum-Attribut im Raum (Menüpunkt) Unsorted. Fügen Sie Geräten das hidden Raumattribut
|
|
hinzu, so werden diese Geräte nicht auf der Webseite
|
|
angezeigt.</p>
|
|
<br>
|
|
|
|
Sie können ein kürzeres Menü auf der Webseite erzeugen, indem Sie
|
|
Menüpunkte die nicht angezeigt werden sollen mit dem Attribut <a href="commandref_DE.html#hiddenroom">hiddenroom</a>
|
|
versehen.<p><br>
|
|
|
|
Farben und Schriften können Sie durch Anpassung der Datei style.css ändern
|
|
(Edit files -> style.css) oder Sie erstellen Ihren eigenen Stil (siehe
|
|
auch <a href="commandref_DE.html#stylesheetPrefix">stylesheetPrefix</a>)
|
|
dann wird Ihr neuer Stil auch nicht beim nächsten Ausführen des <a href="commandref_DE.html#updatefhem">update</a><span style="font-size: 11.0pt; line-height: 115%; font-family: Arial,sans-serif">-Kommandos
|
|
überschrieben.
|
|
<br><br>
|
|
</p>
|
|
</ul>
|
|
|
|
|
|
<a name="structure"></a>
|
|
<h3>Komplexe Strukturen</h3>
|
|
<ul>
|
|
<p>
|
|
Definieren Sie Ihre Geräte in verschiedenen Räumen. Dann können Sie die room=<roomname> Spezifikation verwenden um gleichzeitig verschiedene Geräte auf einmal anzusprechen. Details entnehmen sie bitten dem <a href="commandref_DE.html#devspec">
|
|
devspec</a>
|
|
Abschnitt.</p>
|
|
<p>Für noch komplexere Szenarien informieren sie sich bitte über das <a href="commandref_DE.html#structure">structure</a>-Modul.
|
|
Sie können verschiedene Ebenen wie Flure, Gebäude usw. definieren und alle
|
|
Geräte einer definierten Struktur auf einmal ansprechen.</p>
|
|
</ul>
|
|
|
|
</div>
|
|
|
|
|
|
</body></html>
|