Gå til innhold
  • Bli medlem
Støtt hjemmeautomasjon.no!

Kjøre SSH kommando fra Homeseer event


TomB

Anbefalte innlegg

Jeg har behov for å kunne enkelt kjøre et SSH script bestående av innlogging på en node og så 4 kommandoer, og dette skulle jeg gjerne gjort fra en manuell event fra Homeseer. Er det noen som har gjort noe lignende og kan gi meg en liten info om hvordan dette gjøres? Jeg kjører Homeseer på en Windows-server, og har ingen Linux-servere enkelt tilgjenglig som jeg kan gjøre dette via/på, så det må kunne gjøres fra Windows.

 

Alle tips og bruksanvisninger mottas med takk :)

Lenke til kommentar
Del på andre sider

Ja, jeg tenkte å bruke Putty, jeg har satt opp scriptet og testet manuelt med å kjøre kommandoen i Windows command, men jeg er litt usikker på hvordan jeg gjør det i Homeseer. Jeg er rimelig blank på annet enn normale events og devices :)

 

Edit: jeg får noen problemer når jeg kjører Putty med script linket gjennom kommando-fil, men det skal jeg nok finne ut av. Spørsmålet er beste måten å kjøre denne kommandoen på gjennom Homeseer.

Endret av TomB
Lenke til kommentar
Del på andre sider

Så du har laget en .bat-fil som gjør det du vil når du kjører den "manuelt"?

I så fall bør det være bare å opprette et event i HS, velge "then run another program or process" og velge den .bat-filen. :) 

Lenke til kommentar
Del på andre sider

Just now, ZoRaC said:

Så du har laget en .bat-fil som gjør det du vil når du kjører den "manuelt"?

I så fall bør det være bare å opprette et event i HS, velge "then run another program or process" og velge den .bat-filen. :) 

 

Ok, så med den opsjonen kan jeg bare browse direkte på HS3 makinen og velge et lokalt batch-script?

Lenke til kommentar
Del på andre sider

Et øyeblikk siden, TomB skrev:

Ok, så med den opsjonen kan jeg bare browse direkte på HS3 makinen og velge et lokalt batch-script?

 

Ja.

Om du kan kjøre .bat-filer eller bare .exe-filer vet jeg ikke, men jeg vil tro du kan kjøre "hva som helst" - enkleste er nok å bare prøve det. :) 

Lenke til kommentar
Del på andre sider

1 minute ago, ZoRaC said:

 

Ja.

Om du kan kjøre .bat-filer eller bare .exe-filer vet jeg ikke, men jeg vil tro du kan kjøre "hva som helst" - enkleste er nok å bare prøve det. :) 

 

Ok, neste problem; når jeg kjører putty-pålogging via command line så kjører den neste kommando i scriptet før den er klar til å ta imot og kommandoen regnes som ugyldig. Det var litt verre å løse ...

Lenke til kommentar
Del på andre sider

Et øyeblikk siden, TomB skrev:

Ok, neste problem; når jeg kjører putty-pålogging via command line så kjører den neste kommando i scriptet før den er klar til å ta imot og kommandoen regnes som ugyldig. Det var litt verre å løse ...

 

Gjør du det slik som på StackOverflow? 

Sitat

putty.exe -ssh user@host -pw password -m c:\path\command.txt

Altså at selve kommandoene ligger i en tekstfil utenom.

Lenke til kommentar
Del på andre sider

1 minute ago, ZoRaC said:

Gjør du det slik som på StackOverflow? 

Altså at selve kommandoene ligger i en tekstfil utenom.

 

Ja, jeg har jobbet med Putty i mange år så jeg har brukt script via txt-files mange ganger, og på Linux distros som jeg sist brukte det på var det ingen problem. Dette er mot en brannmur, og hvis jeg kjører kun pålogging - altså uten -m variabel, så logger den fint på og vinduet står klart. Men fra du skriver inn brukernavn og trykker enter så er det 2-3 sek ventetid før passord spørsmål kommer, og det virker som den bare pøser på og ikke klarer å cache kommandoene som kjøres før brannmuren er klar til å ta imot nye kommandoer.

Lenke til kommentar
Del på andre sider

3 minutter siden, TomB skrev:

Ja, jeg har jobbet med Putty i mange år så jeg har brukt script via txt-files mange ganger, og på Linux distros som jeg sist brukte det på var det ingen problem. Dette er mot en brannmur, og hvis jeg kjører kun pålogging - altså uten -m variabel, så logger den fint på og vinduet står klart. Men fra du skriver inn brukernavn og trykker enter så er det 2-3 sek ventetid før passord spørsmål kommer, og det virker som den bare pøser på og ikke klarer å cache kommandoene som kjøres før brannmuren er klar til å ta imot nye kommandoer.

 

Hmm... Det var rart - trodde den skulle være i stand til å "gjenkjenne" at den var klar til å motta input.

Har du prøvd plink.exe i stedet? Er visst kommando-linje-varianten av putty.exe - kanskje den håndterer det bedre? Har du nyeste versjon av Putty-pakken?

Lenke til kommentar
Del på andre sider

1 minute ago, ZoRaC said:

 

Hmm... Det var rart - trodde den skulle være i stand til å "gjenkjenne" at den var klar til å motta input.

Har du prøvd plink.exe i stedet? Er visst kommando-linje-varianten av putty.exe - kanskje den håndterer det bedre? Har du nyeste versjon av Putty-pakken?

 

