Debian

Как установить Osquery на Debian 10

Как установить Osquery на Debian 10
В этом руководстве по Osquery мы начнем с обсуждения того, что такое Osquery, как он работает, как установить его в Debian, быстрого введения в SQL и, наконец, создадим проект, в котором подробно описывается, как интегрировать Osquery со стеком ELK.

Чтобы сохранить краткость этого руководства, мы не будем углубляться в «что» и «как» стека ELK. Вместо этого мы быстро и прямо обсудим, как использовать его с Osquery. Мы также предполагаем, что у вас есть практические знания SQL, несмотря на предоставленное руководство).

Что такое Osquery?

Osquery, разработанный Facebook, представляет собой кроссплатформенный инструмент с открытым исходным кодом, используемый для запросов и мониторинга систем с помощью запросов на основе SQL.

Osquery может взаимодействовать с системой и собирать подробную информацию, такую ​​как использование памяти, запущенные процессы, загруженные модули ядра, аппаратные события, сетевые соединения и т. Д. Инструмент работает во всех системах, включая Windows, Linux, Mac и BSD.

Используя Osquery, вы можете создавать SQL-запросы, отображающие информацию о системе, и использовать эту информацию для мониторинга и анализа собранных данных.

Как установить Osquery в системах Debian

Установить Osquery в системах Debian очень просто, и хотя он недоступен в основных репозиториях Debian, добавить его довольно просто.

Давайте посмотрим на первый метод, который вы можете использовать для установки Osquery в Debian:

Первый и самый простой шаг - загрузить установщик deb с главной страницы:

https: // пакет.osquery.io / deb / osquery_4.6.0-1.linux_amd64.деб

wget https: // pkg.osquery.io / deb / osquery_4.6.0-1.linux_amd64.деб
sudo dpkg -i osquery_4.6.0-1.linux_amd64.деб

Мы рекомендуем вышеуказанный метод, поскольку пакеты deb очень мало зависят от большинства дистрибутивов Debian. Однако, если вы хотите добавить в apt, используйте следующий метод.

Введите следующие команды для установки Osquery из репозиториев.

экспорт OSQUERY_KEY = 1484120AC4E9F8A1A577AEEE97A80C63C9D8B80B
sudo apt-key adv --keyserver hkp: // сервер ключей.убунту.com: 80 --recv-keys $ OSQUERY_KEY
sudo add-apt-repository 'deb [arch = amd64] https: // pkg.osquery.io / deb deb main '
sudo apt-get update
sudo apt-get install osquery

Как использовать Osquery в Debian 10

Прежде чем углубиться в создание автоматизированных скриптов и работу со стеком ELK, давайте обсудим простое использование Osquery в локальной системе.

Osquery имеет три основных компонента, которые вы можете использовать для взаимодействия с API.

Osquery: Первый компонент - это osqueryi, интерактивный сеанс оболочки. Режим osqueryi полностью автономен и не требует взаимодействия с демоном Osquery-Osquery. Используя режим osqueryi, вы можете интерактивно выполнять SQL-запросы и исследовать текущую систему аналогично оболочке SQL.

ПРИМЕЧАНИЕ: Osquery уважает пользовательские пространства, и если вы запустите оболочку в обычном пользовательском режиме, у вас не будет доступа к привилегированным таблицам.

Оскуерид: Другой компонент - osqueryd, демон Osquery, используемый для планирования запросов и записи изменений состояния в фоновом режиме. Демон работает путем агрегирования результатов запросов, выполненных за определенный период времени, и генерирует журналы, используемые для сравнения изменений состояния каждого запроса.

Osqueryctl: Третий компонент - Osqueryctl, вспомогательный скрипт, используемый для проверки конфигурации развертывания. Вы также можете использовать его в качестве диспетчера служб Osquery, позволяя запускать и останавливать службу.

Osquery - это не что иное, как простой инструмент для запроса информации о системе. Однако когда вы комбинируете запросы для создания хорошо отсортированных и агрегированных данных, он становится больше, чем инструмент запросов.

Чтобы начать работу, давайте начнем с основ, чтобы понять, как это работает:

Первый шаг - получить помощь с помощью команды:

sudo osqueryd --help

Эта команда отобразит справку демона Osquery со списком аргументов, которые вы можете использовать в оболочке.

Следующий и самый простой способ взаимодействия с Osquery - использовать сеанс osqueryi. Например, если вы выполните команду osqueryi без аргумента, вы попадете в оболочку, подобную SQL:

sudo osqueryi

