Сундучок на базе raspberry pi, который распознает ваше лицо

Содержание

Любопытный случай обнаружения вредоносного устройства Raspberry Pi

История о том, как мы нашли, исследовали (с помощью сообщества в Reddit) и в итоге обнаружили, кто подключил вредоносное устройство к нашей сети.

Автор: Christian Haschek

История о том, как мы нашли, исследовали (с помощью сообщества в Reddit ) и в итоге обнаружили, кто подключил вредоносное устройство к нашей сети.

На прошлой неделе я получил сообщение и фото от своего коллеги.

Рисунок 1: Сообщение с просьбой проверить, куда подключено неизвестное устройство Raspberry Pi

Поскольку в основном я работаю удаленно, то попросил коллегу отключить и поместить найденное устройство в надежное место, а также сделать фотографии всех компонентов и образ SD карты. У меня большой опыт работы с разными проектами, где использовалось Raspberry Pi , и я был уверен, что смогу разобраться, в чем дело.

На тот момент никто не подозревал, что устройство используется во вредоносных целях. Все думали, что кто-то из сотрудников проводит эксперимент.

Найденное устройство состояло из трех блоков:

· Raspberry Pi модель b первого поколения.

SD карта размером 16 Гб (с повышенной скоростью).

Рисунок 2: USB ключ и SD карта

Первое, что нужно было сделать: спросить, у кого есть доступ к этому сетевому узлу.

Оказалось, что ключ от этого небольшого шкафа был всего у 4 человек:

У моего коллеги.

Никто из вышеперечисленных людей ничего не знал про найденное устройство. Коллеги из IT -отдела были так же озадачены, как и я. Я слышал истории, когда людям платили вознаграждение за несанкционированное подключение подобного рода штуковин, и по этой причине мне стало особенно интересно разобраться, что произошло на самом деле.

За помощью в решении этой загадки я обратился на Reddit , и ключ был опознан как микропроцессор, по функционалу практически не уступающий Rasberry Pi : nRF 52832- MDK . Очень мощное считывающее устройство с поддержкой Wi – Fi , Bluetooth и RFID .

Рисунок 3: USB ключ (модель nRF52832-MDK)

Вне всякого сомнения, этот USB ключ предназначался для того, чтобы старая версия Raspberry Pi могла работать по Wi – fi и Bluetooth .

Исследование образа SD карты

На SD карте оказалось несколько разделов. Большинство с файловой системой ext 4 ( linux ), и один загрузочный с fat 16.

Рисунок 4: Структура разделов образа

В своей системе на базе дистрибутива Debian я получил первую важную информацию: образ на SD карте был создан и установлен при помощи R esin .

Рисунок 5: Разделы образа SD карты, созданного в Resin

Resin (сейчас переименован в Balena ) представляет собой платный веб-сервис, при помощи которого можно создавать образы для IoT -девайсов, настраивать эти устройства, получать обновления и осуществлять взаимообмен данными с Resin .

Resin также устанавливает VPN на устройстве, чтобы собранные данные передавались безопасно. Очевидно, что создатель планировал забрать свой девайс, поскольку устройство хранило следы в виде учетной записи для подключения к платному сервису.

Детальное исследование разделов

Первый раздел называется « resin boot ».

Рисунок 6: Содержимое раздела resin boot

Сразу же попадается на глаза файл config . json . Неужели мы сорвали быстрый джекпот?

Рисунок 7: Содержимое файла config . json , находящегося в разделе resin boot

Что мы можем понять, изучив этот файл:

На устройстве используется приложение «logger». Не очень хороший знак.

Имя пользователя, которое, скорее всего, является именем учетной записи в сервисе Resin, привязанной к этому устройству.

На устройстве используется VPN на 443 порту.

Дата регистрации. Регистрация (или первая настройка) была 13 мая 2018 года.

Поиск по имени пользователя

Когда я загуглил имя пользователя, найденное в файле config . json , то обнаружил человека в том же самом городе, где было найдено устройство. Компания проверила свою картотеку по этому человеку, но ничего обнаружено не было.

Очень странным было то, что я обнаружил сайт от 2001 года, где родители «одаренных детей» писали статьи о себе и по каким-то причинам ставили подписи в виде домашнего адреса и номера телефона. Теперь у меня было имя и адрес всей семьи.

Рисунок 8: Схожий сайт с тем, что был обнаружен мной

На самом деле, я мог идти по ложному следу, поскольку схожие имена пользователей могут использоваться разными людьми. Пока просто запомним найденное имя.

В директории с данными не оказалось ничего интересного (как, например, собранной информации). Мне лишь удалось обнаружить приложение на базе Node.js, которое было сильно обфусцировано, и на данный момент я не могу сказать, зачем это приложение было нужно.

Кажется, происходил контакт с ключом через последовательное соединение, но мне не удалось понять, какие данные собирались. Могу только предположить, что собирались профили движения (перемещения) для Bluetooth и Wi – fi устройств на близлежащей территории и, возможно, сырые Wi – Fi пакеты.

Но я нашел нечто намного более интересное: файл LICENSE . md .

Рисунок 9: Содержимое файла LICENSE . md

Странно… Почему это приложение содержит столь конфиденциальную информацию. Я погуглил компанию из раздела об авторских правах, и что бы вы думали?

Человек, использовавший имя пользователя, найденное в конфигурационном файле, является совладельцем этой компании.

Для меня остается загадкой, зачем совладельцу компании распространять подобного рода устройства в городе.

Поиск домашнего адреса злоумышленника

В третьем разделе ( resin – state ) я нашел еще один интересный файл в директории / root – overlay / etc / NetworkManager / system – connections / с именем resin wifi -01. И что бы вы думали было в этом файле?

Рисунок 10: Содержимое файла resin wifi -01

