Toot

Written by Kirill Zholnay on 2024-08-29 at 12:35

[#]victoria-logs #packetbeat

Когда решалка устаёт, я погружаюсь в Икигай, приятную ненапряжную деятельность. В моем случае - это задростство с метриками, данными и прочей аналитикой.

Давно мечтал логировать трафик, но так, чтобы не пакеты, а потоки, и чтобы видно было что за софт это делает. В инфосеке - это краеугольный камень безопасности. Так как зловредам нужно связываться либо с командным центром (СС) ну или пиздить вашу информацию. В любом случае открытый сокет незнакомым ПО - это инцидент.

Раньше почти никакой софт не мог логировать трафик вместе с инфой о приложениях. Да, можно было настроить falco (от sysdig) логировать открытые сокеты, потом коррелировать с netflow, но геморно. Но у packetbeat теперь это работает из коробки, хотя раньше было заявлено, но не работало (packetbeat.procs.enabled: true)

Другая проблема, которую удалось решить в этом сэтапе - это компактное хранение с быстрой полнотекстовой выборкой, и еще более быстрой выборкой по фасетам. Кто знаком с elastic - знают, какая она жручая до памяти и диска мразь. Правильным выходом было бы поднять clickhouse, проработать структуру, тогда получится быстро, компактно, но очень геморно.

И вот ребята, разработчики VictoriaMetrics, прозрачной замены хранилки метрик прометеуса, выкатили простую но адски быструю и плотную хранилку логов. Скорость спопоставима с правильно настроенным clickhouse, но сильно проще в ментейненсе.

Конфижим коллектор /etc/systemd/system/victoria-logs-prod.service:

[Unit]

Description=Victoria Logs Production Service

After=network.target

[Service]

ExecStart=/usr/local/bin/victoria-logs-prod -httpListenAddr 192.168.0.127:9428 -syslog.listenAddr.tcp=:29514 -syslog.listenAddr.udp=:29514 -storageDataPath=/var/lib/victoria-logs

Restart=always

User=victoria-logs

Group=victoria-logs

Environment=PATH=/usr/local/bin:/usr/bin:/bin

Environment=LOG_LEVEL=info

WorkingDirectory=/usr/local/bin

[Install]

WantedBy=multi-user.target

Конфижим источник /etc/packetbeat/packetbeat.yml. Да, victoria logs может прикидываться эластиком как принимающая сторона:

...

output.elasticsearch:

hosts: ["http://YOURHOST:9428/insert/elasticsearch/"]

parameters:

_msg_field: "message"

_time_field: "@timestamp"

_stream_fields: "host.hostname,agent.type,type,process.executable"

allow_older_versions: true

packetbeat.procs.enabled: true

Получаем систему контроля трафика, в которую влезит миллиард записей на дерьмовом железе и миллисекундной выборкой с удобным языком запросов https://docs.victoriametrics.com/victorialogs/logsql/ с полнотекстовым поиском.

Рекомендую! Таким же методом можно настроить остальные beats от эластика: Filebeat, Auditbeat и т.п.

=> View attached media

=> More informations about this toot | View the thread | More toots from kirill@s.zholnay.name

Mentions

Tags

=> View victoria tag | View packetbeat tag

Proxy Information
Original URL
gemini://mastogem.picasoft.net/toot/113045336912491749
Status Code
Success (20)
Meta
text/gemini
Capsule Response Time
232.497833 milliseconds
Gemini-to-HTML Time
4.018644 milliseconds

This content has been proxied by September (3851b).