FHEM Forum

FHEM => Automatisierung => Thema gestartet von: laserrichi am 25 April 2017, 13:58:12

Titel: Shell Script in Linux und Rückmeldung über Port 7072 mit Passwort
Beitrag von: laserrichi am 25 April 2017, 13:58:12
Hallo,
ich lasse automatisch täglich ein Backup laufen, dazu rufe ich ein Shell Skript im Linux auf, das funktioniert wunderbar.
Wenn ich jedoch den telnet port 7072 mit Passwort dicht mache, bekomme ich vom Skript in Fhem nichts mehr rein.
Wie muss ich da vorgehen, was muss ich da einrichten ?

Bisher läuft es so:
perl /opt/fhem/fhem.pl 7072 "set FHEM.Backup off"
perl /opt/fhem/fhem.pl 7072 "setreading FHEM.Backup info backup done"

irgendjemand eine Idee ?
Titel: Antw:Shell Script in Linux und Rückmeldung über Port 7072 mit Passwort
Beitrag von: betateilchen am 25 April 2017, 14:05:25
Einfachste Variante: einen zweiten Telnet Port einrichten und nur die entsprechenden Befehle erlauben.

"help allowed"

sollte ein paar nützliche Informationen liefern.
Titel: Antw:Shell Script in Linux und Rückmeldung über Port 7072 mit Passwort
Beitrag von: DeeSPe am 25 April 2017, 14:09:42
"globalpassword" statt "password" könnte auch helfen wenn das Skript auf dem selben Host läuft wie FHEM.
Dann wird für lokal laufende telnet Anfragen kein Passwort benötigt.

Gruß
Dan
Titel: Antw:Shell Script in Linux und Rückmeldung über Port 7072 mit Passwort
Beitrag von: rudolfkoenig am 25 April 2017, 14:38:17
Und/oder man verzichtet bei der Definition von telnet auf global, dann kann man nur vom localhost eine Verbindung aufbauen.
Titel: Antw:Shell Script in Linux und Rückmeldung über Port 7072 mit Passwort
Beitrag von: dev0 am 25 April 2017, 15:13:36
Oder Du loggst Dich per perl Script ein und setzt den Befehl ab.

Etwa so (ungestetet aus dem Bauch ;) ). Bei Interesse findest Du Details hier: http://search.cpan.org/perldoc/Net::Telnet

#!/usr/bin/perl
$telnet = new Net::Telnet ( Timeout=>10, Errmode=>'die');
$telnet->open('yourHost_or_IP');
$telnet->waitfor('/Password:/');
$telnet->print('yourPassword');
$telnet->print('set FHEM_COMMAND ', $ARGV[0]); # $ARGV[0] -> command line parameter
$telnet->print('exit');

Titel: Antw:Shell Script in Linux und Rückmeldung über Port 7072 mit Passwort
Beitrag von: Torben80 am 25 März 2018, 22:56:01
Habe bei mir unter "allowed_telnetPort" alle Passwörter rausgelöscht, dann läuft es einwandfrei.
mfg Torben
Titel: Antw:Shell Script in Linux und Rückmeldung über Port 7072 mit Passwort
Beitrag von: dev0 am 26 März 2018, 09:36:46
Wenn Du keine Passwortabsicherung benötigst, dann geht das in Ordnung.