Falco Security установка на Ubuntu: пошаговая инструкция | AdminWiki

Установка Falco Security на Ubuntu: Полное руководство по безопасности контейнеров и хостов

18 декабря 2025 7 мин. чтения #devsecops #falco #linux #security #ubuntu #безопасность #контейнеры #мониторинг

Представь, что твоя инфраструктура под Ubuntu — это крепость. Falco Security — это система видеонаблюдения, которая отслеживает каждое подозрительное движение внутри ядра Linux, контейнеров Docker и Kubernetes. Давай разберем, как установить и настроить этого бдительного стража на твоем сервере.

Что такое Falco Security и зачем он нужен

Falco — это open-source инструмент для обнаружения угроз в режиме реального времени. Он работает на уровне ядра Linux, перехватывая системные вызовы (syscalls) и анализируя поведение процессов, контейнеров и приложений. Основные возможности:

  • Обнаружение аномальной активности в контейнерах и хостах
  • Мониторинг изменений файловых систем и сетевой активности
  • Интеграция с Kubernetes, Docker и другими оркестраторами
  • Гибкая система правил на основе YAML
Важно: Falco использует модуль ядра или eBPF пробы для мониторинга. Для Ubuntu 20.04/22.04 рекомендуется использовать eBPF драйвер как более стабильный вариант.

Подготовка системы Ubuntu к установке Falco

Перед тем как начать установку Falco Security на Ubuntu, убедись, что система соответствует требованиям:

  • Ubuntu 20.04 LTS или 22.04 LTS (рекомендуется)
  • Ядро Linux 4.14 или новее
  • Минимум 2 ГБ оперативной памяти
  • Права root или sudo

Обновление системы и установка зависимостей

Начнем с обновления пакетов и установки необходимых зависимостей:

bash
# Обновляем список пакетов
sudo apt update && sudo apt upgrade -y

# Устанавливаем необходимые зависимости
sudo apt install -y curl gnupg2 software-properties-common

# Добавляем ключ репозитория Falco
curl -s https://falco.org/repo/falcosecurity-3672BA8F.asc | \
    sudo apt-key add -

# Добавляем репозиторий Falco
sudo add-apt-repository \
    "deb https://download.falco.org/packages/deb stable main"

# Обновляем список пакетов с новым репозиторием
sudo apt update

Установка Falco Security на Ubuntu

Теперь перейдем к непосредственной установке. У нас есть два основных варианта: с драйвером ядра или с eBPF пробами.

Способ 1: Установка с eBPF драйвером (рекомендуется)

eBPF (extended Berkeley Packet Filter) — современная технология, которая обеспечивает лучшую производительность и стабильность:

bash
# Устанавливаем Falco с eBPF драйвером
sudo apt install -y falco \
    linux-headers-$(uname -r) \
    dkms

# Загружаем eBPF пробы
sudo falco-driver-loader bpf
Внимание: Если команда falco-driver-loader не найдена, возможно, вам нужно установить пакет falco-driver-loader отдельно или использовать альтернативный метод загрузки драйвера.

Способ 2: Установка с модулем ядра

Если eBPF по каким-то причинам не работает, можно использовать традиционный модуль ядра:

bash
# Устанавливаем Falco
sudo apt install -y falco

# Пытаемся загрузить модуль ядра
sudo falco-driver-loader

# Если автоматическая загрузка не сработала, пробуем вручную
sudo modprobe falco

Проверка установки и запуск Falco

После установки нужно проверить, что все компоненты работают корректно:

bash
# Проверяем версию Falco
falco --version

# Проверяем статус службы
sudo systemctl status falco

# Запускаем Falco (если не запущен)
sudo systemctl start falco

# Включаем автозагрузку при старте системы
sudo systemctl enable falco

Тестовый запуск для проверки работы

Давай проверим, что Falco действительно отслеживает события. Открой два терминала:

bash
# В первом терминале смотрим логи Falco в реальном времени
sudo journalctl -u falco -f
bash
# Во втором терминале выполняем подозрительное действие
sudo cat /etc/shadow

В первом терминале ты должен увидеть предупреждение о попытке чтения файла /etc/shadow — это означает, что Falco работает корректно!