В этом файле оказалась учетная запись к Wi – Fi сети, которая использовалась для настройки (или тестирования) устройства. Но этот Wi – Fi не принадлежал компании. А что мы делаем, чтобы найти местонахождение по имени сети? Идем в wigle . net , вводим SSID (эквивалентно имени сети) и находим точку на карте.

Рисунок 11: Имя и адрес оказались неактуальными

Думаете найденный адрес совпал с адресом родителей одаренных детей? Сервис wigle . net выдал адрес, где было найдено подозрительное устройство.

Я проверил логи DNS -сервера и обнаружил точную дату, когда найденное устройство впервые оказалось в сети. Я проверил логи RADIUS -сервера, чтобы посмотреть, кто из сотрудников находился в помещении в то время, но нашел только множество сообщений об ошибках, что были попытки подключения по Wi – Fi при помощи деактивированной учетной записи.

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

Сейчас этим делом занимаются юристы. Я свою работу выполнил, а остальное выходит за рамки моей компетенции.

Это был очень интересный случай, и я бы хотел поблагодарить всех, участвующих в дискуссии на Reddit , кто помог мне в решении этой загадки.

Подписывайтесь на каналы “SecurityLab” в Telegram и Яндекс.Дзен, чтобы первыми узнавать о новостях и эксклюзивных материалах по информационной безопасности.

Обнаружение объектов с помощью Глубокого Обучения на Raspberry Pi

CEO проекта NanoNets рассказал об использовании нейронных сетей на небольших устройствах вроде Raspberry Pi.

В мире существует множество устройств с ограниченной памятью и небыстрыми процессорами, такие как, например, мобильные телефоны и Raspberry Pi, которые не могут запускать сложные модели глубокого обучения. Эта статья показывает, как вы тем не менее можете распознавать объекты при помощи Raspberry Pi.

Если вам не терпится, вы можете пролистать пост до ссылок на GitHub.

Почему Raspberry Pi?

Raspberry Pi покорил сердца людей: в мире продано около 15 миллионов устройств, на которых создаются отличные проекты. Учитывая популярность Raspberry Pi и глубокого обучения, мы решили создать систему распознавания любого объекта при помощи Pi.

Что такое обнаружение объектов?

За 20 миллионов лет эволюции человеческое зрение сильно развилось. 30% нейронов мозга человека работают над обработкой визуальной информации, для осязания этот показатель составляет 8%, а для слуха — 3%.

По сравнению с машинами, у людей есть два больших преимущества: стереоскопическое зрение и бесконечное количество данных для обучения (за пять лет жизни ребенок обрабатывает примерно 2,7 миллиарда изображений со скоростью 30fps).

Чтобы имитировать производительность людей, учёные разбили задачу визуального восприятия на четыре категории:

  1. Классификация — присваивание ярлыка целому изображению.
  2. Локализация — определение рамки вокруг объекта и его описание.
  3. Обнаружение объектов — создание нескольких рамок на изображении.
  4. Сегментация изображения — создание точных сегментов, содержащих объекты, на изображении.

Обнаружение объектов применяется в нескольких случаях. Хотя сегментация изображения дает более точный результат, её проблемой является сложность создания данных для обучения. Человек в 12 раз дольше сегментирует изображение по сравнению с созданием рамок. Более того, после обнаружения объекта есть возможность сегментировать его из рамки.

Использование обнаружения объектов

Обнаружение объектов — это важная функция, которая используется во многих индустриях. Несколько примеров показаны ниже:

Как использовать обнаружение объектов для решения моих проблем?

Обнаружение объектов можно использовать для ответа на многие вопросы. Вот несколько категорий:

  1. Присутствует ли объект на моем изображении? Пример: нет ли в моем доме грабителя?
  2. Где находится объект на изображении? Пример: когда автомобиль перемещается, важно знать, где находятся разные объекты.
  3. Сколько объектов на изображении? Пример: сколько коробок стоит на полке в складе?
  4. Какие типы объектов есть на изображении? Пример: какое животное находится в конкретной части зоопарка?
  5. Каков размер объекта? При помощи статичной камеры просто определить размер объекта. Пример: какого размера манго?
  6. Как разные объекты взаимодействуют друг с другом? Как группировка на футбольном поле влияет на результат?
  7. Где находится объект во времени? Пример: отслеживание движущегося объекта вроде поезда и вычисление скорости.
Читайте также:  Проверка светодиодов в лампе

Обнаружение объектов менее чем за 20 строк кода

Существуют разные модели и архитектуры для обнаружения объектов. Каждая отличается по скорости, размеру и точности. Мы выбрали один из самых популярных алгоритмов — YOLO, и показали, как он работает в 20 строк кода (если игнорировать комментарии).

Примечание: это псевдокод. который не должен быть рабочим примером. В нем есть черный ящик, часть со сверточной нейронной сетью, которая довольно стандартна и показана на изображении ниже. Вы можете прочитать полную статью здесь: https://pjreddie.com/media/files/papers/yolo_1.pdf.

Архитектура сверточной нейронной сети, которая используется в YOLO

Как создать модель глубокого обучения для обнаружения объектов?

Процесс глубокого обучения состоит из шести шагов, которые разбиты на три части:

  1. Сбор данных для обучения
  2. Обучение модели
  3. Прогнозы на новых изображениях

Фаза 1 — сбор данных для обучения

Шаг 1. Соберите изображения (минимум 100 на один объект)

Для этой задачи вам нужно будет сто изображений для одного объекта. Попытайтесь собрать данные, максимально близкие к тем, для которых вы потом будете делать прогнозы.

Шаг 2. Аннотации (нарисуйте рамки на изображениях вручную)

Нарисуйте рамки на изображениях. Вы можете использовать инструмент вроде labelImg. Вам понадобятся люди, которые будут работать над аннотациями. Это занятие может занять много времени.

