Что бы еще такого сделать?... Предлагайте! Обсудим все!!!
Ответить

Re: Умный дом своими руками

Пн мар 09, 2020 10:56:04

По сути веб морда у меня для сервисных нужд (чтобы посмотреть статусы системы)потом отключу.

Про защиту, можно долго говорить и спорить (но все должно быть в адекватных рамках)

Представим что кто то задался целю взломать мой умный дом.
1.взлом wpa2
2.узнать айпи определеного модуля или айпи mqtt сервера
3.взломать пароль к mqtt серверу
4.подобрать идентификатор клиента mqtt сервера
5.Угадать топи, и команды mqtt

Телеграм, вариант не из легких но
1.Обойти защиту по админ id
2.Угадать команды

Взлом гугл акуанта, думаю тоже задача не из легких.
(я думаю они там в купертино штаны не просто так протирают)

И главный вопрос ДЛЯ ЧЕГО ЭТО ВСЕ КОМУ ТО?

Re: Умный дом своими руками

Вт мар 10, 2020 01:57:34

ДЛЯ ЧЕГО ЭТО ВСЕ КОМУ ТО - это вопрос отдельный)) Сейчас в инете развелось много "радиолюбителей" ))

sashamelja писал(а):1.взлом wpa2
2.узнать айпи определеного модуля или айпи mqtt сервера
3.взломать пароль к mqtt серверу
4.подобрать идентификатор клиента mqtt сервера
5.Угадать топи, и команды mqtt

Это всё не проблема)) Достаточно знать как работает mqtt протокол. https://habr.com/ru/company/advantech/blog/452904/

Цитата: "Стандартный порт MQTT-брокера для входящих TCP-соединений — 1883. При использовании защищенного SSL-подключения используется порт 8883."
От себя: защищенный SSL вас не спасёт от атаки "человек посередине". ))

Узнать айпи и MAC адреса всех устройств в доме можно с помощью обычного анализатора трафика))
Телеграм ещё пока не взламывал... А всякие там аккаунты и ящики с паролями воруют... ещё и как))

Поэтому при проектировании умного дома надо быть готовым к тому что весь трафик в доме и за домом могут видеть все "радиолюбители"))

Далее...
Мне тут стало интересно как работает мой умный дом по VPN. Скачал оперу... В опере есть бесплатный встроенный VPN.
-Мой комп 192.168.0.101 установил защищённый канал связи с сервером VPN 77.111.244.26 по протоколу TLS версии 1.2.
-Оправляю пакеты... на IP сервер VPN 77.111.244.26
-сервера VPN 77.111.244.26 преобразует IP в 77.111.244.101 и отправляет моему дому W5500.
-мой дом W5500 определяет с какого IP пришёл запрос... проверяет корректность запроса (формат пакета, контрольные суммы, ключи шифрования и т.д.) и все эти данные возвращает серверу VPN 77.111.244.101
-сервер VPN 77.111.244.101 возвращает данные моему компу.
Screenshot_2.jpg
(186.04 KiB) Скачиваний: 63

сервер VPN 77.111.244.26 находится где-то в Нидерландах))
Screenshot_1.jpg
(90.04 KiB) Скачиваний: 64

Короче всё работает. ))
Только по VPN тормозит всё конкретно (скорость передачи пакетов меньше в 2...3 раза).
А ещё сервер VPN 77.111.244.26 фильтрует весь HTTP трафик. Просто TCP пакеты он не пропускает. Надо писать всё как положено (согласно HTTP протоколу).
HTTP/1.1 200 OK
Access-Control-Allow-Origin: *\r\n
Content-Type: text/html\r\n\r\n
...
и т.д.
Но главное что всё работает. Буду в Нидерландах проверю)) :)))

Добавлено after 8 hours 19 minutes 20 seconds:
sashamelja писал(а):Если надумаете переходить на esp32...

Подумаем))
В интернете нашёл прикольное видео)) Чувак сделал Ethernet модуль на... ATtiny85 !!!

https://www.youtube.com/watch?v=mwcvElQS-hM
https://www.youtube.com/watch?v=m4f4OzEyueg

Я тоже так хочу )) Повторим эксперимент. Будем передавать UDP пакеты по интернету)) :)

Правда ATtiny85 у меня нет... возьмём Atmega8 )) И кварц 20 МГц. https://aliexpress.ru/item/32674069830. ... 81ca95a-12

Паяем по схеме.
схема.jpg
(32.41 KiB) Скачиваний: 52

Далее открываем AVR студию и пишем на... ассемблере)) Пипец... Не люблю ассемблер но по другому не получится))
Подробное описание Ethernet пакета лучше посмотреть тут - https://www.fpga4fun.com/10BASE-T2.html
ассемблер.jpg
(125.15 KiB) Скачиваний: 48

Далее... чувак подробно рассказывает про стандарт 10BASE-T и "Манчестер-II"... Правда у чувака явные проблемы с математикой...
ошибка.jpg
(37.88 KiB) Скачиваний: 51

Но не важно.

Прошиваем Atmega8... подключаем к роутеру... и... нифига не работает)) :))) Причина не понятна... нормального осциллографа нет. :dont_know:

Тогда делаем всё по стандарту 10BASE-T. Добавляем трансформатор )) https://aliexpress.ru/item/32742082279. ... d3ddcb5d-1

Заработало ! )) Сразу поднялся Link на роутере. Нажимаем на кнопку... побежали UDP пакетики))
Ethernet-Atmega8.jpg
(200.93 KiB) Скачиваний: 61

:tea:
*Резистор в схеме на всякий случай))

Пару слов про стандарт 10BASE-T. Проверим на практике стандарт 10BASE-T ))

"Манчестер-II" может иметь разную кодировку: так "1" > 10, "0" > 01 или так "1" > 01, "0" > 10.
Хотя роутер и работает с любой кодировкой, но второй вариант работает лучше (стабильней).
:roll:

Байты передаются младшим битом вперёд (как в UART).

Контрольную сумму Ethernet пакета (CRC-32) может посчитать Atmega8.
А можно посчитать вручную, в онлайн-калькуляторе и забить в программу)) http://www.sunshine2k.de/coding/javascr ... rc_js.html
CRC-32.jpg
(96.09 KiB) Скачиваний: 49

Только я не понял... зачем надо передавать CRC-32 начиная с младшего байта... B3 31 88 1B... но видимо так надо было)) Разработчикам Ethernet виднее))

Еще в стандарте 10BASE-T написано про Автосогласование - https://en.wikipedia.org/wiki/Autonegot ... al_signals
Если Atmega8 не передаёт пакеты, то она должна передавать импульсы соединения (NLP). И даже прописано требования к импульсам.
Сделаем по стандарту.))
puls.jpg
(24.28 KiB) Скачиваний: 53

Но как показала практика... роутеру пофигу эти стандарты)) Менял длительно (50...500 ns) и скважность (10...30 ms) и фазу импульсов... роутеру без разницы)) На самом деле роутер реагирует только на наличие или отсутствие импульсов, а не на их параметры)) Точнее роутер реагирует на любой сигнал (активность) на своём порту...
Можно вообще не передавать никаких импульсов (NLP), а сразу передавать пакеты.
-Если нет никаких импульсов, роутер отключает свой порт... и экономит электричество)).
-Как только появляются импульсы (или пакеты), роутер опять включает порт.
Одна проблема - время включения порта у роутера до 0,5 секунды. Поэтому если сразу передавать пакеты (пачками), то первые пакеты теряются. А в остальном всё нормально))

Короче... разобрали подробно Ethernet стандарт 10BASE-T. Сделали прикольный датчик)) Можно поставить куда-нибудь... Atmega8 может передавать UDP пакет прямо на мобильник... по интернету)) И никаких esp32 не надо))

Ещё порадовало низкое энергопотребление. Для сравнения (ток в режиме передачи):
-роутер 240...320 mA (зависит от количества активных портов).
-esp32 до примерно ~300 mA (точно не знаю).
-W5100 180mA
-W5500 80mA
-Atmega8 12mA (!).

Можно ещё добавить кнопок...
Теоретически можно добавить датчик температуры... напряжения и т.д.
Например тут собрали аналогичную схемку на ПЛИС - https://marsohod.org/projects/plata1/94-ether-send
Можно тоже самое сделать на Atmega8. Правда с Atmega8 придётся извратиться)) Atmega8 и так работает на пределе своих возможностей - тактовая частота 20 МГц, а максимальная ~25 МГц. ))

Ещё бы научить Atmega8 принимать пакеты...
Например тут собрали приёмник пакетов... https://marsohod.org/projects/marsohod2/263-rtl-recv
Но это для Atmega8 уже будет слишком сложно)) Тут нужен МК пошустрей... например како-нибудь STM32... с тактовой частой 72 МГц и т.д. и т.п.))
Последний раз редактировалось roman.com Вт мар 10, 2020 14:46:04, всего редактировалось 1 раз.

Re: Умный дом своими руками

Вт мар 10, 2020 14:45:38

Короче... всё работает. Трансформатор не нужен. Просто провода покороче.
Ethernet-Atmega8.jpg
(196.01 KiB) Скачиваний: 62

Или можно напрямую подключиться к микросхеме роутера. Всё работает.

Re: Умный дом своими руками

Ср мар 11, 2020 09:24:35

Тут как раз проблема в ПОКОРОЧЕ.
Но это другая тема розговора, в которой я не особо компетентен.
Извените и не особо хочитса вникать.

Я успел поигратса с разными контролерами,
но после того как поработал пару месяцов с esp32
(других даже на термостат не ставлю)
Я не знаю в чем причина- но 32 работает мега быстро и стабильно.
(сотнями часов без единого резета и зависов и малейших тормозов)
И самое главное стоит 3 долара готовый модуль.
А програмирование в FL6.3-позволяет творить чудеса даже школьнику.
В режиме клиент потребляет 150-180ма (меня это вполне устраевает)
К стабильности питания не превеледлива.

Я просто констатирую факт, который проверен лично мной.
Если передумаете, пишите.

Re: Умный дом своими руками

Чт мар 12, 2020 14:10:44

проблема в том что мне не надо ПОКОРОЧЕ
мне надо ПОПОДРОБНЕЙ
:tea:
Ответить