Slik kjører du kommandoer på bringebærpi via e-post

  • Dustin Hudson
  • 0
  • 2371
  • 402

Dette problemet blir møtt av nesten alle Raspberry Pi-brukere. Du har en Raspberry Pi som kjører hjemme, og vil utføre en kommando på den. Problemet er at du er utenfor hjemmet ditt, på mobilnettet ditt, og har ingen måte å få tilgang til Pi-en din. Du kan få en statisk IP-adresse, eller bruke en av de dynamiske DNS-tjenestene for å aktivere tilgang til hjemmenettverket. Imidlertid er det bare for upraktisk for folk flest og tar for mye arbeid for lite gevinst. I tillegg åpner den Raspberry Pi for angrep mot brute-force, siden SSH-porten nå er utsatt for verden.

Den gode nyheten er at det er en mer praktisk og sikrere metode - Bare send e-post til kommandoene du ønsker å kjøre på Raspberry Pi. På denne måten er alt du trenger en e-postklient og en fungerende internettforbindelse på Pi-en. Ingen pålogginger og ingen statiske IP-er. Dessuten fungerer denne metoden ikke bare med Raspberry Pi, men med hvilken som helst Linux-distro med Bash-skallet og cURL installert. Høres kult ut? Dette er hva du trenger for å sette den opp:

Krav

  • En bringebær Pi med fungerende internettforbindelse.
  • En konto på IFTTT.com.
  • En Dropbox-konto.

Starter

Sett opp IFTTT-oppskrift

Vi vil bruke IFTTT til å distribuere kommandoer levert via e-post til Dropbox. Etter å ha satt opp en IFTTT-konto, må du bruke "Kjør bash-kommandoer på Raspberry Pi per e-post ”-oppskrift. Bare gå til denne IFTTT-oppskriften, og klikk på Legg til.

Sett opp Dropbox Uploader

Vi trenger Dropbox Uploader - et kommandolinjeprogram som kan laste opp, laste ned, liste eller slette filer fra Dropbox. Slik konfigurerer du det:

1. På bringebær Pi, skaff deg den forutsette programvaren cURL og wget. Du har sannsynligvis allerede installert disse, men vi vil installere dem i tilfelle:

[sourcecode] sudo apt install wget curl [/ sourcecode]

2. Lag en mappe hvor vi skal sette det opp. Her har jeg laget en katalog som heter raspi_email i hjemmemappen min:

[sourcecode] mkdir ~ / raspi_email
cd ~ / raspi_email [/ sourcecode]

3. Hent Dropbox Uploader-skript fra GitHub, og merk den kjørbar:

[sourcecode] wget https://raw.githubusercontent.com/andreafabrizi/Dropbox-Uploader/master/dropbox_uploader.sh

chmod + x ./dropbox_uploader.shebrit/sourcecode]

4. Løp de dropbox_uploader.sh manus. Du vil se en utgang som denne:

5. Nå må du opprett en Dropbox-app. Logg på Dropbox, gå til denne URL-en, hvor du vil se en skjerm som ser slik ut:

6. Som på bildet over, velg først Dropbox API, velg deretter Full Dropbox i den typen tilgang som trengs. Endelig, Navn appen din hva du vil.

7. Etter at den nye appen din er opprettet, blar du ned til OAuth2 og klikk på generere for å generere et tilgangstoken. Du vil nå se et generert tilgangstoken der generere knappen var. Kopier dette tokenet, lim det inn på terminalen din og trykk Tast inn:

8. Til bekreft at kontoen din fungerer, utfør kommandoen ./dropbox_uploader.sh-listen - du bør se en liste over filene i Dropbox-kontoen din.

Sett opp Raspi Runner

Last ned Raspberry Pi Raspi Runner-skript i raspi_email mappen vi opprettet tidligere:

[sourcecode] cd ~ / raspi_email

wget https://raw.github.com/enkydu/Raspi_Runner/master/raspi_runner.shebrit/sourcecode]

Lag manuset kjørbar, og kjør den:

[sourcecode] chmod + x ./raspi_runner.sh

./raspi_runner.sh[/sourcecode]

Du vil nå se en ledetekst som bildet nedenfor. Når manuset ber om full vei til din Dropbox Uploader, gå inn på banen til din Hjem katalog (sannsynligvis / Home / pi /), fulgt av navnet på mappen der du lastet ned dropbox_uploader.sh manus. Hvis du fulgte denne guiden ord for ord, kommer du inn / Home / pi / raspi_email her.

Sett opp Crontab

Når det grunnleggende er på plass, er det nødvendig å gjøre det planlegg kjøringen av Raspi Runner. For eksempel kan du stille den til å se etter e-post hvert 5. minutt. Vi bruker det crontab for dette. Kjør på Raspberry Pi

[sourcecode] crontab -e [/ sourcecode]

Legg til følgende linje nederst i filen:

[sourcecode] * / 5 * * * * /home/pi/raspi_email/raspi_runner.sh> / dev / null 2> & 1 [/ sourcecode]

Selvfølgelig, i eksemplet ovenfor, erstatte pi med ditt brukernavn, og raspi_email med mappen du plasserte raspi_runner.sh skript i. Lagre crontab nå.

bruk

Bare send en e-post med kommandoene du ønsker å utføre på din Pi til [e-postbeskyttet] fra e-postadresse du brukte for å sette opp IFTTT-kontoen din. Organet i e-posten vil inneholde kommandoen. Du kan legge til hvilket emne du vil i e-posten, men det anbefales at du legger til et. I det følgende eksemplet kommanderer jeg Raspberry Pi til skru av:

Etter mengden forsinkelse du angir i din crontab, de raspi_runner.sh vil kjøre og utføre kommandoen i e-posten din.

SE OGSÅ: Slik konfigurerer du og kommer i gang med Raspberry Pi 3 (Starter Guide)

Kjør kommandoer eksternt på bringebærpien din ved å bruke IFTTT

Så dette er hvordan du kan bruke IFTTT, Dropbox og litt kommandolinjemagi til å kjøre kommandoer eksternt på Raspberry Pi. Som nevnt i begynnelsen, vil denne metoden også fungere med ethvert Linux- eller Unix-lignende system med Bash-skallet installert.

Følg med for flere Raspberry Pi-tips og triks i fremtiden. Hvis du har problemer med å konfigurere det, eller vil dele noen av dine kule IFTTT-triks med oss, sørg for å slippe oss en linje i kommentarfeltet nedenfor.




Ingen har kommentert denne artikkelen ennå.

Gadgetkjøpsguider, teknologi som betyr noe
Vi publiserer detaljerte guider for kjøp av utstyr, lager interessante lister over de beste produktene på markedet, dekker nyheter fra teknologiens verden