Фаза 2 — обучение модели на графическом процессоре

Шаг 3 — поиск уже обученной модели для обучения на основе переноса

Вы можете прочитать об этом больше здесь. Вам нужна будет обученная модель, чтобы сократить необходимое для обучения количество данных. Без этого шага вам понадобится минимум 100 тысяч изображений для обучения модели. Вы можете найти обученные модели в этом репозитории.

Шаг 4 — обучение на графическом процессоре (облачные сервисы вроде AWS/GCP или вашем собственном процессоре)

Для упрощения процесса обучения мы создали docker image, которое сделает обучение проще.

Чтобы начать обучение модели, вы можете запустить:

По этой ссылке вы можете узнать больше о деталях процесса.

В docker image содержится скрипт run.sh, который можно вызвать при помощи следующих параметров.

Больше деталей можно найти здесь.

Чтобы обучить модель, вам нужно подобрать правильные гиперпараметры.

Подбор гиперпараметров

Искусство глубокого обучения требует поиска лучших параметров для повышения точности модели. Этот процесс — это немного магии и немного теории. Вот отличный ресурс, который поможет вам найти правильные параметры.

Квантование модели (чтобы она умещалась на маленьких устройствах)

На маленьких устройствах вроде телефонов или Raspberry Pi очень мало памяти и вычислительной мощности.

Обучение нейронной сети происходит при помощи внесения крохотных изменений в веса, и этим изменениям для работы нужна точность плавающей запятой (хотя в некоторых исследованиях здесь пытаются применить и квантованные репрезентации).

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

Зачем производить квантование?

Модели на основе нейронных сетей могут занимать много места на диске. Почти все пространство занимают веса нейронных связей, так как в одной модели много миллионов таких весов.

Узлы и веса нейронной сети обычно хранятся как 32-битные числа с плавающей запятой. Цель квантования — сжать размер файлов при помощи хранения минимума и максимум каждого слоя, а затем привести каждое плавающее значение к восьмибитному целому числу. Размер файлов сокращается на 75%.

Код для квантования:

Примечание: в наш docker image уже встроено квантование.

Фаза 3 — предсказание на новых изображениях

Шаг 5 — захват нового изображения посредством камеры

Вам нужна будет работающая камера Raspberry Pi. Затем захватите новое изображение.

Для инструкции по установке посмотрите эту ссылку.

Шаг 6 — прогноз на основе нового изображения

Скачайте модель

Как только вы закончите обучать модель, вы можете скачать её на Pi. Чтобы экспортировать модель, запустите:

Затем загрузите модель на Raspberry Pi.

Установка TensorFlow на Raspberry Pi

В зависимости от устройства вам, возможно, нужно будет изменить установку.

Запустите модель для прогноза

Измерение производительности Raspberry Pi

У Raspberry Pi есть ограничения по памяти и вычислительной мощности (совместимая с GPU Raspberry Pi версия TensorFlow пока недоступна). Таким образом, важно измерить, сколько времени у модели займет создание прогноза на новом изображении.

Рабочий процесс с NanoNets

Наша цель в NanoNets — сделать работу с глубоким обучением очень простой. Обнаружение объектов — это важная область для нас, и мы создали процесс, который решает много проблем с внедрением моделей глубокого обучения.

Как NanoNets делает процесс проще:

Мы убрали потребность в аннотации изображений, у нас есть аннотаторы, которые сделают это за вас.

  1. Автоматизация лучшей модели и выбор гиперпараметров

Мы автоматически обучаем лучшую модель для вас, запуская ряд моделей с разными параметрами, чтобы выбрать лучшую для ваших данных.

  1. Отсутствие необходимости в дорогом оборудовании

NanoNets находится в облаке и работает. не используя ваше оборудование.

  1. Совместимость с мобильными устройствами вроде Raspberry Pi

Так как устройства вроде Raspberry Pi и смартфоны не созданы для сложных вычислительных задач, вы можете передать рабочий процесс в облако, которое делает все вычисления за вас.

Вот небольшой отрывок для создания прогноза на основе изображения при помощи NanoNets API

Создание своей NanoNet


Вы можете создать свою модель при помощи:

Шаг 1: клонируйте репозиторий

Шаг 2: получите бесплатный ключ API

Получите бесплатный ключ API здесь.

Шаг 3: установите ключ API как Environment Variable

Шаг 4: создайте новую модель

Примечание: здесь генерируется MODEL_ID, который вам нужен будет для следующего шага.

Шаг 5: установите Model ID как Environment Variable

Шаг 6: загрузите данные для обучения

