Ankündigung

Einklappen
Keine Ankündigung bisher.

ssh ohne Passworteingaben, in einer Logik verwenden

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    ssh ohne Passworteingaben, in einer Logik verwenden

    Hallo,

    ich möchte Funksteckdosen schalten, der sender ist auf einem anderen pi( beim 1. sind keine gpio's mehr frei)

    als habe ich eine Logik erstellt

    Code:
    import time
    import os
    if sh.Zentral.Funksteckdose1.schalten():
        logger.info("Zentral.Funksteckdose1.schalten: Ein")
        os.system("ssh pi@192.168.178.222  pilight-send -p quigg_gt7000 -i 2816 -u 0 -t")
    if not sh.Zentral.Funksteckdose1.schalten():
        logger.info("Zentral.Funksteckdose1.schalten: Aus")
        os.system("ssh pi@192.168.178.222  pilight-send -p quigg_gt7000 -i 2816 -u 0 -f")
    die mittels ssh ein Komando auf dem 2. pi ( 222) absetzt.Damit kein Passwort verlangt wird habe ich einen private/public key erstellt ( siele hier http://www.linuxproblem.org/art_9.html)

    wenn ich das standalone ausprobiere

    Code:
    ssh pi@192.168.178.222  pilight-send -p quigg_gt7000 -i 2816 -u 0 -t
    dann fragt es auch nicht nach einem Passwort und führt den Befeht dort auch aus.

    Wenn ich das ganze aus der Smartvisu + sh.py Logik im Debug-Modus mache(Code siehe oben), dann fragt die Shell in der ich sh gestartet habe nach einen Password für die Verbindung ???
    ohne Debug-Modus passiert einfach nix!

    Was mache ich falsch ?



    Zuletzt geändert von schlaubi666; 28.11.2015, 08:36.

    #2
    Guten Morgen,

    ist der User, mit dem Du das in der Shell testest, der identische, unter dem auch der Prozess mit dem Code läuft?

    Gruß Hannes

    Kommentar


      #3
      das war's .... sh läuft als root( wegen gpio), getestet habe ich als admin, war wohl doch schon reichlich spät gerstern.

      Ich habe die keys als root neu gemacht und jetzt klappts.

      Danke

      Kommentar


        #4
        Hallo!

        Hab ich auch gerade gemacht, man kann per ssh-keygen eine Schlüsseldatei erzeugen und per ssh-copy-id auf den Client übertragen, dann kannst du ohne Passwort (aber mit Authentifizierung) remote Befehle ausführen.

        Grüße
        David

        Kommentar

        Lädt...
        X