Raspberry Pi 64) Vzdálený přístup k Raspberry Pi bez veřejné IP adresy - NGROK.com Objevil jsem službu, pomocí které je možné se vzdáleně připojit
k domácímu RasPi i když nemáte veřejnou IP adresu. Povedl se mi zatím zprovoznit přístup k terminálu (PuTTy) a po instalaci webového serveru v RasPi dokážu zobrazit i webovou stránku, která je v RasPi uložená.
Instalace Nejdříve je třeba se na stránce https://ngrok.com
zaregistrovat. Pak je třeba stáhnout instalační ZIP do RasPi. Já jsem to dělal tak, že jsem si tu adresu zkopíroval z tlačítka na webu https://ngrok.com/download : V terminálu RasPi pak stačilo zadat příkaz wget a za
něj vložit tu zkopírovanou adresu Dalším krokem bylo přihlášení k vytvořenému účtu
na stránce ngrok.com. Zkopírovanou řádku pak vložte do terminálu: Tím je základní instalace hotová. Vzdálený přístup k terminálu Pro vytvoření tunelu stačí spustit program ngrok s těmito parametry :
V terminálu se objeví toto: Důležitá je adresa a číslo portu - na obrázku je to
fialově podtržené. Číslo portu se mění náhodně při každém spuštění. Stejné informace byste měli obdržet i po přihlášení do vašeho účtu na ngrok.com:
Když pak tyto údaje zadáte do přihlašovacího formuláře PuTTy z libovolného počítače někde na internetu, připojíte se tím k terminálu vašeho domácího RasPi: Vzdálený přístup na WEB server v RasPi
Tohle se hodí, když třeba chcete sledovat nějaké údaje
z domácího RasPi v grafické podobě (třeba fotky
z webkamery). V první fázi je třeba nainstalovat do RasPi webový server pomocí příkazů:
Pak by se po zadání názvu "raspberrypi" do adresního řádku webového prohlížeče na nějakém počítači v lokální síti mělo zobrazit toto:
Tím je ověřeno, že webserver na RasPi funguje. Tuto informační stránku je možné změnit: Nejdřív se původní stránka zazálohuje (protože obsahuje nějaké užitečné informace, které se občas mohou hodit):
Pak se vytvoří nový soubor "index.html":
A do něj se vloží jednoduchý ukázkový HTML kód - například:
Teď je třeba nastavit http tunel v programu ngrok:
Hotovo! Tunel je vytvořený. V terminálu se zobrazí informace o veřejné webové
adrese, na které je dostupná ukázková webová stránka z domácího
RasPi.
A stejně jako při předchozím zprovozňování vzdáleného přístupu k terminálu, i v tomto případě je stejná informace dostupná i po přihlášení na ngrok.com .
Pak už jen stačí když se tato adresa zadá z libovolného počítače do webového prohlížeče a stránka z RasPi se zobrazí:
Automatické spouštění při startu RasPi Při předchozích
ukázkách bylo nutné ručně spouštět tunely z terminálu na Raspberry
Pi. Tohle
mi dalo trochu víc práce a nejsem si jistý, jestli je tento postup správný.
Můj postup je takovýto: V konfiguračním souboru programu ngrok jsem nadefinoval oba dva tunely - terminálový (TCP) i webový(HTTP).
Obsah toho souboru vypadá takto:
Na první řádce je authtoken, který budete mít samozřejmě
úplně jiný. Po uložení konfiguračního souboru jsem v adresáři "/home/pi/" vytvořil spouštěcí skript:
Do spouštěcího skriptu jsem vložil tento kód, který spustí všechny nadefinované tunely:
Nastavil jsem skriptu atribut pro spouštění:
Pak jsem zaeditoval crontab:
A v něm jsem nechal po restartu spouštět autostartngrok.sh přidáním řádky na konec souboru:
Po restartu RasPi a dalším přihlášení do terminálu bylo vidět, že je ngrok spuštěný (příkaz: ps ax): Po přihlášení na účet ngrok.com byly vidět všechny tunely aktivní:
|
úvodní strana webu AstroMiK.org |
|
poslední úprava stránky 7.11.2016 |