Соберите изображения объекта, который вы хотите обнаруживать. Вы можете оставлять аннотации при помощи нашего веб-UI (https://app.nanonets.com/ObjectAnnotation/?app >

Шаг 7 — обучение модели

Как только изображения загружены, начните обучать модель.

Шаг 8 — получите состояние модели

Обучение модели занимает два часа. Вы получите письмо, как только обучение закончится. В процессе вы можете проверять состояние модели.

Шаг 9 — сделайте прогноз

Как только модель будет обучена, вы сможете делать прогнозы.

12 применений, которые можно найти Raspberry Pi

Компьютер размером с кредитку способен на многое.

1. Настольный компьютер

Несмотря на то что Raspberry Pi не самая мощная штука, его возможностей вполне хватит для создания простенького компьютера. Вряд ли вы сможете играть на подобном устройстве в тяжеловесные игры, но для офисной работы, просмотра фильмов, прослушивания музыки и интернет-сёрфинга Raspberry Pi хватит.

Помимо самого Raspberry Pi, вам понадобится корпус для него, карта microSD, блок питания, кабель HDMI и подходящий дисплей, а также клавиатура и мышь — беспроводные или подключаемые по USB. Наушники или колонки тоже не помешают. У устройства есть встроенные Wi-Fi, Bluetooth и Ethernet-порт, так что проблем с интернетом не возникнет.

Специально для Raspberry Pi разработан дистрибутив Linux Raspbian. Но если он вам не по душе, можете установить привычную Ubuntu MATE, консервативный, но стабильный Debian или постоянно обновляющийся Arch (с последним, скорее всего, справятся только гики). Вообще подойдёт любой дистрибутив — главное, убедитесь, что он поддерживает архитектуру процессора ARM.

При желании вы можете вкатить на Raspberry Pi даже Windows 10 — для этого вам понадобится установщик WOA Deployer.

Установите в систему медиапроигрыватель, офисный пакет, браузер и прочие необходимые вам штуки — и у вас появляется дешёвый, бесшумный и миниатюрный компьютер.

2. Медиацентр

Raspberry Pi отлично подходит для создания собственного медиацентра. Вам понадобится любой телевизор, поддерживающий HDMI. Причём необязательно, чтобы телевизор был новым или «умным».

Поставьте на Raspberry Pi любой дистрибутив Linux на выбор. Затем загрузите и установите в него Kodi. Это великолепная программа для медиасервера, с удобным и стильным интерфейсом, кучей возможностей, плагинов и тем оформления. И к тому же бесплатная.

А если докупить ещё какой-нибудь пульт, подключающийся по Bluetooth, можно с удобством управлять программой прямо с дивана.

Kodi привносит на Raspberry Pi множество функций. С ним вы можете смотреть любые фильмы и сериалы, слушать музыку и любоваться фотографиями, подключаться практически к любым стриминговым сервисам, скачивать торренты, сёрфить по сети.

А если вам чего-то не хватает, загляните в репозиторий расширений Kodi — найдёте там ещё уйму всяких интересных штуковин.

3. Умный телевизор

В довесок к предыдущему пункту стоит сказать, что связка из Raspberry Pi и Kodi способна сделать умным вообще любой телевизор — даже тот старый ящик у вашей бабули. Для этого понадобится специальный аналоговый кабель (вроде такого).

Подключаем к старому телевизору Raspberry Pi с Linux и Kodi на борту, коннектим к одноплатнику пульт ДУ, и можно спокойно смотреть «Игру престолов» на даче. Не нужно везти за город огромную плазму — пользуемся тем, что есть на месте.

4. Музыкальный проигрыватель

Любите музыку? Если у вас имеется запасной комплект хороших колонок, можете подключить их к Raspberry Pi и превратить одноплатный компьютер в музыкальную станцию.

Для Raspberry Pi создан специальный дистрибутив под названием Pi MusicBox, который предоставляет множество интересных возможностей. С ним вы сможете стримить музыку из Spotify, SoundCloud, Google Music и слушать подкасты iTunes и gPodder. Воспроизводить локальные и сетевые музыкальные файлы в MP3, OGG, FLAC, AAC и наслаждаться тысячами радиостанций через TuneIn, Dirble, AudioAddict и SomaFM. А ещё скробблить на Last.fm.

Pi MusicBox поддерживает внешние звуковые карты USB — это важно для меломанов, поскольку встроенный звук у Raspberry Pi не лучшего качества.

5. Приставка для ретроигр

Современные AAA-проекты Raspberry Pi, конечно, не потянет, а вот старые добрые хиты для NES, SNES, Sega Master System, Genesis и прочие взлетят на нём на ура. Для Linux существует огромное количество эмуляторов классических консолей, которые легко установить в любой дистрибутив.

Либо вы можете не париться и сразу выбрать один из дистрибутивов, которые целиком заточены под эмуляцию классических игр. К примеру, Recalbox или RetroPie. Они оптимизированы для Raspberry Pi и поддерживают как современные контроллеры от PlayStation 3/4 и XBox 360/One, так и реплики классических (например, такую).

Для пущего олдскула рекомендуется запускать всё это добро на старом выпуклом экране аналогового телевизора, и вы сами не заметите, как слёзы ностальгии увлажнят бороду.

6. Клиент Steam Link

Производительность Raspberry Pi не позволяет играть на нём в особо требовательные игры. Но это не значит, что одноплатник для геймера бесполезен. Вам наверняка известно, что в клиенте Steam есть функция «Домашняя трансляция».

Работает она так: вы запускаете игру на своём мощном ПК, а затем изображение начинает транслироваться в реальном времени на другое устройство, с которого вы и будете управлять игрой.

В качестве такого устройства вполне может выступать Raspberry Pi. Подключите его к монитору или телевизору, подсоедините геймпады (лучше всего родной Steam Controller) и дайте доступ через Ethernet к вашей домашней локальной сети.

Читайте также:  Wi-fi контроллер управления освещением

Затем установите приложение Steam Link, которое официально доступно на Raspberry Pi для системы Raspbian. Включите игру на ПК, начните трансляцию. И Rasbperry Pi превратится в своего рода консоль.

7. Сервер беспроводной печати

Допустим, у вас есть старый принтер. Не настолько старый, чтобы его выбросить. Но и не достаточно новый, чтобы им поддерживалась технология подключения к беспроводной сети. А у вас дома много разных устройств, с которыми хотелось бы этот принтер использовать. Raspberry Pi вам в этом поможет.

Установите на ваш одноплатный компьютер любую систему по вашему вкусу (Raspbian или Debian отлично подойдут). Затем в системе установите пакеты Samba и CUPS. Подключите принтер к Raspberry Pi кабелем, и в настройках системы сделайте его сетевым.

Подсоединяем Raspberry Pi к Wi-Fi, и вот на вашем принтере можно печатать с любого компьютера или ноутбука в локальной сети.

А если доустановить в систему пакет avahi-discover, то у принтера появится поддержка функции Air Print. Через него можно будет печатать «по воздуху» с iPhone, iPad или Android.

8. Сетевой диск

NAS — это сетевое хранилище в компактном корпусе, которое позволяет легко создавать бэкапы и восстанавливать данные со всех ваших компьютеров в локальной сети. У него много преимуществ, но всё-таки это довольно дорогая штука. Raspberry Pi может всё то же дешевле.

Возьмите Raspberry Pi с установленным Linux на борту и подключите к нему несколько жёстких дисков. Можно использовать как интерфейс SATA, так и USB. Затем в настройках носителей сделайте их общедоступными для всех ваших компьютеров в локальной сети. Получится эдакий импровизированный NAS.

Теперь ваши данные будут в безопасности. Сохраняйте все документы, фотографии и прочие важные сведения на диски Raspberry Pi и будьте уверены, что с ними ничего не случится.

Встроенное средство архивации Windows 10 и другие программы для бэкапов умеют сохранять резервные копии на сетевые диски, так что процесс копирования можно полностью автоматизировать.

9. Собственное облако

Итак, у вас появилось собственное сетевое хранилище. Почему бы не пойти дальше и не создать своё личное облако? Зачем зависеть от Google и Dropbox, которые просят денег за каждый лишний мегабайт?

Чтобы развернуть на Raspberry Pi свой облачный сервер, вам понадобится дистрибутив вроде Raspbian или Debian и специальное приложение ownCloud либо его аналог Nextcloud. У них есть и десктопные клиенты для всех платформ, и мобильные приложения.

Создав на Raspberry Pi облако, вы получите огромный простор для действий. Автоматическая синхронизация файлов на всех платформах, точно настраиваемая и очень быстрая. Хранилище для контактов и почты (прощай, Gmail). Хранилище для заметок (прощай, жадный Evernote). Вы можете даже развернуть свой сервис для управления задачами и работать на Raspberry Pi командой, как в каком-нибудь Trello.

10. Загрузчик торрентов

Те, кто любит скачивать разные вещи с трекеров, могут превратить Raspberry Pi в универсальный загрузчик торрентов. Для этого понадобится, собственно, сам одноплатный компьютер, и один или несколько жёстких дисков, подключённых по USB либо SATA.

Установите на Raspberry Pi систему и торрент-клиент. Например, лёгкий Transmission или функциональный qBittorrent. Управлять ими можно с любого компьютера в домашней сети через веб-интерфейс в браузере.

Либо можно настроить клиент так, чтобы он автоматически забирал torrent-файлы из папки какого-нибудь облачного хранилища вроде Dropbox. Скидываете torrent-файл с любого устройства в папку, и устройство автоматически начнёт загрузку.

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

11. Маршрутизатор

Из Rasbperry Pi можно сделать нечто вроде роутера, который будет блокировать рекламу на всех устройствах в вашей домашней сети. Установите на одноплатный компьютер специальное приложение под названием Pi-Hole, настройте, затем переведите Raspberry Pi в режим раздачи Wi-Fi. Возможно, вам придётся докупить внешний модуль Wi-Fi для Pi, если качество сигнала покажется неудовлетворительным.

Когда все ваши гаджеты будут подключаться к интернету через Pi-Hole, на них перестанет отображаться реклама. Баннеры в браузерах, всплывающие окна в приложениях на смартфонах или умных телевизорах — всё это будет заботливо вырезано.

Кроме того, Pi-Hole может блокировать нежелательные для вас сайты и показывать подробную статистику по расходам интернет-трафика.

А если немного поковыряться с настройкой, то с Raspberry Pi можно пропускать весь ваш трафик через VPN или TOR. Тогда вы забудете о постоянных блокировках.

12. Веб-сервер

У вас есть собственный сайт, блог или что-то в этом духе, и вам надоело постоянно платить за хостинг? Почему бы не разместить своё творение на Raspberry Pi? Конечно, одноплатник вряд ли потянет огромный ресурс с миллионами посетителей, но если сайт у вас небольшой, устройство с ним справится.

Можете установить на Raspberry Pi Apache, PHP, MySQL, WordPress — любые инструменты, которые вам понадобятся, и миниатюрный компьютер станет вполне неплохим веб-сервером. Остаётся только приобрести у интернет-провайдера статический IP. Или даже обойтись без этого, воспользовавшись сервисом No-IP.com.

Это далеко не всё, что можно сделать с Raspberry Pi. Умельцы в Сети делают из него собственные метеостанции, системы видеонаблюдения, автоматические раздатчики корма для собак и удобрений для цветов, и даже огромных боевых роботов. Наконец, ничто не мешает задействовать Raspberry Pi для нескольких задач сразу — всё зависит только от ваших потребностей и фантазии.

Распознавание лиц с помощью OpenCV и Raspberry Pi

ОБ ЭТОМ ПРОЕКТЕ
ОБОРУДОВАНИЕ, ИСПОЛЬЗУЕМОЕ В ЭТОМ ПРОЕКТЕ

Описание Проекта:

В этом проекте мы используем OpenCV в Raspberry Pi. Проект используется для обнаружения человеческого лица с помощью инструмента OpenCV. Чтобы выполнить обнаружение объектов с помощью каскадных файлов, для сначала вам нужны сами каскадные файлы. Для чрезвычайно популярных задач этот файл уже существует.

Используемое программное обеспечение

1.Raspian OS:

Это рекомендуемая ОС для Raspberry Pi. Вы можете также установить другие ОС от третьей стороны. Raspbian OS – это ОС на основе debian. Мы можем установить его из установщика noobs. Вы можете получить ссылку отсюда

2.Putty:
PuTTY – клиент SSH и telnet, разработанный Simon Tatham для платформы Windows. PuTTY – это программное обеспечение с открытым исходным кодом, которое доступно с исходным кодом и разрабатывается и поддерживается группой добровольцев. Здесь мы используем PuTTY для удаленного доступа к малине.

Вы можете скачать PuTTY здесь

3.OpenCV:
OpenCV (Open Source Computer Vision Library) представляет собой библиотеку программного обеспечения для компьютерного зрения и машинного обучения с открытым исходным кодом. OpenCV была создана для обеспечения общей инфраструктуры приложений для компьютерного зрения и ускорения использования восприятия машины в коммерческих продуктах. Будучи лицензированным BSD продуктом, OpenCV упрощает для бизнеса использование и изменение кода. В библиотеке имеется более 2500 оптимизированных алгоритмов, которые включают в себя полный набор классических и современных алгоритмов компьютерного зрения и машинного обучения. Эти алгоритмы могут использоваться для обнаружения и распознавания лиц, идентификации объектов, классификации действий человека в видео, отслеживания движения камеры, отслеживания движущихся объектов и извлечения 3D-моделей объектов.

Используемое оборудование

Здесь вам понадобятся только два устройства:
1. Raspberry Pi:
Это последняя версия Raspberry Pi. В ней встроены Bluetooth и Wi-Fi, ранее приходилось использовать Wi-Fi свисток в одном из портов USB. Всего в RPI3 40 контактов. Из 40 контактов 26 являются контактами GPIO, а остальные – штырьками питания или заземления (плюс два вывода ID EEPROM.)
Имеется 4 порта USB и 1 слот Ethernet, один порт HDMI, 1 порт аудиовыхода и 1 порт micro usb, а также многое другое. Есть один слот для карт micro sd, в котором мы должны установить карту micro sd с рекомендованной операционной системой. Существует два способа взаимодействия с вашим Raspberry Pi. Вы можете напрямую взаимодействовать через порт HDMI, подключая кабель HDMI к VGA, а также клавиатуру и мышь, а также вы можете взаимодействовать с любой системой через SSH (Secure Shell). (Например, через putty ssh.)

2. Raspberry Pi Camera:
Модуль камеры Raspberry Pi можно использовать для съемки видео высокой четкости, а также фотографий неподвижных изображений. Его легко использовать новичкам, но также есть много возможностей модуль может предложить продвинутым пользователям. Существует множество примеров онлайн-пользователей, которые используют его для time-lapse, slow-motion видео и других проектов. Вы также можете использовать библиотеки, связанные с камерой, для создания эффектов.

Установка OpenCV

Шаги установки OpenCV для Python на Raspberry Pi:

) sudo apt-get update

