Отговори на тема  [ 25 мнения ]  Отиди на страница 1, 2  Следваща
Облаци ... и мента 
Автор Съобщение
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 27, 2005 11:48 am
Мнения: 4713
Мнение Облаци ... и мента
Една седмица си играя с връзка на "малко" устройство и облаци - Amazon, Azure, Google...
"Малката" джаджа е тип Ардуино, но това не е от голямо значение, искам да кажа - значението е че е малко като възможности
но си има възможностите за самата SSL/TLS връзка MQTT - Quectel BG96 модул, user API ThreadX, GPRS
но тук може да бъде всичко, което има интернет например ESP32, Расбери и цялата банда
Това което забелязах - Джавистите от облаците и идея си няма какво е IoT за малка джаджа (тип сензор) което в бъдеще трябва да са милиони
В началото ползвах Python на компа с няколко реда скрипт от Eclipse Paho MQTT за да пробвам кое как къде се "попълва" и после "същото" на дивайса
https://gist.github.com/tomconte/eef8c9 ... 3153eee500
с този скрипт подкарах и трите облака по долу
една забележка за скрипта - работи и използва SSL-а на КОМПА на "пълни обороти" което заблуждава -> използва SLL максимално

Накратко за SLL - основно връзката и най-вече ауторизацията
1. С CA_ROOT сертификат издаван за хост за определено време
2. С два сертификата публичен и частен генерирани за самото устройство
3. и със PSK pre-shared-keys "няколко" симетрични ключа за криптиране

Amazon:
Работи основно, лесно и добре със вариант 2 - Create Device, Generate сертификати(няколко броя - основен, публичен и частен за самото устройство), download ... клик клик
зареди в девайса и работи OK - за колко време това не знам - да не се изненада някой ако след година сертификата изтече а устройствата са на хиляди километри
за другите два варианта - плати...
тест: https://www.youtube.com/watch?v=T0Nt-NJTIaY

Azure:
Основно с PSK ключове - тук ударих на камък - за работата на API-то ThreadX SSL с PSK нямам документацията
за други джажи просто трябва да се инициализира SLL-а с PSK и "трябва" да работи
Опитах да генерирам другите два варианта но не се получи, всякаквите "хелпове" на Microsoft са клик тук, клик там и едно голямо мазало
PSK ключовете се генерират НЕ на сайта, а с разни външни тулсчета или със скриптове
горе в линка се виждат как изглеждат PSK ( auth = {} )
Общо взето "философията" на Microsoft(и на другите) на тема сертификати е ПЛАТИ

Google:
Основно с публичен CA_ROOT за хоста mqtt.googleapis.com за "кратко" време
или mqtt.2030.ltsapis.goog с продължителност до 2030
Ауторизацията за MQTT е в паролата, която се генерира с JWT криптиране на определено "изречение" с частен ключ, генериран не къде, а в терминала на облака или комп с openssl
цък цък донлоад (21 век) липсва, с тоя облак би трябва да работят IT "спецове" или Ардуино "деца" !?!

пример парола
Код:
eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJpYXQiOjE1NjA1ODA0MDgsImF1ZCI6InRvcC1zdXByc3RhdGUtMjQzNjEyIiwiZXhwIjoxNTYwNjQwNDA4fQ.DJr5lyroBcDydT_BLA71-KchWoNAzbqiJcrZ1WB-EJQq6fLakheFRQd_zybAU40c2yg0JlWEH7nKfE4Coz2AkjSwipOIRIqXtK0gbWnbUedT5OWB4rWbHQopE2IsBqEBlnyV8oT-0Xzd8SvLOXLedbt6TZDPFI-jqWvQ5mcqXLw4EcBJ5Pg6-lDUjI9TNIoKrgPvCNG4PUWxJMqhcqw4fIZPc_XtdjIMC2mUVXVDeBlOSszSUfJj6ui4VoCYNaHBzc0YqcDznFtuN6I57kIDw7zCx6n0SbfwuA17qwSg_U5r8htzzF_rUJizzOedZmkrmY-RpP7rdvZg08PxKopzxg


