В эпоху стремительного роста количества IoT‑устройств защита их от целевых и массовых атак становится критически важной. Honeypot‑узлы позволяют собрать реальный трафик атак, проанализировать используемые эксплойты и построить эффективные стратегии защиты. В этой статье мы рассмотрим, как создать распределённую сеть honeypot‑узлов, используя мобильные устройства под управлением Termux и недорогие Raspberry Pi. Такая инфраструктура обеспечивает гибкость, масштабируемость и низкую стоимость развертывания.
Общая архитектура решения
Схема сети состоит из трёх основных компонентов:
- Мобильные honeypot‑узлы – смартфоны или планшеты с установленным
Termux. Они имитируют небольшие IoT‑устройства (смарт‑розетки, камеры и т.д.) и находятся в разных географических точках. - Периферийные узлы –
Raspberry Pi(модели 4/400) в ролях шлюзов и сборщиков данных. На них развёрнуты контейнеры с более тяжёлыми сервисами (например,Honeyd,Conpot). - Центральный сервер аналитики – любой сервер (VPS, облако) с
ELK‑стекомилиGraylogдля агрегации, хранения и визуализации логов.
Все узлы соединены через защищённый WireGuard VPN, что обеспечивает сквозное шифрование и упрощённую маршрутизацию.
Требования к оборудованию и программному обеспечению
- Смартфон/планшет Android ≥ 8.0 с доступом к
Termux. - Raspberry Pi 4 (2 ГБ RAM и выше) с предустановленным Raspberry OS (Bullseye).
- Сервер Linux (Ubuntu 22.04 или похожий) для централизованного логирования.
- Подключение к Интернету (Wi‑Fi/ethernet) для всех узлов.
- Установленные пакеты:
python3,pip,honeyd,wireguard-tools,docker(на Pi),filebeat(на всех узлах).
Шаг 1. Подготовка окружения в Termux
Установите базовые пакеты и настройте Python‑окружение.
pkg update && pkg upgrade -y
pkg install python git curl wget tar proot-distro -y
pip install --upgrade pip
pip install honeydpy
Создайте рабочий каталог и склонируйте шаблон конфигурации honeyd:
mkdir -p ~/honeypot/config && cd ~/honeypot
git clone https://github.com/rybinsk-lab/honeyd-iot-templates.git config
Шаг 2. Конфигурация и запуск honeypot в Termux
Отредактируйте файл config/honeyd.conf, указав имитацию IoT‑устройств. Пример простейшего шаблона:
# honeyd.conf – имитация умной розетки и камеры
create smartplug
set smartplug personality "Smart Plug"
set smartplug default tcp action reset
create ipcamera
set ipcamera personality "IP Camera"
set ipcamera default tcp action reset
bind 10.0.0.10 smartplug
bind 10.0.0.11 ipcamera
Запустите honeyd в фоне:
honeyd -d -f ~/honeypot/config/honeyd.conf -i tun0 &
Для перехвата трафика создайте виртуальный интерфейс tun0 через WireGuard (см. ниже).
Шаг 3. Настройка Raspberry Pi как шлюза и центра сбора логов
Обновите систему и установите необходимые сервисы.
sudo apt update && sudo apt upgrade -y
sudo apt install honeyd wireguard docker.io docker-compose -y
sudo systemctl enable docker
Создайте Docker‑контейнер с ELK‑стеком (используем готовый образ docker-elk).
mkdir -p ~/elk && cd ~/elk
cat > docker-compose.yml <<'EOF'
version: '3.7'
services:
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:7.17.9
environment:
- discovery.type=single-node
ports:
- "9200:9200"
logstash:
image: docker.elastic.co/logstash/logstash:7.17.9
volumes:
- ./logstash.conf:/usr/share/logstash/pipeline/logstash.conf
ports:
- "5044:5044"
kibana:
image: docker.elastic.co/kibana/kibana:7.17.9
ports:
- "5601:5601"
EOF
docker-compose up -d
Настройте Filebeat на Raspberry Pi для отправки логов от honeyd в Logstash.
sudo apt install filebeat -y
sudo tee /etc/filebeat/filebeat.yml > /dev/null <<'EOF'
filebeat.inputs:
- type: log
enabled: true
paths:
- /var/log/honeyd/*.log
output.logstash:
hosts: ["localhost:5044"]
EOF
sudo systemctl enable filebeat && sudo systemctl start filebeat
Шаг 4. Развёртывание WireGuard VPN
Создайте единую VPN‑сеть 10.200.0.0/24. На центральном сервере сгенерируйте ключи:
wg genkey | tee server_private.key | wg pubkey > server_public.key
Сконфигурируйте wg0.conf на сервере:
[Interface]
PrivateKey = $(cat server_private.key)
Address = 10.200.0.1/24
ListenPort = 51820
PostUp = iptables -A FORWARD -i %i -j ACCEPT
PostDown = iptables -D FORWARD -i %i -j ACCEPT
Для каждого Termux‑устройства выполните аналогичные действия, заменив Address на уникальный IP (например, 10.200.0.10/32) и указав Endpoint сервера.
# На Android (Termux)
pkg install wireguard-tools -y
wg genkey | tee client_private.key | wg pubkey > client_public.key
cat > wg0.conf <<'EOF'
[Interface]
PrivateKey = $(cat client_private.key)
Address = 10.200.0.10/32
[Peer]
PublicKey = $(cat /path/to/server_public.key)
Endpoint = your.server.ip:51820
AllowedIPs = 0.0.0.0/0, ::/0
PersistentKeepalive = 25
EOF
sudo wg-quick up wg0
Повторите процесс на Raspberry Pi, используя отдельный IP (например, 10.200.0.2/32). После поднятия VPN все узлы смогут обмениваться трафиком через tun0, а honeyd будет слушать на этом интерфейсе.
Шаг 5. Сбор и анализ данных
Логи honeyd сохраняются в /var/log/honeyd/ (на Termux – в ~/honeypot/logs/). Через Filebeat они попадают в Logstash, где происходит парсинг и отправка в Elasticsearch. В Kibana можно построить визуализацию:
- Топ‑10 IP‑адресов‑источников.
- Частота сканирования портов.
- Типы имитируемых устройств, к которым обращаются злоумышленники.
Для автоматизации анализа можно использовать Python‑скрипты, подключающиеся к Elasticsearch API.
Шаг 6. Безопасность и поддержка работоспособности
- Регулярно обновляйте пакеты в Termux (
pkg upgrade -y) и в Raspberry Pi (sudo apt update && sudo apt upgrade -y). - Ограничьте доступ к VPN‑ключам, храните их в зашифрованных хранилищах.
- Настройте мониторинг состояния
honeydчерез systemd‑таймеры илиcronна Raspberry Pi. - Внедрите резервное копирование Elasticsearch‑индексов (snapshot API).
Заключение
Созданная распределённая сеть honeypot‑узлов на базе Termux и Raspberry Pi предоставляет мощный и гибкий инструмент для исследования атак на IoT‑устройства. Благодаря использованию открытых решений (Honeyd, WireGuard, ELK) система легко масштабируется, а полученные данные позволяют формировать актуальные стратегии защиты.
Если вам требуется профессиональная настройка такой инфраструктуры, интеграция с SIEM‑системами или обучение персонала — команда RybinskLab готова предложить комплексные услуги: проектирование, развертывание, поддержку и аналитическую обработку данных. Свяжитесь с нами, чтобы вывести вашу безопасность на новый уровень.