2) sudo apt-get upgrade

3) sudo apt-get install build-essential

4) sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev

5) sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev

6) sudo apt-get install python-opencv

7) sudo apt-get install python-matplotlib

Настройка и включение камеры
Для обнаружения лиц вам необходимо настроить PiCamera. Шаги для включения камеры приведены ниже:

После выполнения этих шагов сначала вы можете захотеть проверить включена ли камера, сделав одно изображение с помощью команды:

sudo raspistill -o filename.jpg

Если камера включена успешно, вы получите изображение в той же папке.

5 шагов, чтобы построить портативную станцию хакера из Raspberry Pi и Kali Linux

Крекинг Wi-Fi паролей, подмена аккаунтов и тестирование сети для поиска уязвимостей — все это довольно интересно, но если хотите заняться этим в дороге, то захочется иметь легкую портативную установку

.
Используйте Kali Linux на Raspberry Pi.

Kali Linux on Raspberry Pi_1

Kali Linux является операционной системой, построенной для тестирования на проникновение сети. Вы можете запустить ее на своем ноутбуке, чтобы взломать пароли близлежащих Wi-Fi, обманывать сети, тестировать Bluetooth на наличие уязвимостей, а также множества других вещей.

Помните, что использование этих знаний, чтобы ворваться в защищенные сети, скорее всего, приведет к вашему аресту и обвинению в уголовном преступлении, ведь возможном нарушении закона о компьютерной безопасности. Вы должны использовать эти знания только во благо, для собственного обучения, и применять только с сетями, которые контролируете.

