цифровая электроника
вычислительная техника
встраиваемые системы

 
» » » Как управлять Raspberry Pi через HTTPS без публичного IP

Как управлять Raspberry Pi через HTTPS без публичного IP

Автор: Mike(admin) от 4-01-2017, 09:05

Одноплатный компьютер Raspberry Pi хорош тем, что на его основе можно сделать массу «умных» устройств с доступом через интернет, например, автоматическую систему открывания ворот, световой контроллер или регистратор температуры и прочих параметров. И, возможно, вам потребуется получить доступ к такому устройству не через вашу локальную сеть, а через Интернет.


Как управлять Raspberry Pi через HTTPS без публичного IP

Сегодня существует целый ряд онлайн-сервисов и платформ, которые позволяют получить доступ к устройствам Интернета вещей через глобальную сеть с определенной степенью защиты. Большинство из них сосредоточено на центральной точке доверия виртуального облака. Но есть один сервис, не похожий на другие, и называется он Beame.


Beame позволяет выдачу публично доверенных учетных данных TLS и доступ непосредственно к целевому устройству с end-to-end шифрованием из любого браузера и любой точки мира. По сути, вы будете работать и разрабатывать на устройстве, как если бы оно было бы обычным веб-сервером. Beame может предоставить HTML-страницы, javascript и другие стандартные функциональные возможности веб-сервера.


В данном примере мы создадим простую программу включения и выключения светодиода с помощью Raspberry Pi, доступ к которому будет осуществляться через Beame, то есть через защищенное интернет-соединение. Для начала нам следует загрузить NodeJS (6.9.x).



ssh pi@myip 
curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash - 
sudo apt-get install nodejs
node --version
       
pi@raspberrypi:~ $ node --version
v6.9.2

Затем следует установить Beame: beame-insta-ssl. После этого вам нужно будет получить токен по ссылке https://ypxf72akb6onjvrq.ohkv8odznwh5jpwm.v1.p.beameio.net/insta-ssl, где необходимо подтвердить, что вы не робот. Токен будет отправлен на email.



# beame-insta-ssl create 'token from email'

Как управлять Raspberry Pi через HTTPS без публичного IP


# beame-insta-ssl tunnel 8008 http
Starting tunnel https://qwertyuio.asdfghjkl.v1.d.beameio.net -> http://localhost:8008

Теперь все, что нам нужно сделать, это собрать небольшой проект, который что-то делает. Как и отмечалось выше, наша программа будет мигать светодиодом. Ниже приведен код этой программы.



~ 523 > curl https://cgqjqvahrdurqwhi.v1.p.beameio.net/on -v
*  Trying 52.57.114.229...
* TCP_NODELAY set
* Connected to cgqjqvahrdurqwhi.v1.p.beameio.net (52.57.114.229) port 443 (#0)
* TLS 1.2 connection using TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
* Server certificate: cgqjqvahrdurqwhi.v1.p.beameio.net
* Server certificate: GlobalSign Organization Validation CA - SHA256 - G2
* Server certificate: GlobalSign Root CA
> GET /on HTTP/1.1
> Host: cgqjqvahrdurqwhi.v1.p.beameio.net
> User-Agent: curl/7.51.0
> Accept: */*
> 
< HTTP/1.1 200 OK
< content-type: text/html
< date: Tue, 03 Jan 2017 00:16:17 GMT
< connection: close
< transfer-encoding: chunked
< 
* Curl_http_done: called premature == 0
* Closing connection 0
       
curl https://cgqjqvahrdurqwhi.v1.p.beameio.net/off -v
*  Trying 52.57.114.229...
* TCP_NODELAY set
* Connected to cgqjqvahrdurqwhi.v1.p.beameio.net (52.57.114.229) port 443 (#0)
* TLS 1.2 connection using TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
* Server certificate: cgqjqvahrdurqwhi.v1.p.beameio.net
* Server certificate: GlobalSign Organization Validation CA - SHA256 - G2
* Server certificate: GlobalSign Root CA
> GET /off HTTP/1.1
> Host: cgqjqvahrdurqwhi.v1.p.beameio.net
> User-Agent: curl/7.51.0
> Accept: */*
> 
< HTTP/1.1 200 OK
< content-type: text/html
< date: Tue, 03 Jan 2017 00:16:45 GMT
< connection: close
< transfer-encoding: chunked
< 
* Curl_http_done: called premature == 0
* Closing connection 0



© digitrode.ru


Теги: Raspberry Pi, Beame



Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

Комментарии:

Оставить комментарий