Nall-chan / SSHClient

SSH Client for IP-Symcon

Home Page:https://community.symcon.de/t/modul-ssh-client/130090

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

SDK Version Version
License Check Style Run Tests
Spenden

SSH Client

Beschreibung des Moduls.

Inhaltsverzeichnis

1. Funktionsumfang

  • Stellt einen SSH-Client als Modul bereit
  • Unterstützt Anmeldung per Passwort als auch per privaten Schlüssel (aktuell nur RSA)
  • Optionale Validierung des Server möglich

2. Voraussetzungen

  • IP-Symcon ab Version 6.1

3. Software-Installation

Über den 'Module-Store' in IPS das Modul 'SSH-Client' hinzufügen.
Bei kommerzieller Nutzung (z.B. als Errichter oder Integrator) wenden Sie sich bitte an den Autor.
Module-Store

4. Einrichten der Instanzen in IP-Symcon

Unter 'Instanz hinzufügen' kann das 'SSH Client'-Modul mithilfe des Schnellfilters gefunden werden.
Module
- Weitere Informationen zum Hinzufügen von Instanzen in der Dokumentation der Instanzen

Konfigurationsseite

Config

Name Text Beschreibung
Address Host Adresse des SSH Servers
Username Benutzername Benutzername für die Anmeldung
CheckHost Validiere Host Benutzername für die Anmeldung
Password Passwort Passwort für die Anmeldung. Bei Verwendung eines privaten Schlüssel, wird hier das Passphrase eingetragen.
KeyFile privater Schlüssel Datei mit privatem Schlüssel

Der Button 'Anmeldung prüfen' kann zum überprüfen der Einstellungen verwendet werden.

Option: Validiere Host

Config

Über den Button 'Speichere Schlüssel des Host' kann der öffentliche Schlüssel des Host abgerufen und anschließend in der Instanz abgespeichert werden.
Anschließend steht als neue konfigurierbare Option die Auswahl 'Validiere Host' zur Verfügung.
Wird diese Einstellung aktiviert, wird bei jeder Anfrage der Schlüssel überprüft und im Fehlerfall die Verbindung abgebrochen.

Option: privater Schlüssel

Mittels eines Datei-Uploads über die Schaltfläche 'privater Schlüssel' kann der Schlüssel für die Anmeldung in Symcon hinterlegt werden.
Ist der der Schlüssel mit einem Passwort (Passphrase) gesichert, so ist Dieses im Passwort Feld einzutragen.
Aufgrund der PHP Abhängigkeit zu Symcon werden aktuell nur RSA Schlüssel unterstützt.

5. Statusvariablen

Dieses Modul erzeugt keine Statusvariablen.

6. WebFront

Dieses Modul ist nicht für die Darstellung im Webfront geeignet.

7. PHP-Funktionsreferenz

string|boolean SSHC_Execute(integer $InstanzID, string $Command);

Sendet die in $Command übergeben Befehlszeile an den Host und liefert das Ergebnis von stdOut als Rückgabewert.
Der Rückgabewert kann auch bei erfolgreichen Ausführen eine leere Zeichenkette sein.
Im Fehlerfall enthält der Rückgabewert false.
Somit ist bei der Prüfung des Rückgabewert eine typensichere Prüfung mit drei Gleichzeichen zu verwenden:

$Result = SSHC_Execute(12345, 'ls');
if ( $Result=== false){
	exit ("Fehler bei der Verbindung");
}
echo $Result;
string|boolean SSHC_ExecuteEX(integer $InstanzID, array $Command);

Sendet die in $Command übergeben Befehlszeilen an den Host und liefert ein Ergebnis als Rückgabewert.
Ansonsten gelten die gleichen Hinweise zum Rückgabewert wie bei SSHC_Execute.

$Result = SSHC_ExecuteEx(12345, ['cd /', 'ls -la']);
if ( $Result=== false){
	exit ("Fehler bei der Verbindung");
}
echo $Result;
string SSHC_GetLastError(integer $InstanzID);

Liefer den Inhalt von stdErr vom letzten Execute Befehl.

8. Aktionen

Wenn eine 'SSH Client' Instanz als Ziel einer Aktion ausgewählt wurde, steht folgende Aktion zur Verfügung:

Aktionen

  • Befehl über SSH an Host senden.

9. Anhang

1. Changelog

Version 1.00:

  • Release Version für Symcon 6.1

2. Spenden

Die Library ist für die nicht kommerzielle Nutzung kostenlos, Schenkungen als Unterstützung für den Autor werden hier akzeptiert:

PayPal:

Wunschliste:

10. Lizenz

IPS-Modul:
CC BY-NC-SA 4.0

About

SSH Client for IP-Symcon

https://community.symcon.de/t/modul-ssh-client/130090

License:Other


Languages

Language:PHP 100.0%