DIY

Jak spouštět příkazy na Raspberry Pi e-mailem

Jak spouštět příkazy na Raspberry Pi e-mailem

Tomuto problému čelí téměř každý uživatel Raspberry Pi. Máte doma běžící Raspberry Pi a chcete na něm provést příkaz. Problém je v tom, že jste mimo domov, ve své mobilní síti a nemáte způsob, jak získat přístup k vašemu Pi. Můžete získat statickou adresu IP nebo použít jednu z dynamických služeb DNS k povolení přístupu k vaší domácí síti. To je však pro většinu lidí příliš nepohodlné a vyžaduje příliš mnoho úsilí pro malý zisk. Kromě toho otevírá vaše Raspberry Pi útokům hrubou silou, protože port SSH je nyní vystaven světu.

Dobrou zprávou je, že existuje pohodlnější a bezpečnější metoda - jednoduše pošlete e-mailem příkazy, které chcete spustit na vašem Raspberry Pi. Tímto způsobem potřebujete pouze e-mailového klienta a funkční připojení k internetu na vašem Pi. Žádná přihlášení a žádné statické adresy IP. A co víc, tato metoda funguje nejen s Raspberry Pi, ale s jakoukoli distribucí Linuxu s nainstalovaným shellem Bash a cURL. Zní to skvěle? Tady je třeba to nastavit:

Požadavky

Začínáme

Nastavit recept IFTTT

Pomocí IFTTT budeme distribuovat příkazy doručené e-mailem do Dropboxu. Po založení účtu IFTTT budete muset použít „Spouštějte bash příkazy na Raspberry Pi e-mailem “recept. Jednoduše přejděte na tento recept IFTTT a klikněte na Přidat.

Nastavte Dropbox Uploader

Potřebujeme Dropbox Uploader - program příkazového řádku, který umožňuje nahrávat, stahovat, vypisovat nebo mazat soubory z Dropboxu. Zde je postup, jak to nastavit:

1. Na vašem Raspberry Pi, získejte nezbytný software kučera a wget. Pravděpodobně je již máte nainstalované, ale nainstalujeme je jen pro případ:

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

2. Vytvořte složku kde to nastavíme. Zde jsem vytvořil adresář s názvem raspi_email v mé domovské složce:

[zdrojový kód] mkdir ~ / raspi_email
cd ~ / raspi_email [/ zdrojový kód]

3. Dostaň Skript Dropbox Uploader z GitHubu, a označit jako spustitelný:

[zdrojový kód] wget https://raw.githubusercontent.com/andreafabrizi/Dropbox-Uploader/master/dropbox_uploader.sh

chmod + x ./dropbox_uploader.sh[/sourcecode]

4. Spustit the dropbox_uploader.sh skript. Uvidíte výstup, jako je tento:

5. Nyní musíte vytvořte aplikaci Dropbox. Přihlaste se do Dropboxu, přejděte na tuto adresu URL, kde uvidíte obrazovku, která vypadá takto:

6. Stejně jako na obrázku výše nejprve vyberte Dropbox API, poté vyberte Plný Dropbox v typu požadovaného přístupu. Konečně, název vaše aplikace, co se vám líbí.

7. Po úspěšném vytvoření nové aplikace přejděte dolů na ikonu OAuth2 sekci a klikněte na generovat tlačítko pro vygenerování přístupového tokenu. Nyní uvidíte vygenerovaný přístupový token, kde generovat tlačítko bylo. Zkopírujte tento token, vložte jej do terminálu a stiskněte Enter:

8. Na ověřte, zda váš účet funguje, provést příkaz ./dropbox_uploader.sh seznam - měli byste vidět seznam souborů ve vašem účtu Dropbox.

Nastavte Raspi Runner

Na Raspberry Pi si stáhněte soubor Raspi Runner skript v raspi_email složka, kterou jsme vytvořili dříve:

[zdrojový kód] cd ~ / raspi_email

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

Vytvořte scénář spustitelný, a spusťte jej:

[zdrojový kód] chmod + x ./raspi_runner.sh

./raspi_runner.sh[/sourcecode]

Nyní se zobrazí výzva jako na obrázku níže. Když se skript zeptá na úplnou cestu k vašemu Dropbox Uploader, zadejte cestu tvému Domov adresář (pravděpodobně / home / pi /), následovaný název složky ve kterém jste stáhli dropbox_uploader.sh skript. Pokud jste postupovali podle tohoto průvodce slovo za slovem, vstoupíte / home / pi / raspi_email tady.

Nastavit Crontab

Jakmile jsou základy na místě, je nutné naplánovat běh Raspi Runner. Můžete jej například nastavit tak, aby každých 5 minut kontroloval e-maily. Budeme používat crontab pro tohle. Na Raspberry Pi spusťte:

[zdrojový kód] crontab -e [/ zdrojový kód]

Ve spodní části souboru přidejte následující řádek:

[zdrojový kód] * / 5 * * * * /home/pi/raspi_email/raspi_runner.sh> / dev / null 2> & 1 [/ sourcecode]

Samozřejmě ve výše uvedeném příkladu, nahradit pi s vaším uživatelským jménem a raspi_email se složkou, do které jste umístili raspi_runner.sh skript dovnitř. Nyní uložte svůj crontab.

Používání

Jednoduše pošlete e-mail s příkazy, které chcete provést na svém Pi [email protected] z e-mailovou adresu, kterou jste použili k založení účtu IFTTT. Tělo e-mailu bude obsahovat příkaz. Do e-mailu můžete přidat libovolný předmět, který se vám líbí, ale doporučujeme ho přidat. V následujícím příkladu velím svému Raspberry Pi vypnout:

Po množství zpoždění, které jste nastavili ve svém crontab, the raspi_runner.sh spustí a provede příkaz obsažený ve vašem e-mailu.

VIZ TÉŽ: Jak nastavit a začít používat Raspberry Pi 3 (Průvodce pro začátečníky)

Spouštějte příkazy vzdáleně na vašem Raspberry Pi pomocí IFTTT

Takto můžete použít IFTTT, Dropbox a nějakou magii příkazového řádku ke vzdálenému spouštění příkazů na vašem Raspberry Pi. Samozřejmě, jak bylo uvedeno na začátku, tato metoda bude fungovat také s jakýmkoli systémem Linux nebo Unix s nainstalovaným shellem Bash.

Zůstaňte naladěni na další tipy a triky pro Raspberry Pi v budoucnu. Pokud máte potíže s jeho nastavením nebo se s námi chcete podělit o některé ze svých skvělých triků IFTTT, nezapomeňte nám napsat řádek v sekci komentářů níže.

Vítězem soutěže Facebook Hacker Cup 2012 je Roman Andreev z Ruska [Pics]
Tisíce účastníků prošly řadou kvalifikačních kol, ale pouze 25 soutěžících bylo vybráno do finále, které se včera konalo na ústředí Facebooku v Menlo ...
Facebook letos v létě zasáhne 1 miliardu uživatelů
Facebook má nyní více než 800 milionů registrovaných uživatelů a určitě překročí hranici 1 miliardy. Gregory Lyons, analytik společnosti iCrossing, př...
Jak Jak exportovat data Google Allo
Jak exportovat data Google Allo
Po několika letech koktání bude Google Allo konečně moci odpočívat v míru. Máte pravdu, Google právě oznámil, že zabíjí svoji chatovací aplikaci Allo....