Тук чудното беше, че паролата става с дължина над 400...500 байта !!! WTF !? къде замина смисъла на MQTT и сметката за трафика
IoT джаджите би трябва да работят с години - тук се ползва mqtt.2030.ltsapis.goog
има два публични ca_root-a основен и backup със забележка от google, че ги разменят без известие и неизвестно кога
естествено основния не работи :) бакъпа е верен, интересното е че в питон скрипта работи, а модула казва, че не е верен хоста и тесла...
за WiFi има заблуда в примерите: тъй като джаджа и комп са в една мрежа
openssl s_client -showcerts -verify 5 -connect HOST/PORT
връща "верен" сертификат, но с даунлоаднат от google има "проблеми" с региона...

iot.eclipse.org:
за тестове с публичен CA_ROOT - работи


Общо взето съм тотално разочарован от Облаците...
Някой сигурно проектират - така че внимавайте с какво се захващате

_________________
main[-1u]={1};


Съб Юни 15, 2019 8:24 am
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Вто Дек 14, 2004 12:31 pm
Мнения: 3300
Мнение Re: Облаци ... и мента
А каква ти е мотивацията да се захващаш със тях? Аз лично напоследък чувам за все повече случаи където излизат много нерентабилни. Излиза че в повечето ситуации собствените машини си избиват парите от 6 до 18 месеца, а в този клас амортизацията е 3-4 години...


Съб Юни 15, 2019 10:13 am
Профил WWW
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 27, 2005 11:48 am
Мнения: 4713
Мнение Re: Облаци ... и мента
Мотивация: експерименти... и тест на наличните възможности

_________________
main[-1u]={1};


Съб Юни 15, 2019 10:41 am
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Нед Окт 31, 2004 8:19 pm
Мнения: 4410
Местоположение: Stara Zagora
Мнение Re: Облаци ... и мента
И ние стигнахме до заключението че собствена виртуалка нейде из облаците и оттам нататък каквото си сътворим.
Всички останали решения от моите рисърчи са от типа плати пък след време не е ясно каква ще е хавата.
Първо почнахме на PYTHON + PHP + mosquito на линукс машина.
Програмиста ни обаче напредва изключително бавно.
Сега направихме нов екип на дот нет + mosquito пак на линукс машина. Малко трудно стартираха че се бориха много време с организацията на машината и целия процес, но се очаква нещата вече да стават много по бързо, дот нета е песен като гледам сравнено с комбинацията PHP + PHYTHON.


Съб Юни 15, 2019 10:46 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пет Ное 12, 2004 2:38 pm
Мнения: 9103
Местоположение: Chicago, IL
Мнение Re: Облаци ... и мента
Всички тия облаци са неизползваеми за малки устройства, защото овърхеда на трафика през мобилните мрежи е убийствен. Затова сега чувам че доста големи играчи работят по решения, дето ще вкарат междинни блокове между малките IoT-та и големите облаци, отделно с по-прости и оптимални методи за криптиране, щото тия бози дето са ги натворили до сега са си точно бози.


Съб Юни 15, 2019 2:35 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Вто Яну 20, 2009 10:54 pm
Мнения: 11338
Местоположение: "Занзибар"
Мнение Re: Облаци ... и мента
Аз пък от три дни се каня да си купя мастика, мерси че ме подсети за ментата :D


Съб Юни 15, 2019 3:32 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Нед Ное 21, 2004 10:31 pm
Мнения: 9640
Мнение Re: Облаци ... и мента
в днешно време меринджйете постулират, че една технология е 'жива' около 5 години. след това се измисля нова и пак се открива топлата вода.

Dimitar написа:
... чувам че доста големи играчи работят по решения... с по-прости и оптимални методи за криптиране ...

после ще почнат да работят да заякчат методите за криптиране, защото по-простите се пробивали лесно.
само се чудя кока ще се сетят за 'панацеята' IPv6


Съб Юни 15, 2019 3:48 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пет Ное 12, 2004 2:38 pm
Мнения: 9103
Местоположение: Chicago, IL
Мнение Re: Облаци ... и мента
Дедо, ако трябва да мяташ в облака температура и влажност от оранжерията последното, дето ти трябва е да си разменяш с Амазона сертификати, публични ключве и пароли от по 1000 байта. Несъмнено ще има и такива приложения, дето имат нужда от това, но повечето джаджи в момента се опитват да пращат някакви байтове и да ги забиеш през такива криптирания, сертификати и JSON бози ти генерира такъв овърхед през мобилните мрежи, че накрая ти излиза супер скъпо. Някои хора имат по десетки хиляди малки джаджи, дето пращат малко данни на често. Отделно всичките опън сорс бози базирани на разни питони и подобни изгъзици се подкарват супер трудно и абсолютно нищо не работи както трябва "out of the box". Така че в момента има огромен натиск и пазар нещата да се оптимизират и да стават по лесно. Забележи - говоря само за случаите, дето се ползват мобилните мрежи. Ако си закачен за WiFi или Ethernet проблема с овърхеда не е толкова важен.