Внутри оболочки osqueryi вы можете выполнять команды и синтаксис SQL для выбора конкретной информации о системе.

Чтобы просмотреть режим справки внутри оболочки osqueryi, используйте команду:

osquery> .помощь

Выполнение этой команды должно отобразить справку по сеансу Osquery.

Поскольку Osquery - это средство отображения реляционной базы данных для вашей системы, у него есть список таблиц, которые вы можете использовать для выбора информации с помощью SQLite Queries.

ПРИМЕЧАНИЕ: Запросы Osquery основаны на SQLite. Вы можете обратиться к его документации, если Osquery не предоставляет достаточно информации:

https: // www.sqlite.org / index.html

Внутри оболочки osqueryi используйте команду:

osquery> .столы

Эта команда выводит список доступных таблиц, содержащих системную информацию.

Оттуда вы можете выбрать информацию из доступных схем. Например, просмотреть информацию о преобразователях DNS.

ВЫБРАТЬ * ИЗ dns_resolvers;

В зависимости от схемы, которую вы запрашиваете, вы получите огромное количество информации и, возможно, потребуется использовать комбинацию SQL-запросов, чтобы понять ее.

Вы можете узнать больше о таблицах и схемах Osquery из следующего ресурса:

https: // osquery.io / schema / 4.6.0 /

Базовое руководство по SQL

Osquery работает, используя синтаксические запросы SQLite для сбора информации о системе. Понятия не имею, почему Facebook выбрал этот маршрут, но он работает.

В этом простом руководстве обсуждаются основы SQLite, чтобы объяснить, как его можно использовать для взаимодействия с Osquery.

ПРИМЕЧАНИЕ: Это никоим образом не предназначено для руководства по SQL или родственным языкам. Дополнительные руководства для конкретных языков см. В основной документации.

Выбор конкретных записей из таблицы

Используя базовый синтаксис SQLite, мы можем выбрать конкретную информацию из таблицы с помощью оператора SELECT, как показано:

ВЫБЕРИТЕ pid, имя, путь ИЗ процессов;

Добавление функций SQL

Osquery также поддерживает функции SQL, позволяя выполнять различные действия с данными, собранными из запросов.

Например, функция подсчета может позволить вам просмотреть количество пользователей в вашей системе.

ВЫБРАТЬ СЧЕТЧИК (*) ИЗ пользователей;

Эта команда вернет общее количество пользователей в системе.

Возможность Osquery использовать синтаксис SQL является огромным преимуществом, которое может помочь вам создавать сложные наборы данных, которые могут дать вам более глубокий анализ системы. Он также создает мост, который разработчики SQL, использующие такие механизмы, как PostgreSQL, MySQL и другие, могут использовать для легкой адаптации.

https: // osquery.читать.io / en / стабильный / введение / sql /

Веселый побочный проект

Когда вы изучите Osquery дальше и поэкспериментируете с ним, вы обнаружите, что это всеобъемлющий и мощный инструмент, который упрощает создание проектов, специально настроенных для мониторинга ваших систем.

Из-за объема этого руководства и, чтобы не запутать новичков, мы не будем углубляться в сложные проекты. Как уже упоминалось, вот несколько инструментов, которые вы можете создать с помощью Osquery:

https: // osquery.читать.io / en / стабильный / развертывание / агрегация журналов /
https: // www.эластичный.co / руководство / en / beats / filebeat / 7.10 / файл-модуль-osquery.html
https: // github.com / fleetdm / флот

Заключение

В этом руководстве мы рассмотрели основы Osquery, в том числе то, как использовать его для сбора системной информации.

Хотя это руководство не является исчерпывающим, оно призвано предоставить вам быстрое и понятное введение в Osquery; отнюдь не было справочником.

Не стесняйтесь использовать другие ресурсы, чтобы глубже понять различные концепции, которые мы обсуждали в этом руководстве.

Эмуляция щелчков мыши с помощью мыши без щелчка в Windows 10
Использование мыши или клавиатуры в неправильной позе или чрезмерное использование может привести к множеству проблем со здоровьем, включая растяжение...
Добавьте жесты мыши в Windows 10 с помощью этих бесплатных инструментов
В последние годы компьютеры и операционные системы сильно эволюционировали. Было время, когда пользователям приходилось использовать команды для навиг...
Контроль и управление перемещением мыши между несколькими мониторами в Windows 10
Диспетчер мыши с двумя дисплеями позволяет контролировать и настраивать движение мыши между несколькими мониторами, замедляя ее движения возле границы...