Мы говорили довольно подробно об использовании Kali Linux, поэтому не будем рассматривать это здесь, но проверьте нашего гида для просмотра всего, что можете делать с ним. Все, что относится к версии RPi, построим здесь.
RPi представляет собой небольшой, размером с кредитную карту компьютер, который не требует много энергии для использования. Если объедините RPi и Kali Linux вместе, то получите супер-портативную машину для тестирования сети, которую можете принести с собой куда угодно. В этом руководстве, мы покажем вам, как получить Kali и запустить его на RPi с сенсорным экраном. Таким образом, вам не нужно устанавливать Kali Linux на основном компьютере.

Что вам понадобится


• Raspberry Pi (Модель B+ или лучше, 2)
• Аккумуляторная батарея (любая внешняя батарея на 5В с портом USB, построена для смартфонов, должно работать, хотя существуют и более элегантные решения)
• Wi-Fi карта
• SD-карта емкостью не менее 8 ГБ
• Сенсорный экран PiTFT (можете также использовать большой с официальным 7-дюймовый сенсорный экран, если не против носить с собой большое устройство и иметь лучший экран)
• Корпус (необязательно, но если вы носите повсюду с собой RPi, это полезно.)
• Клавиатура (например, небольшая беспроводная клавиатура с тачпадом, которая со всем вписывается в небольшую сумку)
• Обычный компьютер (для выполнения начальной установки)

Читайте также:  Как проверить стартер лампы дневного света мультиметром?