Съб Юни 15, 2019 4:01 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Нед Ное 21, 2004 10:31 pm
Мнения: 9640
Мнение Re: Облаци ... и мента
Цитат:
когато държиш чук, всичко наоколо ти изглежда като пирони

напълно съм съгласен с теб по всички точки, най-вече за питони, змии и всякакви гущери.
а контейнери с такива животинки пък съвсем не ги разбирам...

комплект сертификати се прави елементарно.
SSL сървър, дето да слуша на порт - също. много малка С пробрамка.
която може да се форква в хиляди бройки на съвременна машина (стигал съм до 18К), да си свърши работата и да се омете от паметта.
ама не - трябва nginx (апаха бил твърде бавен), PHP, брокери, MQTT, JSON, NodeJS и т.н. (сървър сайд)

сертификатите може да се дялкат и 32 битови ключове, и с 16К ключове. зависи колко лесно искаш да те пробият (колко са ти важни данните И в двете посоки).

разбира се това си има цена, особено в клиента (въшката). най-затратното нещо е валидацията на сертификата, след това е по-лесно. но си трябват мускули.
и е ясно много отдавана, че SSL за въшки си е трън в задника.


Съб Юни 15, 2019 4:37 pm
Профил
Ранг: Ориентиран
Ранг: Ориентиран

Регистриран на: Съб Май 17, 2008 10:01 pm
Мнения: 238
Мнение Re: Облаци ... и мента
TheWizard написа:
Една седмица си играя с връзка на "малко" устройство и облаци - Amazon, Azure, Google...
"Малката" джаджа е тип Ардуино, но това не е от голямо значение, искам да кажа - значението е че е малко като възможности
но си има възможностите за самата SSL/TLS връзка MQTT - Quectel BG96 модул, user API ThreadX, GPRS
но тук може да бъде всичко, което има интернет например ESP32, Расбери и цялата банда
Това което забелязах - Джавистите от облаците и идея си няма какво е IoT за малка джаджа (тип сензор) което в бъдеще трябва да са милиони
В началото ползвах Python на компа с няколко реда скрипт от Eclipse Paho MQTT за да пробвам кое как къде се "попълва" и после "същото" на дивайса
https://gist.github.com/tomconte/eef8c9 ... 3153eee500
с този скрипт подкарах и трите облака по долу
една забележка за скрипта - работи и използва SSL-а на КОМПА на "пълни обороти" което заблуждава -> използва SLL максимално

Накратко за SLL - основно връзката и най-вече ауторизацията
1. С CA_ROOT сертификат издаван за хост за определено време
2. С два сертификата публичен и частен генерирани за самото устройство
3. и със PSK pre-shared-keys "няколко" симетрични ключа за криптиране

Amazon:
Работи основно, лесно и добре със вариант 2 - Create Device, Generate сертификати(няколко броя - основен, публичен и частен за самото устройство), download ... клик клик
зареди в девайса и работи OK - за колко време това не знам - да не се изненада някой ако след година сертификата изтече а устройствата са на хиляди километри
за другите два варианта - плати...
тест: https://www.youtube.com/watch?v=T0Nt-NJTIaY

Azure:
Основно с PSK ключове - тук ударих на камък - за работата на API-то ThreadX SSL с PSK нямам документацията
за други джажи просто трябва да се инициализира SLL-а с PSK и "трябва" да работи
Опитах да генерирам другите два варианта но не се получи, всякаквите "хелпове" на Microsoft са клик тук, клик там и едно голямо мазало
PSK ключовете се генерират НЕ на сайта, а с разни външни тулсчета или със скриптове
горе в линка се виждат как изглеждат PSK ( auth = {} )
Общо взето "философията" на Microsoft(и на другите) на тема сертификати е ПЛАТИ

