Мониторинг сетевой активности в Linux долгое время оставался слабым местом для пользователей, которым нужна детальная информация об исходящих соединениях для каждого процесса. Существующие инструменты либо работают в командной строке, либо были созданы для безопасности серверов, а не для приватности на десктопе. Objective Development, австрийская компания, создавшая межсетевой экран Little Snitch для macOS, выпустила версию своего инструмента для Linux. Она бесплатна и, по словам компании, останется таковой.

Компонент ядра использует eBPF для перехвата трафика. eBPF работает на уровне ядра и обеспечивает лучшую переносимость по сравнению с модулями ядра. Основной бэкенд написан на Rust. Пользовательский интерфейс — это веб-приложение, что означает возможность удалённого мониторинга Linux-сервера с Little Snitch с любого устройства, включая Mac. Компания приводит в пример такие серверные приложения, как Nextcloud, Home Assistant и Zammad, как практические варианты использования этой возможности.
Компонент ядра и интерфейс имеют открытый исходный код. Код ядра опубликован, чтобы пользователи могли изучить его реализацию, исправить ошибки или адаптировать под другие версии ядра. Интерфейс лицензирован под GPL v2. Бэкенд, который управляет правилами, списками блокировок и иерархией представления соединений, бесплатен для использования, но его код закрыт.
«С точки зрения функциональности, Little Snitch для Linux находится где-то между Little Snitch Mini и полной версией Little Snitch: она работоспособна и полезна, но без той полировки и глубины, что есть в версии для macOS. Считайте её честной первой версией», — заявили в компании.
eBPF работает в условиях ограничений ресурсов, что позволяет обойти межсетевой экран, например, переполнив его таблицы. Инструмент создан, чтобы показывать пользователям, куда подключается легитимное программное обеспечение, и блокировать эти соединения при необходимости. Он не предназначен для остановки программ, которые активно пытаются его обойти.
Подтверждена работа релиза на ядре версии 6.12 и выше. На более старых ядрах инструмент в настоящее время упирается в максимальный лимит инструкций верификатора eBPF. Компания заявляет, что совместимость вплоть до ядра 5.17, где была представлена функция bpf_loop(), теоретически достижима. Совместимость с ядром 5.17 расширила бы поддержку до Debian 12 (Bookworm) и Ubuntu 24.04 LTS (Noble). Компания приглашает к сотрудничеству разработчиков с необходимыми знаниями, чтобы закрыть этот пробел.
Little Snitch для Linux доступна на GitHub.

Обязательно к прочтению:

Подпишитесь на ежемесячную рассылку Help Net Security без рекламы, чтобы быть в курсе самых важных инструментов кибербезопасности с открытым кодом. Подписаться можно здесь!
