Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Manufacturing Technology >> Industrietechnik

Sichere SFTP-Uploads in IEC 61131-3 mit Curl implementieren

Vor einigen Wochen erhielt ich folgende Frage: Sie müssen eine Logdatei auf einen SFTP-Server hochladen, indem Sie ein Programm verwenden, das im ESM läuft.
Das SSH File Transfer Protocol (auch Secure File Transfer Protocol oder SFTP) ist ein Netzwerkprotokoll, das Dateizugriff, Dateiübertragung und Dateimanagement über jeden zuverlässigen Datenstrom bietet. Es wurde von der Internet Engineering Task Force (IETF) als Erweiterung des Secure Shell Protocols (SSH) Version 2.0 entworfen, um sichere Dateiübertragungsfunktionen bereitzustellen.

SFTP ist in der PLCnext-Firmware enthalten, das sollte also kein Problem sein.

Schritt 1: Ich begann, eine Logdatei mit Structured Text zu erstellen. Beispiele dazu finden Sie hier:

https://www.plcnext-community.net/en/hn-makers-blog/438-datalogging-in-iec-61131-3-the-basic-principle.html
https://www.plcnext-community.net/en/hn-makers-blog/447-datalogging-in-iec-61131-3-create-your-own-file-manager.html

Schritt 2: Ich brauchte einen SFTP-Server zum Testen meiner PLC-Anwendung. Ich habe CrushFTP verwendet, das ich in einer virtuellen Maschine auf meinem Laptop installiert habe.

Nach der Installation der Software müssen Sie einen Admin-Benutzer für die Web-Oberfläche erstellen. Sobald dies erledigt ist, können Sie einen Benutzer für den PLC-Zugang erstellen.

Für dieses Beispiel: Benutzer = PLCnext, Passwort = 123456789

Schritt 3: Datei über die Kommandozeile hochladen.

Sichere SFTP-Uploads in IEC 61131-3 mit Curl implementieren

Im obigen Screenshot sehen Sie, dass wir zuerst einen Befehl eingeben und in einem zweiten Schritt das Passwort eingeben. Wenn wir diesen Vorgang mit dem „PBCL_SysLinuxShell_1“ FB automatisieren wollen, benötigen wir einen Einzeiler-Befehl.

Dieser FB findet sich in der PLCnextBase Library. (https://www.plcnextstore.com/#/720)

Also brauchen wir einen anderen Befehl für den Datei-Upload. Schauen wir uns Curl an.

Sichere SFTP-Uploads in IEC 61131-3 mit Curl implementieren

Die mit Firmware 2020.6.1 installierte Version unterstützt kein SFTP. Dank Oliver Warneke konnte ich eine andere Version von Curl installieren. Wir gehen nicht den kompletten Installationsprozess durch, aber das Ergebnis ist eine Version, die SFTP unterstützt. Mit Firmware 2021.0.0 LTS können Sie folgende Version verwenden.

Sichere SFTP-Uploads in IEC 61131-3 mit Curl implementieren

Dank Curl können wir nun einen anderen Befehl verwenden.

curl -k -sS --key ~/.ssh/id_rsa --max-time 25 --connect-timeout 10 "sftp://192.168.1.50:22/test/Upload/" --user "PLCnext:12345679" -T "/opt/plcnext/Test.pdf" --ftp-create-dirs

Wenn Sie diesen Befehl für den Shell FB verwenden, können Sie das Ergebnis in der folgenden Logdatei überprüfen.

/opt/plcnext/PLCnextBase.ServiceProvider.log

Einige Erklärungen zu den Argumenten:

Referenzen:

Industrietechnik

  1. SPICE über die Kommandozeile: Die Bedeutung des „<“-Operators
  2. Industrial IoT für Wachstum nutzen: Jenseits von Kosteneinsparungen
  3. Vier Schlüsseltests zur Bewertung der Effizienz von Leistungstransformatoren
  4. Stromausfall-Prävention: 5 essenzielle Strategien zum Schutz Ihres Unternehmens
  5. Brownout vs. Blackout: Unterschiede verstehen & Geschäftsauswirkungen
  6. Schlüsselfaktoren für die Wartungshäufigkeit von Dieselgeneratoren
  7. Passenden Notstromgenerator wählen: 4 Schlüsselfragen für zuverlässige Stromversorgung
  8. Teslas Virtual Power Plant: Transformation des globalen Energienetzes
  9. Energiemonitoring in Industrie 4.0: Effizienz steigern – Experten-Webinar
  10. Fabrikeffizienz steigern: Teamwork meistern für überlegenes Management