Google:
Основно с публичен CA_ROOT за хоста mqtt.googleapis.com за "кратко" време
или mqtt.2030.ltsapis.goog с продължителност до 2030
Ауторизацията за MQTT е в паролата, която се генерира с JWT криптиране на определено "изречение" с частен ключ, генериран не къде, а в терминала на облака или комп с openssl
цък цък донлоад (21 век) липсва, с тоя облак би трябва да работят IT "спецове" или Ардуино "деца" !?!

пример парола
Код:
eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJpYXQiOjE1NjA1ODA0MDgsImF1ZCI6InRvcC1zdXByc3RhdGUtMjQzNjEyIiwiZXhwIjoxNTYwNjQwNDA4fQ.DJr5lyroBcDydT_BLA71-KchWoNAzbqiJcrZ1WB-EJQq6fLakheFRQd_zybAU40c2yg0JlWEH7nKfE4Coz2AkjSwipOIRIqXtK0gbWnbUedT5OWB4rWbHQopE2IsBqEBlnyV8oT-0Xzd8SvLOXLedbt6TZDPFI-jqWvQ5mcqXLw4EcBJ5Pg6-lDUjI9TNIoKrgPvCNG4PUWxJMqhcqw4fIZPc_XtdjIMC2mUVXVDeBlOSszSUfJj6ui4VoCYNaHBzc0YqcDznFtuN6I57kIDw7zCx6n0SbfwuA17qwSg_U5r8htzzF_rUJizzOedZmkrmY-RpP7rdvZg08PxKopzxg


Тук чудното беше, че паролата става с дължина над 400...500 байта !!! WTF !? къде замина смисъла на MQTT и сметката за трафика
IoT джаджите би трябва да работят с години - тук се ползва mqtt.2030.ltsapis.goog
има два публични ca_root-a основен и backup със забележка от google, че ги разменят без известие и неизвестно кога
естествено основния не работи :) бакъпа е верен, интересното е че в питон скрипта работи, а модула казва, че не е верен хоста и тесла...
за WiFi има заблуда в примерите: тъй като джаджа и комп са в една мрежа
openssl s_client -showcerts -verify 5 -connect HOST/PORT
връща "верен" сертификат, но с даунлоаднат от google има "проблеми" с региона...

iot.eclipse.org:
за тестове с публичен CA_ROOT - работи


Общо взето съм тотално разочарован от Облаците...
Някой сигурно проектират - така че внимавайте с какво се захващате


Да добра е идеята да се ползват като човек да види какви са ги сътворили големите, но не винаги ще ти харесат нещата. Но пък си има и какво ново да научи човек от тях от личен опит. Но трябва да се внимава с тия платформи че те си дърпат $ и трябва да ги познаваш доста добре. Човек от майкрософт ми разправя как са изгаряли хора с десетки хил. Аз един път ми дръпна 275 $


Нед Юни 16, 2019 12:18 am
Профил
Ранг: Ориентиран
Ранг: Ориентиран

Регистриран на: Съб Май 17, 2008 10:01 pm
Мнения: 238
Мнение Re: Облаци ... и мента
Nikola Kirov написа:
И ние стигнахме до заключението че собствена виртуалка нейде из облаците и оттам нататък каквото си сътворим.
Всички останали решения от моите рисърчи са от типа плати пък след време не е ясно каква ще е хавата.
Първо почнахме на PYTHON + PHP + mosquito на линукс машина.
Програмиста ни обаче напредва изключително бавно.
Сега направихме нов екип на дот нет + mosquito пак на линукс машина. Малко трудно стартираха че се бориха много време с организацията на машината и целия процес, но се очаква нещата вече да стават много по бързо, дот нета е песен като гледам сравнено с комбинацията PHP + PHYTHON.


Ползвам .NET Core инсталиран на Линукс CeonOS 7 на собствен сървър Del PowerEdge R510 да си призная бая зор докато setup-на проекта. Но после си се случват нещата. За mosquito прилична работа. Големия плюс е ползването на Visual Studio поне при мен, понеже си е добро и го познавам. Все пак зависи човек на каква технология се е спрял и колко я разбира. За сървър ползвам NGINX