Ja, jeg har nyeste versjonen av Putty, jeg har også testet plink men fikk den ikke helt til, jeg skal prøve den igjen.

Lenke til kommentar
Del på andre sider

Quote

c:\Util\Putty>plink -ssh [email protected] -pw password configure
vbash: configure: command not found

 

Jeg får samme respons via plink, dette er samme som jeg får i vanlig putty-window om jeg velger å beholde session open etter å ha kjørt kommando. Virker som den kjører "configure" før den er klar til å motta. Jeg har testet både med -m setting med alle kommandoer og kun med configure som kommando sendt direkte på command line med plink.

Lenke til kommentar
Del på andre sider

1 time siden, TomB skrev:

Jeg har behov for å kunne enkelt kjøre et SSH script bestående av innlogging på en node og så 4 kommandoer, og dette skulle jeg gjerne gjort fra en manuell event fra Homeseer

Hva nøyaktig er det du skal sende?

 

Jeg har lurt på å skrive en plugin for dette, men har enn så lenge klart meg uten...

Lenke til kommentar
Del på andre sider

Just now, Moskus said:

Hva nøyaktig er det du skal sende?

 

Jeg har lurt på å skrive en plugin for dette, men har enn så lenge klart meg uten...

 

Jeg skal;

1. Logge på brannmuren med bruker/passord (eller sertifikat når jeg gidder å sette opp det)

2. Sende kommando for å enable/disable regler

3. Save/Exit

 

Jeg vil gjerne ha dette som noe jeg kan trigge fra UI til HS3/HSTouch/Imperihome i stedet for å måtte gjøre noe manuelt utenom. In short, mulighet til å kontrollere barnas surfe-tid selv om jeg ikke sitter ved PC'en ;)

  • Like 1
Lenke til kommentar
Del på andre sider

1 minute ago, Moskus said:

Smart! :)

 

OK, jeg skal se om jeg får kikket litt nærmere på det. Jeg skal logge på en Pi, kjøre et python-script og logge av igjen.

 

Problemet jeg har er at putty feiler ved å sende kommandoer pga at brannmur ikke er klar til å ta imot kommandoene ennå (virker det som), så det er ikke umiddelbart et HS3 issue. Jeg venter med å kjøre det fra HS inntil jeg faktisk får korrekt resultat bare som batch-script, og det er der det har stoppet nå. Jeg har en post på vendor forum og ser om jeg får noe respons der.

 

Hvis det finnes andre muligheter enn putty som kanskje kan legge inn en pause fra login til kommandoer så ville det nok løst problemet.

Endret av TomB
Lenke til kommentar
Del på andre sider

Da er problemet løst. Det var jo veldig enkelt på Homeseer-siden, det var bare å kjøre et batch-script, fungerer helt nydelig.

 

Det tok mye lengre tid å finne ut av brannmur-siden, men når det var gjort så fikk jeg satt opp både status og bryter på Imperihome, nå er aldri internettet til sønnene trygge lengre :D

Lenke til kommentar
Del på andre sider

1 minute ago, ZoRaC said:

Så bra!

Hva ble løsningen?

 

Som nevnt over, bare kjører et program rett fra eventen.

 

Capture.JPG.1b9c7388b99558db9cb5eeb8e5a8058b.JPG

 

Det var veldig lett i HS3, det var i andre enden jeg ble stående fast i lange tider :)

Lenke til kommentar
Del på andre sider

20 minutes ago, ZoRaC said:

Joda, men hva måtte du gjøre med batch-scriptet og/eller brannmuren for å få den til å "vente" lenge nok? :) 

 

Ah, jeg trengte ikke å sette opp ventetid, fordi når jeg fikk løst det med rette kommandoer så var det null problem.

 

Det var to forskjellige moduser på min brannmur, og jeg brukte "feil" modus kommandoer. Jeg prøvde å kjøre en kommando som ikke skulle brukes i forkant, og det tullet til alt.

  • Like 1
Lenke til kommentar
Del på andre sider

1 hour ago, Moskus said:

Kan vi be om å få se inne i batch-scriptet? Fjern evt passord, selvfølgelig. ;) 

 

Selvfølgelig, det er veldig enkelt :)

 

Quote

@echo off
c:\util\putty\plink -ssh bruker@ip -pw passord -m c:\util\putty\enable.txt

 

Inne i txt-filen ligger det kommandoer tilpasset min enhet. I HS3 kaller jeg bare batch-filen direkte fra eventen.

Endret av TomB
  • Like 1
Lenke til kommentar
Del på andre sider

Bli med i samtalen

Du kan publisere innhold nå og registrere deg senere. Hvis du har en konto, logg inn nå for å poste med kontoen din.

Gjest
Skriv svar til emnet...

×   Du har limt inn tekst med formatering.   Lim inn uten formatering i stedet

  Du kan kun bruke opp til 75 smilefjes.

×   Lenken din har blitt bygget inn på siden automatisk.   Vis som en ordinær lenke i stedet

×   Tidligere tekst har blitt gjenopprettet.   Tøm tekstverktøy

×   Du kan ikke lime inn bilder direkte. Last opp eller legg inn bilder fra URL.

×
×
  • Opprett ny...

Viktig informasjon

Vi har plassert informasjonskapsler/cookies på din enhet for å gjøre denne siden bedre. Du kan justere dine innstillinger for informasjonskapsler, ellers vil vi anta at dette er ok for deg.