Шаг первый. Установите Kali на Raspberry Pi
Прежде, чем сделать что-либо, вы должны скачать и установить собранный для сенсорного экрана образ Kali Linux для RPi. Это просто, как установка любой другой операционной системы RPi, и вот короткая версия:

Как установить Kali на SD карту в ОС Windows
1. Загрузите образ Kali Linux RPi TFT и распакуйте файл .img на своем ПК. Примечание: Если вы не используете сенсорный дисплей, скачайте обычную версию Kali Linux для RPi.
2. Загрузите Win32DiskImager и распакуйте приложение(файл .exe) на своем ПК.
3. Вставьте SD-карту в свой ПК с Windows с помощью устройства чтения карт.
4. Откройте приложение Win32DiskImager.exe, который вы только что скачали, с помощью двойного щелчка на нем. Если вы работаете на Windows 7 или 8, щелкните правой кнопкой мыши на нем и выберите вместо этого “Run as Administrator” (Запуск от имени администратора»).
5. Если ваша карта памяти SD автоматически не обнаружена приложением, нажмите на выпадающее меню в верхнем правом углу (с надписью “Device” — Устройство) и выберите ее из списка.
6. В разделе файл образа программы, нажмите на маленький значок папки и выберите файл Raspbian .img, который вы только что скачали.
7. Нажмите кнопку Write (запись) и подождите, пока Win32DiskImager сделает свое дело. Когда он закончит, можете смело вынимать карту SD и вставить ее в свой RPi.

Как установить Kali на карту SD в OS X
1. Загрузите образ Kali Linux RPi TFT и распакуйте файл .img на ком’ютері. Примечание: Если вы не используете сенсорный дисплей, скачайте обычную версию Kali Linux для RPi.
2. Загрузите RPi-sd card builder (не забудьте выбрать подходящую версию для установленной версии OS X) и распакуйте приложение
3. Вставьте SD-карту в Mac с помощью кард-ридера.
4. Откройте RPi-sd card builder. Вам сразу же будет предложено выбрать образ Raspbian. Выберите файл .img, который скачали ранее.
5. Будет запрошено, подключена карта памяти SD. Так, как мы вставили ее раньше, то идите вперед и нажмите кнопку Continue (Продолжить). Вам будут представлены варианты SD карт. Если вставлена только одна, то не увидите ничего в списке и она будет выбрана. Если нет, то просто выберите карту, которую хотите использовать, и нажмите OK.
6. Введите пароль администратора и нажмите кнопку ОК.
7. Вас будет запрошено, или извлечена SD-карта. Это должно было произойти, поскольку приложение должно отключить ее, чтобы он мог выполнить прямое копирование. Дважды проверьте, что ваша карта памяти SD уже не доступна в Finder. НЕ УДАЛЯЙТЕ ее из USB-порта. Когда убедитесь, так, нажмите кнопку Continue (Продолжить).
8. Когда RPi-sd card builder завершит подготовку карты SD, безопасно извлеките ее и вставьте в RPi.

Шаг второй. Подключите дисплей

RPi имеет GPIO (вводы/выводы общего назначения), в которые вписывается сенсорный экран. На вашем RPi это набор штырей в углу — должно быть достаточно очевидно, как соединить их вместе. Вставьте дисплей в разъем на плате RPi.

Шаг третий. Подключите все и подайте питание
С добавленным дисплеем пришло время, чтобы подключить все остальное. Подключите адаптер Wi-Fi и клавиатуру в USB порты. Затем подключите RPi к вашей батареи.
Процесс запуска может быть немного медленным и неуклюжим, поэтому не волнуйтесь, если это займет немного времени. Во-первых, вы увидите на некоторое время белый экран, прежде чем запустится процесс загрузки. В конце концов, вас встретит экран входа в систему.

Шаг четвертый. Войдите и включите Wi-Fi карту
Теперь пришло время, чтобы войти и включить Wi-Fi-карту, чтобы вы могли использовать инструменты в Kali Linux. RPі автоматически распознает ваше карте Wi-Fi, но вы все равно должны войти в сеть. Прежде всего, мы должны запустить графический пользовательский интерфейс Kali Linux и убедиться, что все работает:
1. Вы увидите приглашение а ввод имя пользователя и пароля из командной строки на своем RPi. Введите имя пользователя root и пароль toor (мы изменим это позже).
2. Введите команду startx и нажмите клавишу Ввод для загрузки графического интерфейса для Kali. Это может занять некоторое время, чтобы загрузить на RPi.
3. Теперь можете перемещаться по Игре с сенсорным экраном и клавиатуры. Нажмите небольшой значок терминала в нижней части, чтобы открыть командную строку.
4. Чтобы установить карту Wi-Fi, введите nano /etc/network/interfaces в командной строке и нажмите Enter, чтобы загрузить файл конфигурации для настройки Wi-Fi.
5. Добавьте следующие строчки в текстовый файл, который только что открылся, подставляя свою сетевую информацию:

auto wlan0
iface wlan0 inet dhcp
wpa-ssid “your network name”
wpa-psk “the network password”

Когда закончите, нажмите Ctrl+X, чтобы сохранить и выйти. Ваша карта Wi-Fi теперь должно работать (хотя ам, возможно, придется сначала перезагрузиться).

