RevPiPyLoad an neuem Revolution Pi einrichten

Die aktuellen Revolution Pi Modelle bringen RevPiPyLoad schon ab Werk mit sich. Der Dienst kann neben der Ausführung und Überwachung eures Python Steuerungsprogramms auch beim Debuggen der IOs helfen, ermöglicht den Zugriff auf das Prozessabbild über das Netzwerk und bietet MQTT Funktionalitäten.

Dienst aktivieren

Der Dienst wird über die Revolution Pi Webseite aktiviert. Dazu geht ihr mit dem Browser eurer Wahl auf die Webseite und meldet euch dort an.

Wechselt auf den Reiter „SERVICES„.

Unten findet ihr den Dienst „Enable/Disable RevPiPyLoad„, welchen ihr mit einem Klick auf „Enabled“ und „SAVE ALL“ grundsätzlich aktiviert.

Solltet ihr auf dem Revolution Pi die GUI verwendet, findet ihr dort das Tool RevPiPyLoad / RevPiCommander. Diese Werkzeuge können auf localhost mit Port 55123 bereits auf RevPiPyLoad zugreifen (aber nur vom Revolution Pi aus).

Netzwerkzugriffe anpassen

Aus Sicherheitsgründen ist der Zugriff auf RevPiPyLoad mit den GUI-Tools im Auslieferungszustand von localhost begrenzt. Es kann also nur vom Revolution Pi aus auf den Revolution Pi zugegriffen werden.

Wenn wir nun den Komfort von RevPiPyControl / RevPiCommander von einem anderen Rechner im Netzwerk nutzen wollen, können wir selber die Konfiguration /etc/revpipycontrol/revpipycontrol.conf anspassen, oder verwenden einen Assistenten auf dem Revolution Pi.

revpipyload_secure_installation

Wechselt auf dem Revolution Pi in die Shell, entweder direkt am Pi über ein Terminal oder per SSH über das Netzwerk. Führt dort den Befehl

sudo revpipyload_secure_installation

aus und folgt den Anweisungen. In diesem Beispiel erlauben wir den Zugriff über das Netzwerk, aber nur von lokalen IP-Adressen über die GUI Tools. Die Berechtigungen der IPs können dann über das GUI Tool komfortabel angepasst werden.

This will secure your installation of RevPiPyLoad.

We found the following configuration files:
    RevPiPyLoad:   /etc/revpipyload/revpipyload.conf
    XML-RPC ACL:   /etc/revpipyload/aclxmlrpc.conf

Access with RevPiPyControl is activated from this computer only (localhost).

Do you want to allow connections from remote hosts? (y/N) y
Reset the ACL file to allow all private networks? (y/N) y

This is the actual ACL file (/etc/revpipyload/aclxmlrpc.conf):
10.*.*.*        - Level: 4      |     127.*.*.*       - Level: 4 
169.254.*.*     - Level: 4      |     172.16.*.*      - Level: 4 
172.17.*.*      - Level: 4      |     172.18.*.*      - Level: 4 
172.19.*.*      - Level: 4      |     172.20.*.*      - Level: 4 
172.21.*.*      - Level: 4      |     172.22.*.*      - Level: 4 
172.23.*.*      - Level: 4      |     172.24.*.*      - Level: 4 
172.25.*.*      - Level: 4      |     172.26.*.*      - Level: 4 
172.27.*.*      - Level: 4      |     172.28.*.*      - Level: 4 
172.29.*.*      - Level: 4      |     172.30.*.*      - Level: 4 
172.31.*.*      - Level: 4      |     192.168.*.*     - Level: 4 

Do you want to apply the new settings now? (Y/n) y
[ ok ] Reloading revpipyload configuration (via systemctl): revpipyload.service.

Der Assistent kann beliebig oft verwendet werden und ermöglicht auch die Freigabe einzelner IP-Adressen. Dafür bei Reset the ACL file to allow all private networks? „n“ wählen und im Anschluss einzelne IP-Adressen angeben.

Die GUI verwenden

Ab jetzt können sich die GUI-Tools RevPiPyControl / RevPiCommander von den den Rechnern mit den angegebenen IP-Adressen verbinden. So kann komfortabel über das Netzwerk ein IO-Check oder das Steuerungsprogramm programmiert werden.

Alle Einstellungen sind über die GUI-Tools verfügbar und können (je nach ACL Level) verändert werden.