We detected you are likely not from a Russian-speaking region. Would you like to switch to the international version of the site?

  Назад к списку статей

Интеграция SIEM‑систем с Termux: сбор логов и удалённый мониторинг

Подробное руководство по использованию Termux для сбора системных логов, их агрегации и безопасной передачи в SIEM‑системы. Настройка rsyslog, отправка по TLS и автоматизация мониторинга.

Termux – это полнофункциональная Linux‑среда для Android, позволяющая запускать привычные серверные инструменты прямо на мобильном устройстве. В сочетании с современными SIEM‑системами (Security Information and Event Management) Termux становится лёгким и гибким агентом для сбора, предварительной обработки и удалённого мониторинга логов.

Подготовка окружения Termux

Для начала убедитесь, что у вас установлена последняя версия Termux из официального репозитория Google Play или F-Droid.

pkg update && pkg upgrade -y

После обновления установим базовые утилиты, необходимые для работы с логами и сетевыми соединениями.

pkg install -y rsyslog curl jq openssl termux-api

Конфигурация rsyslog для локального сбора логов

В Termux rsyslog работает в режиме «standalone», собирая сообщения из системных демонов, приложений Termux и пользовательских скриптов.

# /data/data/com.termux/files/usr/etc/rsyslog.conf
module(load="imuxsock")        # Приём сообщений из локального сокета
module(load="imklog")          # Приём kernel‑логов (если доступны)

# Файл‑буфер для локального хранения
$WorkDirectory /data/data/com.termux/files/usr/var/log
$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat
. -/data/data/com.termux/files/usr/var/log/termux.log

# Отправка в удалённый SIEM (по TLS)
$DefaultNetstreamDriverCAFile /data/data/com.termux/files/usr/etc/ca-certificates.crt
$DefaultNetstreamDriver gtls
. @@siem.example.com:6514;RSYSLOG_SyslogProtocol23Format

Сохраните файл и запустите службу:

sv enable rsyslog && sv start rsyslog

Безопасная передача логов в SIEM

Самый надёжный способ – использовать TLS‑шифрование. Для этого потребуется сертификат CA, подписанный вашим SIEM‑сервером.

# Скачивание CA‑сертификата (пример)
curl -o /data/data/com.termux/files/usr/etc/ca-certificates.crt https://siem.example.com/ca.crt

Если ваш SIEM поддерживает HTTP‑API (например, Elastic Stack), можно отправлять логи через curl в JSON‑формате.

# Пример отправки одного сообщения
LOG_LINE="$(date '+%Y-%m-%dT%H:%M:%S%z') $(hostname) $(whoami): Test log entry"
JSON=$(printf '{"@timestamp":"%s","host":"%s","message":"%s"}' "$(date -Iseconds)" "$(hostname)" "$LOG_LINE")
curl -s -XPOST -H "Content-Type: application/json" \
     -d "$JSON" https://siem.example.com:9200/_bulk

Автоматизация сбора и отправки логов

Termux предоставляет собственный планировщик задач – termux-job-scheduler. С его помощью можно запускать скрипт каждые 5 минут.

# ~/send_logs.sh – скрипт отправки накопившихся логов
#!/data/data/com.termux/files/usr/bin/bash
LOG_FILE="/data/data/com.termux/files/usr/var/log/termux.log"
if [ -s "$LOG_FILE" ]; then
  while IFS= read -r line; do
    JSON=$(printf '{"@timestamp":"%s","host":"%s","message":"%s"}' "$(date -Iseconds)" "$(hostname)" "$line")
    curl -s -XPOST -H "Content-Type: application/json" -d "$JSON" https://siem.example.com:9200/_bulk
  done < "$LOG_FILE"
  : > "$LOG_FILE"  # очистить файл после отправки
fi
# Регистрация задания в планировщике
termux-job-scheduler --add --period 300000 --execute "~/send_logs.sh"

Мониторинг состояния агента

Для контроля работоспособности агента удобно использовать небольшие health‑чек скрипты, которые отправляют статус в SIEM.

# ~/health_check.sh
#!/data/data/com.termux/files/usr/bin/bash
STATUS="OK"
if ! pgrep rsyslog >/dev/null; then
  STATUS="RSYSLOG_DOWN"
fi
JSON=$(printf '{"@timestamp":"%s","host":"%s","service":"termux-agent","status":"%s"}' "$(date -Iseconds)" "$(hostname)" "$STATUS")
curl -s -XPOST -H "Content-Type: application/json" -d "$JSON" https://siem.example.com:9200/_bulk
# Запуск каждые 10 минут
termux-job-scheduler --add --period 600000 --execute "~/health_check.sh"

Лучшие практики безопасности

  • Храните приватные ключи в каталоге /data/data/com.termux/files/usr/etc/ssl/private с правами 600.
  • Ограничьте доступ к лог‑файлам, используя chmod 640 и группу termux.
  • Регулярно проверяйте сертификаты на срок действия (openssl x509 -noout -dates -in cert.crt).
  • Включите двухфакторную аутентификацию на стороне SIEM‑портала.

Заключение

Termux предоставляет мощный набор инструментов, позволяющих превратить обычный Android‑устройство в надёжного агента для сбора и удалённого мониторинга логов. При правильной настройке rsyslog, TLS и автоматических скриптов вы получаете гибкую, масштабируемую и безопасную интеграцию с любой SIEM‑платформой.

Если вам требуется профессиональная настройка, аудит безопасности или разработка кастомных интеграций под ваш бизнес, команда RybinskLab готова помочь. Мы специализируемся на построении end‑to‑end решений в области кибербезопасности, автоматизации мониторинга и DevSecOps. Свяжитесь с нами для консультации и внедрения оптимального решения под ваши задачи.

* Текст статьи подготовлен и структурирован с использованием технологий искусственного интеллекта. Проверен и доработан перед публикацией.

Нужна помощь с настройкой Termux, Linux и серверов?

Я оказываю ИТ-услуги: настройка серверов, автоматизация, безопасность, помощь с Linux и инфраструктурой. Материалы сайта — только в ознакомительных и образовательных целях.

Связаться со мной
Поддержать проект