В последние годы мобильные устройства становятся всё более привлекательными целями для киберугроз. Termux позволяет превратить Android‑смартфон в полноценную Linux‑среду, а Suricata – в мощный IDS/IPS. Чтобы start (запустить) такой сервис, необходимо понять, что слово start означает "начинать, запускать" merriam-webster.com, а также "to begin doing something" cambridge.org. В этой статье мы покажем, как start Suricata в Termux и построить собственные правила для обнаружения атак.
Требования и подготовка
- Устройство Android с установленным
Termux(рекомендовано Android 8+). - Подключение к сети Wi‑Fi (для получения обновлений и загрузки правил).
- Базовые навыки работы в командной строке Linux.
Установка Termux и необходимых пакетов
Сначала обновим репозитории и установим основные утилиты:
pkg update && pkg upgrade -y
Установим компиляторы и зависимости, необходимые для сборки Suricata:
pkg install -y git clang make automake autoconf libtool pkg-config \
libpcap-dev libpcre2-dev libyaml-dev zlib-dev libnet1-dev \
libmagic-dev python python-pip
Для ускорения сборки включим поддержку OpenSSL:
pkg install -y openssl-dev
Сборка и установка Suricata
Клонируем исходный код Suricata и проверяем последнюю стабильную ветку:
git clone https://github.com/OISF/suricata.git
cd suricata
git checkout v7.0.5 # пример версии
Создаём директорию сборки и конфигурируем проект с минимальными опциями для мобильного устройства:
./autogen.sh
./configure --prefix=$HOME/.local \
--disable-nfqueue --disable-nflog \
--enable-nfstream --enable-af-packet \
--enable-lua \
--with-libpcap=$(pkg-config --variable=prefix libpcap)
make -j$(nproc)
make install
После установки проверим, что бинарник доступен:
$HOME/.local/bin/suricata --build-info
Базовая конфигурация Suricata
Создадим каталог конфигурации и скопируем пример:
mkdir -p $HOME/.config/suricata
cp $HOME/.local/etc/suricata/suricata.yaml $HOME/.config/suricata/
Отредактируем suricata.yaml, указав путь к пользовательским правилам и интерфейсу, который будет мониториться (например, wlan0):
vi $HOME/.config/suricata/suricata.yaml
# В разделе "af-packet" укажите:
# - interface: wlan0
# В разделе "default-rule-path" укажите путь к правилам:
# default-rule-path: $HOME/.config/suricata/rules
Создание пользовательских правил
Suricata использует язык правил, совместимый с Snort. Для лёгкого IDS достаточно нескольких правил, охватывающих наиболее распространённые атаки.
mkdir -p $HOME/.config/suricata/rules
cat > $HOME/.config/suricata/rules/local.rules <<'EOF'
# Пример: обнаружение сканирования портов
alert tcp any any -> any any (msg:"Port scan detected"; flags:S; threshold:type both, track by_src, count 5, seconds 10; sid:1000001; rev:1;)
# Пример: блокировка попытки доступа к известному C2‑серверу
drop ip any any -> 203.0.113.45 any (msg:"Blocked C2 traffic"; sid:1000002; rev:1;)
EOF
Не забудьте включить пользовательские правила в suricata.yaml (раздел rule-files).
Оптимизация производительности
- Отключите ненужные протоколы. В конфиге отключите
http,tlsиdns, если они не требуются. - Используйте режим «IPS». Добавьте
runmode: ipsвsuricata.yamlдля прямой блокировки. - Настройте буферизацию. Увеличьте
capture→buffer-sizeдо 32768 для снижения потери пакетов. - Ограничьте количество потоков. На мобильных процессорах достаточно 2‑4 потоков:
threading: set-cpu-affinity: yes cpu-affinity: - [0] - [1]
Тестирование и отладка
Запустим Suricata в режиме start (запуск) и проверим, что правила работают:
$HOME/.local/bin/suricata -c $HOME/.config/suricata/suricata.yaml -i wlan0 -D
Проверим логи:
tail -f /data/data/com.termux/files/home/.local/var/log/suricata/fast.log
Сгенерируем тестовый трафик, например, сканирование nmap:
nmap -p 1-1024 192.168.1.100
В журнале должно появиться сообщение Port scan detected, подтверждающее работу правила.
Заключение
Мы рассмотрели процесс start (запуска) лёгкого IDS/IPS на Android‑устройстве с помощью Termux и Suricata, создали собственные правила, оптимизировали конфигурацию и проверили работоспособность. Такой набор позволяет быстро реагировать на угрозы даже в условиях ограниченных ресурсов.
Если вам требуется профессиональная настройка, аудит безопасности сети или разработка специализированных правил под ваш бизнес, обратитесь к экспертам RybinskLab. Мы предоставляем услуги по внедрению и поддержке IDS/IPS, консалтингу по кибербезопасности и обучению персонала.
Контакты: rybinsklab.example.com