Anleitung zur Installation der CCU auf einem x86 system (Part 2 inkl. HMIP)
Moderator: Co-Administratoren
-
- Beiträge: 2501
- Registriert: 13.02.2012, 20:23
- System: Alternative CCU (auf Basis OCCU)
- Hat sich bedankt: 307 Mal
- Danksagung erhalten: 121 Mal
Re: Anleitung zur Installation der CCU auf einem x86 system (Part 2 inkl. HMIP)
Danke für das Installation script ich mache mich mal wieder an eine ESX Installation.
habe aber nach dem reboot das Problem das kurz die Anzeige kommt das die CCU startet danach bekomme ich nur noch eine weiße Seite angezeigt mehr aber auch nicht.
Die Installation ist nackt, kein Backup oder sonstiges ist eingespielt
cixd ist unter /addons/cuxd/index.ccc?m=0 erreichbar
edit: Weiterleitung auf /pages/index.htm geht nicht!
die Oberfläche ist das Danke
habe aber nach dem reboot das Problem das kurz die Anzeige kommt das die CCU startet danach bekomme ich nur noch eine weiße Seite angezeigt mehr aber auch nicht.
Die Installation ist nackt, kein Backup oder sonstiges ist eingespielt
cixd ist unter /addons/cuxd/index.ccc?m=0 erreichbar
edit: Weiterleitung auf /pages/index.htm geht nicht!
die Oberfläche ist das Danke
-
- Beiträge: 518
- Registriert: 20.01.2011, 14:39
- Hat sich bedankt: 5 Mal
- Danksagung erhalten: 4 Mal
Re: Anleitung zur Installation der CCU auf einem x86 system (Part 2 inkl. HMIP)
Das hat vermutlich mit der neuesten ReGaHss-Beta Version zu tun. Die scheint einen Bug zu haben.
Aendere das Startscript... /opt/start.sh
Suche die Zeile:
/bin/ReGaHss -f /etc/config/rega.conf -l 2 &
und aendern auf:
/bin/ReGaHss.community -f /etc/config/rega.conf -l 2 &
Oder versuch den Ansatz:
viewtopic.php?f=56&t=47718
Aendere das Startscript... /opt/start.sh
Suche die Zeile:
/bin/ReGaHss -f /etc/config/rega.conf -l 2 &
und aendern auf:
/bin/ReGaHss.community -f /etc/config/rega.conf -l 2 &
Oder versuch den Ansatz:
viewtopic.php?f=56&t=47718
Re: Anleitung zur Installation der CCU auf einem x86 system (Part 2 inkl. HMIP)
Hallo quickmic,
gibt es einen speziellen Grund, warum du remserial verwendest? Es graust mir schon etwas, wenn über eine http (nicht https) verbindung dateien heruntergeladen, dann kompiliert und als root ausgeführt werden.
ser2net hat die gleiche Funktionalität und ist im debian repo.
weiterhin unterstützt ser2net hosts_access Dateien d.h., man kann einschränken, welche hosts auf den serial port zugreifen können. derzeit kann einfach jeder im netzwerk auf den serial port zugreifen.
davon abgesehen wäre es grundsätzlich sowieso sinnvoll, remserial/ser2net mit einem normalen (service-)user anstatt root auszuführen.
gibt es einen speziellen Grund, warum du remserial verwendest? Es graust mir schon etwas, wenn über eine http (nicht https) verbindung dateien heruntergeladen, dann kompiliert und als root ausgeführt werden.
ser2net hat die gleiche Funktionalität und ist im debian repo.
weiterhin unterstützt ser2net hosts_access Dateien d.h., man kann einschränken, welche hosts auf den serial port zugreifen können. derzeit kann einfach jeder im netzwerk auf den serial port zugreifen.
davon abgesehen wäre es grundsätzlich sowieso sinnvoll, remserial/ser2net mit einem normalen (service-)user anstatt root auszuführen.
Re: Anleitung zur Installation der CCU auf einem x86 system (Part 2 inkl. HMIP)
Alternativ könnte man auch socat verwenden. Dies unterstützt, den Datenverkehr mit openssl zu verschlüsseln.
-
- Beiträge: 518
- Registriert: 20.01.2011, 14:39
- Hat sich bedankt: 5 Mal
- Danksagung erhalten: 4 Mal
Re: Anleitung zur Installation der CCU auf einem x86 system (Part 2 inkl. HMIP)
remserial verwende ich im Moment nur deshalb, weil ichs dort am Schnellsten hinbekommen habe.
ser2net hatte ich versucht aber lief nicht auf Anhieb. Vermutlich hatte ich Parameter falsch gesetzt.
Ich vermute aber, das nichts dagegen spricht zu wechseln. Hast du ser2net ans Laufen gebracht? Wenn ja, baue ich sofort um falls du mir die Kommandos posten kannst.
Ps:
Zumindest in der neuen Anleitung wird das Runterladen und selber Kompilieren weg fallen.
Aber die ist noch nicht vor Produktiveinsatz gedacht. Ich bau da noch zu viel Grundlegendes um.
ser2net hatte ich versucht aber lief nicht auf Anhieb. Vermutlich hatte ich Parameter falsch gesetzt.
Ich vermute aber, das nichts dagegen spricht zu wechseln. Hast du ser2net ans Laufen gebracht? Wenn ja, baue ich sofort um falls du mir die Kommandos posten kannst.
Ps:
Zumindest in der neuen Anleitung wird das Runterladen und selber Kompilieren weg fallen.
Aber die ist noch nicht vor Produktiveinsatz gedacht. Ich bau da noch zu viel Grundlegendes um.
Re: Anleitung zur Installation der CCU auf einem x86 system (Part 2 inkl. HMIP)
Hey,
ich habe heute den ganzen Tag mit socat's openssl Funktionalität gebastelt. Inzwischen läuft es perfekt.
Das ist für mich die beste Lösung, da der Traffic verschlüsselt ist und die clients sich gegenseitig authentifizieren.
/etc/systemd/system/socat-homematic.service: (auf occu)
/etc/systemd/system/socat-homematic.service: (auf dem pi)
Zertifikate und keys auf dem PI erstellen:
Zertifikate und keys auf occu:
Aktivieren auf pi: systemctl start socat-homematic
Aktivieren auf occu: systemctl start socat-homematic@pi
ich habe heute den ganzen Tag mit socat's openssl Funktionalität gebastelt. Inzwischen läuft es perfekt.
Das ist für mich die beste Lösung, da der Traffic verschlüsselt ist und die clients sich gegenseitig authentifizieren.
/etc/systemd/system/socat-homematic.service: (auf occu)
Code: Alles auswählen
[Unit]
Description=Socat remote hm/hmip tty
After=network.target
[Service]
Type=simple
# apparantly NEEDS to be /dev/ttyS[0-9]+ format. using /dev/ttyS-pi or similar leads
# to hm-copro.jar crashing
# commonname= is required, because (server-)cert has an empty commonname field and peer verification therefore fails using the remote hostname.
# peer authentication is already achieved through the cafile.
ExecStart=/usr/bin/socat -d -d pty,link=/dev/ttyS1000,raw openssl-connect:%i:2000,cert=/etc/ssl/homematic-socat/client.crt,key=/etc/ssl/homematic-socat/client.key,cafile=/etc/ssl/homematic-socat/%i.crt,forever,commonname=
Restart=always
RestartSec=1s
[Install]
WantedBy=multi-user.target
Code: Alles auswählen
[Unit]
Description=Socat remote hm/hmip tty
After=network.target
[Service]
Type=simple
ExecStart=/usr/bin/socat -d -d /dev/ttyUSB0,b115200,raw,echo=0 openssl-listen:2000,cert=/etc/ssl/homematic-socat/server.crt,key=/etc/ssl/homematic-socat/server.key,cafile=/etc/ssl/homematic-socat/client.crt,reuseaddr
Restart=always
RestartSec=1s
[Install]
WantedBy=multi-user.target
Code: Alles auswählen
mkdir /etc/ssl/homematic-socat/
openssl genrsa -out /etc/ssl/homematic-socat/server.key 4096
openssl req -new -key /etc/ssl/homematic-socat/server.key -x509 -days 3653 -out /etc/ssl/homematic-socat/server.crt
scp /etc/ssl/homematic-socat/server.crt root@pi:/etc/ssl/homematic-socat/pi.crt
Code: Alles auswählen
mkdir /etc/ssl/homematic-socat/
openssl genrsa -out /etc/ssl/homematic-socat/client.key 4096
openssl req -new -key /etc/ssl/homematic-socat/client.key -x509 -days 3653 -out /etc/ssl/homematic-socat/client.crt
scp /etc/ssl/homematic-socat/client.crt root@pi:/etc/ssl/homematic-socat/client.crt
Aktivieren auf occu: systemctl start socat-homematic@pi
Zuletzt geändert von ant am 26.12.2018, 12:38, insgesamt 1-mal geändert.
-
- Beiträge: 518
- Registriert: 20.01.2011, 14:39
- Hat sich bedankt: 5 Mal
- Danksagung erhalten: 4 Mal
Re: Anleitung zur Installation der CCU auf einem x86 system (Part 2 inkl. HMIP)
Code: Alles auswählen
ich habe heute den ganzen Tag mit socat's openssl Funktionalität gebastelt.
Ich teste das asap und bau das dann gleich mit ein.
-
- Beiträge: 518
- Registriert: 20.01.2011, 14:39
- Hat sich bedankt: 5 Mal
- Danksagung erhalten: 4 Mal
Re: Anleitung zur Installation der CCU auf einem x86 system (Part 2 inkl. HMIP)
Ich versuch grade deine Loesung einzubauen.
Erster Step ist die Key Generierung und dann certificate-exchange bevor ich mit socat weitermache.
Im Moment grüble ich grade, wie das benutzerfreundlich ins Install-script einzubauen ist.
Erstens bei Key/Certificate-Generieung hab ich auf...
...umgebaut. Das unterdrueckt die Abfragen des Countrycodes etc.
Beim Keyaustausch via scp wird was schon schwerer.
Ich will den Benutzern nicht zuviel zumuten, daher muss das vollautomatisch laufen.
Problem im Moment ist noch, dass vor dem Austausch beide Devices online sein muessen.
Ziel ist z.b. Raspi down, CCU installation. scp push klappt also noch nicht.
Dann Raspi-Install, Host waere schon Up.
Ich koennte also beim Raspi-Install das Password vom Host als Eingabe abfragen, kein Problem.
Aber egal wie ich das drehe, eines der Gerate wir beim der ersten Install offline sein.
Irgendeine Idee? Password will ich nicht speichern anfangen, um z.b. bei jedem Boot das certificate rauszupushen.
EDIT:
Loesung:
Raspi Installieren mit:
CCU Installieren mit:
Raspi muss zuerst laufen... Oder halt genau umgekehrt.
Erster Step ist die Key Generierung und dann certificate-exchange bevor ich mit socat weitermache.
Im Moment grüble ich grade, wie das benutzerfreundlich ins Install-script einzubauen ist.
Erstens bei Key/Certificate-Generieung hab ich auf...
Code: Alles auswählen
openssl req -new -key /etc/ssl/homematic-socat/client.key -x509 -days 100000 -subj /C=EN -out /etc/ssl/homematic-socat/client.crt
Beim Keyaustausch via scp wird was schon schwerer.
Ich will den Benutzern nicht zuviel zumuten, daher muss das vollautomatisch laufen.
Problem im Moment ist noch, dass vor dem Austausch beide Devices online sein muessen.
Ziel ist z.b. Raspi down, CCU installation. scp push klappt also noch nicht.
Dann Raspi-Install, Host waere schon Up.
Ich koennte also beim Raspi-Install das Password vom Host als Eingabe abfragen, kein Problem.
Aber egal wie ich das drehe, eines der Gerate wir beim der ersten Install offline sein.
Irgendeine Idee? Password will ich nicht speichern anfangen, um z.b. bei jedem Boot das certificate rauszupushen.
EDIT:
Loesung:
Raspi Installieren mit:
Code: Alles auswählen
openssl genrsa -out /etc/ssl/homematic-socat/server.key 4096
openssl req -new -key /etc/ssl/homematic-socat/server.key -x509 -days 100000 -subj /C=EN -out /etc/ssl/homematic-socat/server.crt
Code: Alles auswählen
openssl genrsa -out /etc/ssl/homematic-socat/client.key 4096
openssl req -new -key /etc/ssl/homematic-socat/client.key -x509 -days 100000 -subj /C=EN -out /etc/ssl/homematic-socat/client.crt
scp /etc/ssl/homematic-socat/client.crt root@192.168.0.107:/etc/ssl/homematic-socat/client.crt
scp root@192.168.0.107:/etc/ssl/homematic-socat/server.crt /etc/ssl/homematic-socat/server.crt
Re: Anleitung zur Installation der CCU auf einem x86 system (Part 2 inkl. HMIP)
Ich hab das genauso gelöst wie du. Ich habe es genau andersherum gelöst. Ich gehe davon aus, dass die OCCU immer zuerst eingerichtet wird und danach der raspi. Macht ja auch Sinn.
-
- Beiträge: 518
- Registriert: 20.01.2011, 14:39
- Hat sich bedankt: 5 Mal
- Danksagung erhalten: 4 Mal
Re: Anleitung zur Installation der CCU auf einem x86 system (Part 2 inkl. HMIP)
Ja hast du Recht, werde ich wahrscheinlich auch umbauen.
Ausserdem werde ich die config (IP) vom Raspi auf die CCU pushen und nicht auf der CCU bei der Installation reinkonfigurieren per Abfrage.
Im Moment schaut das Startscript der CCU nach, ob das File "/var/status/HMIPremserialhost" vorhanden ist.
Wenn ja, ließt das Startscript aus der Datei die IP des Raspi-Hosts.
Waere auch sinnvoller, dass bei Raspi-Installation die /var/status/HMIPremserialhost gleich in die CCU reinkopiert wird.
Ps;
Der name HMIPremserialhost ist auch eine Altlast
Ausserdem werde ich die config (IP) vom Raspi auf die CCU pushen und nicht auf der CCU bei der Installation reinkonfigurieren per Abfrage.
Im Moment schaut das Startscript der CCU nach, ob das File "/var/status/HMIPremserialhost" vorhanden ist.
Wenn ja, ließt das Startscript aus der Datei die IP des Raspi-Hosts.
Waere auch sinnvoller, dass bei Raspi-Installation die /var/status/HMIPremserialhost gleich in die CCU reinkopiert wird.
Ps;
Der name HMIPremserialhost ist auch eine Altlast