Базовая настройка Falco Security

Основной конфигурационный файл Falco находится в /etc/falco/falco.yaml. Давай рассмотрим ключевые параметры:

yaml
# /etc/falco/falco.yaml - основные настройки

# Выходные форматы
json_output: false
json_include_output_property: true

# Настройки логирования
log_level: info
log_stderr: true
log_syslog: true

# Частота проверки правил
ruleset:
  update_frequency: 600  # секунды

# Настройки для контейнеров
docker:
  enabled: true
  socket: /var/run/docker.sock

kubernetes:
  enabled: false  # включи, если используешь Kubernetes
  api: https://kubernetes.default.svc:443

Настройка правил (Rules)

Правила определяют, какие события считать подозрительными. Основные файлы правил находятся в /etc/falco/rules.d/. Создадим свое простое правило:

yaml
# /etc/falco/rules.d/custom_rules.yaml

- rule: Моя кастомная правило - подозрительный процесс
  desc: Обнаружен процесс с подозрительным именем
  condition: proc.name in ("malware", "hacktool", "backdoor")
  output: "Подозрительный процесс обнаружен (name=%proc.name pid=%proc.pid)"
  priority: WARNING
  tags: [process]

- rule: Доступ к важным файлам
  desc: Попытка чтения или записи в важные системные файлы
  condition: \
    (open_read or open_write) and \
    fd.name in ("/etc/passwd", "/etc/shadow", "/etc/sudoers")
  output: \
    "Доступ к важному файлу: user=%user.name command=%proc.cmdline file=%fd.name"
  priority: CRITICAL
  tags: [filesystem]
Совет: После изменения правил перезагрузи Falco командой sudo systemctl reload falco. Это безопаснее, чем полная перезагрузка службы.

Интеграция с Docker и Kubernetes

Falco отлично работает с контейнерами. Вот как настроить мониторинг Docker:

bash
# Убедись, что Docker установлен и работает
sudo systemctl status docker

# В файле /etc/falco/falco.yaml раскомментируй или добавь:
# docker:
#   enabled: true
#   socket: /var/run/docker.sock

# Перезагрузи конфигурацию Falco
sudo systemctl reload falco

# Запусти тестовый контейнер и посмотри логи Falco
docker run --rm -it alpine sh -c "cat /etc/shadow"

Мониторинг и управление Falco

Для эффективного использования Falco нужно знать, как работать с его выводами и управлять службой:

Команда Описание Пример
Просмотр логов Логи в реальном времени sudo journalctl -u falco -f
Проверка конфигурации Валидация правил falco --validate
Тестовый запуск Запуск без демона sudo falco
Перезагрузка Обновление конфигурации sudo systemctl reload falco

Часто задаваемые вопросы (FAQ)

Falco не запускается, что делать?

Проверь последовательно:

  1. Логи: sudo journalctl -u falco -n 50
  2. Драйвер: lsmod | grep falco или sudo falco-driver-loader status
  3. Конфигурацию: falco --validate

Как настроить оповещения в Slack или Telegram?

Используй программу-выход (output plugin). В falco.yaml добавь:

yaml
program_output:
  enabled: true
  keep_alive: true
  program: "/path/to/your/alert-script.sh"

Falco сильно нагружает систему?

Обычно нагрузка минимальна (1-3% CPU). Если нагрузка высокая:

  • Увеличь output_rate и output_max_burst в конфиге
  • Отключи ненужные правила
  • Используй eBPF вместо модуля ядра

Как обновить Falco до новой версии?

bash
sudo apt update
sudo apt upgrade falco
sudo systemctl restart falco

Заключение

Установка Falco Security на Ubuntu — это первый шаг к созданию защищенной инфраструктуры. Ты теперь умеешь:

  • Устанавливать Falco с eBPF или модулем ядра
  • Настраивать правила для обнаружения угроз
  • Интегрировать с Docker для мониторинга контейнеров
  • Управлять службой и анализировать логи

Помни: Falco — не панацея, а инструмент мониторинга. Регулярно обновляй правила, настраивай оповещения и анализируй события. Начни с базовых правил, постепенно добавляя кастомные под свою инфраструктуру.

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