Шаг пятый. Смените пароль
Прежде чем сделать что-нибудь еще, вы должны действительно изменить пароль своего устройства (чтобы кто-то еще с подобными навыками взлома не получить контроль над ним). К счастью, это легко.
1. В то время, пока вы все еще в командной строке (если у вас его нет, идите вперед и нажмите на значок Terminal в Kali, чтобы открыть его, введите passwd и нажмите Enter.
2. Введите дважды новый пароль.
3. Также будет хорошо сейчас перенастроить сервер OpenSSH, потому что теперь он не установлен по умолчанию. Введите dpkg-reconfigure openssh-server и нажмите Ввод.
Теперь ваша маленькая портативная система создана и безопасная.

Что вы можете сделать с этим устройством
С этого момента, вы можете работать со своей маленькой портативной хакерской станцией. Для базовой навигации можете использовать сенсорный экран на RPi и запустить любую программу в Kali Linux. Если не знаете, с чего начать, вот несколько идей:

• Настройте SSH для удаленного подключения к RPi
• Изучите основы командной строки
• Сломайте пароль Wi — Fi , создайте поддельные сеть , или подглядывайте трафик другого устройства
• Мониторьте все , что происходит в сети
• Создайте Virus с Cryptcat , который почти невозможно обнаружить
Мир — ваша устрица . Взламывайте все ответственно .

Сундучок на базе raspberry pi, который распознает ваше лицо

Обсуждение устройств, не относящихся к данной теме, запрещено. Если нужной вам темы по конкретной модели не существует – создайте её.

Вместо слов «Спасибо!» используйте . Если у Вас меньше 15 постов – нажмите на кнопку под тем сообщением, где Вам помогли, и напишите благодарность.

На форуме принято размещать изображения под спойлером

Raspberry Pi – одноплатный компьютер размером с банковскую карту, изначально разработанный как бюджетная система для обучения информатике, впоследствии получивший намного более широкое применение и популярность, чем ожидали его авторы. Разрабатывается Raspberry Pi Foundation. Всего за три года было продано более 4,5 миллионов устройств Raspberry Pi.

Raspberry Pi выпускается в нескольких комплектациях: модель «A», «B», «B+»,«2B», «Zero», «Zero W», «3B», «3B+», «3A+» и «4B».

Отличия между версиями в следующем:

Официальные ОС:

  • Raspbian (порт Debian на ARMv6 архитектуру)
  • Arch
  • OpenELEC
  • Raspbmc
  • RICS OS
  • Pidora
  • Win 10 IoT (RPi 2B/3B)
  • Ubuntu
  • DietPi
  • Suse Linux
  • И другие

Скачать нужный образ этих ОС можно на официальном сайте. Все образы предоставляются в виде файла с расширением .img

Что такое GPIO (Википедия, EN)

Ещё о “малиновом” GPIO

Сообщение отредактировал iiputilo – 06.06.20, 21:52

Существует альтернативный Rasberry Pi проект от Rhombus Tech. Конечная цель – сделать одноплатный компьютер стоимостью 15$. По оценкам специалистов этой организации, для этого необходимо запустить в производство не менее 100 000 таких платок.

В данное время собираются предзаказы для оценки спроса на такие компьютеры. Заказываем, не стесняемся, чем больше будет заказчиков, чем ниже конечная цена устройства.

Модель B значительно более интересна – Ethernet порт, 2 USB порта, RDS разъем.
Из FAQ на сайте производителя узнал, что блок питания должен выдать 700 mA для запуска компьютера.
PoE пока не поддерживается, но разработчики обещают подумать над решением.
Кому лень самому сделать корпус, летом могут заказать на сайте несколько на выбор.
ОС грузится с SD-карты.
Wi-Fi доступен через USB-донгл.

Вывод – если хотите получить более-менее производительный аппарат, нужно готовить сверху $100 на 32Гб карту 10го класса и $20 за нано Wi-Fi карту.

Mohnatenkij,
Ну, “лего” корпуса уже видел на сайте, это да, еще тот юмор.
Лично я думаю, что почти у каждого дома найдется какая-нибудь старая ненужная железка (например, DVD(CD)-ROM, или колонки), в которые это дело можно засунуть. Также в такой корпус вместится адаптер питания (любое зарядное устройство с microusb) и выносной жесткий диск гигов на 160 (и выше).
Для системы будет достаточно 2 гигабайтной microSD карты, вставленной в адаптер, такие часто кладут в комплект с сотовыми телефонами. Найти можно будет, имхо, на край купить рублей за 100.
В общем, я посчитал, что да, внешняя память – в моем случае это будет винт – самый дорогой компонент. Корпус, питание – все это делается недорого с помощью подручных средств.
Зачем Wi-Fi-донгл нужен я не понял, т.к. есть порт для ЛВС.

“Прошивки”:
Дебиан, http://www.raspberrypi.org/downloads , очень любопытно глянуть какие пакеты там идут в комплекте, благо вес немалый – почти 800 метров в архиве

“Покупка”, устройство будет доступно по адресу
http://www.raspberrypi.com/

Сообщение отредактировал darkarrow – 18.02.12, 12:19

Mohnatenkij, жесткие диски разные бывают – некоторые цепляются к планшетам по usb, некоторые не цепляются, т.е. имеют разный минимум силы тока (мА) для запуска и работы. Так что тут, думаю, индвидуально будет.
На край, можно будет приспособить еще 1 микроюсб зарядку и Y-образный кабель для жесткого диска (где 1 штекер на питание и второй на data).

Мне вот интересно, пусть даже в максимальной конфигурации – плата, 2 адаптера питания, внешний USB Drive, в герметичном корпусе соотв. размеров с некоторым количеством свободного объема будут перегреваться или нет? Хотя можно радиатор прямо на металлический корпус зафигачить. Будет дикообраз 😉 Зато без кулеров и дырок для проникновения вездесущей пыли.

P.S.: мне тут коллеги говорят, что, мол, современные медиаплееры с прошивками на основе Linux могут всё тоже самое. Только там уже приличный корпус, бОльшее количество разъемов и их более удобное расположение, БП для медиаплеера и ж/д с ценой порядка

100 USD). Но такого интереса уже не будет)

Кстати, а кто-нибудь собирается использовать GPIO? Если да, то для каких целей?

Рейтинг
( Пока оценок нет )
Загрузка ...
Adblock
detector