Нед Юни 16, 2019 12:23 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 27, 2005 11:48 am
Мнения: 4713
Мнение Re: Облаци ... и мента
За mosquito и бюджетен сървър(та дори и платки тип Расбери, които могат да понесат задачата) за "малко" клиенти правих следното
по подобие на плъгина му за ауторизация добавих мой...
Има около 4,5 "точки" в mosquito през които минава целия RX трафик и тези точки ги вързах с моя плъгин
от там плъгина, синхронно(загуба на време) или асинхронно(загуба на памет) при определени условия тъпче базата данни
или асинхронно извиква PHP, Python или Node с цел скриптова обработка(лесна редакция) и запис в базата.
Начина на работа на плъгина се определя от INI файла му
а другото му свойство е защита на интелектуалната собственост...
Икам да кажа че mosquito може да понесе и други правилно планирани задачи

Но експериментите горе бяха за малките джаджи, големите сървъри и облаци могат да понесат много...
Някой е планирал задание... Идва "меринджейче" и казва: тези сензори ще пращат данните в Azure(пример)... Ко правим?

_________________
main[-1u]={1};


Нед Юни 16, 2019 8:42 am
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 27, 2005 11:48 am
Мнения: 4713
Мнение Re: Облаци ... и мента
AWS срок на годност 2050
https://docs.aws.amazon.com/iot/latest/ ... certs.html

_________________
main[-1u]={1};


Нед Юни 16, 2019 9:19 am
Профил ICQ
Ранг: Ориентиран
Ранг: Ориентиран

Регистриран на: Съб Май 17, 2008 10:01 pm
Мнения: 238
Мнение Re: Облаци ... и мента
TheWizard написа:
Но експериментите горе бяха за малките джаджи, големите сървъри и облаци могат да понесат много...
Някой е планирал задание... Идва "меринджейче" и казва: тези сензори ще пращат данните в Azure(пример)... Ко правим?


Мий кофти брат ! Те такива от "меринджейче"- та е такова нивото чули за Azure cloud и голяма работа щеш не щеш трябва да се преоприентира човек към DevOps и да изучи целия им стек и как се работи там. Иска си и заигравката там, но стига да плащат ния "меринджейче"- та


Нед Юни 16, 2019 4:54 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 27, 2005 11:48 am
Мнения: 4713
Мнение Re: Облаци ... и мента
тест-хелп заигравка за Amazon IoT Core (за тест на връзка и сертификати)
PC Python 2..

Код:
# pip install paho-mqtt

# AWS - IoT Core
# https://us-east-2.console.aws.amazon.com/iot/home?region=us-east-2#/dashboard
# SELECT SERVER REGION
# SECURE - Policies - Create
#     your_policy_name
#       "Effect": "Allow",
#       "Action": "iot:*",
#       "Resource": "*"
# MANAGE - Things - Create
#   Create Certificates for thing and download all certificates files
# Activate thing and add your_policy_name

# https://www.youtube.com/watch?v=xa8_KdyyDDg

import os
from os.path import join
import paho.mqtt.publish as publish
import paho.mqtt.client as mqtt
import ssl

DIR = os.path.dirname(os.path.realpath(__file__)).replace("\\", "/")

# EDIT NAMES
MQTT_CLIENT_ID  = "CLIENT_ID"
MQTT_HOST       = "akc28iu7dn5ra-ats.iot.us-east-2.amazonaws.com"
CERTFILE        = join(DIR, "92960c2fcc-certificate.pem.crt")
KEYFILE         = join(DIR, "92960c2fcc-private.pem.key")

print "---BEGIN---"
publish.single(   'topic',
  payload       = '{"msg":"hello world"}',
  hostname      = MQTT_HOST,
  client_id     = MQTT_CLIENT_ID,
  tls           = {
    #'ca_certs'   : 'not used'
    'certfile'    : CERTFILE,
    'keyfile'     : KEYFILE,
    'tls_version' : ssl.PROTOCOL_TLSv1_2
  },
  port          = 8883,
  protocol      = mqtt.MQTTv311 )
print "----END----"

# https://docs.aws.amazon.com/iot/latest/developerguide/iot-security-identity.html

_________________
main[-1u]={1};


Нед Юни 16, 2019 5:20 pm
Профил ICQ
Покажи мненията от миналия:  Сортирай по  
Отговори на тема   [ 25 мнения ]  Отиди на страница 1, 2  Следваща

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 1 госта


Вие не можете да пускате нови теми
Вие не можете да отговаряте на теми
Вие не можете да променяте собственото си мнение
Вие не можете да изтривате собствените си мнения
Вие не можете да прикачвате файл

Търсене:
Иди на:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.
Хостинг и Домейни