GoAccess — анализатор журналов веб-сервера в реальном времени — Information Security Squad

GoAccess — анализатор журналов веб-сервера в реальном времени

Анализ файла журнала является большой головной болью для администраторов Linux, так как он захватывает много вещей.

Большинство новичков и администраторы L1 не знают, как его проанализировать.

Если у вас есть хорошие знания для анализа логов, вы станете легендой для системы NIX.

В Linux доступно множество инструментов для удобного анализа журналов.

GoAccess является одним из инструментов, которые позволяют пользователям легко анализировать журналы веб-сервера.

Мы будем подробно обсуждать инструмент GoAccess в этой статье.

Что такое GoAccess?

GoAccess — это анализатор веб-журналов в режиме реального времени и интерактивный просмотрщик логов, который работает в терминале в системах * nix или через ваш браузер.

GoAccess предъявляет минимальные требования, он написан на C и требует только ncurses.

Он будет поддерживать журналы Apache, Nginx и Lighttpd.

Он обеспечивает быструю и полезную статистику HTTP для системных администраторов, которым требуется визуальный отчет сервера на лету.

GoAccess анализирует указанный файл веб-журнала и выводит данные в X-терминал и браузер.

GoAccess был разработан как быстрый анализатор логов на основе терминалов.

Его основная идея заключается в том, чтобы быстро анализировать и просматривать статистику веб-сервера в режиме реального времени без необходимости использовать браузер.

Вывод терминала является выводом по умолчанию, он может генерировать полный автономный отчет HTML в режиме реального времени, а также отчет JSON и CSV.

GoAccess допускает любой пользовательский формат журнала, и следующие (комбинированный формат журнала (XLF / ELF) Apache | Nginx и общий формат журнала (CLF) Apache)) включены предварительно определенные параметры формата журнала, но не ограничиваются ими.

Особенности GoAccess

  • Работа полностью в реальном времени: все метрики обновляются каждые 200 мс на терминале и каждую секунду на выходе HTML.
  • Отслеживание времени отклика приложения: отслеживание времени, необходимого для обработки запроса. Чрезвычайно полезно, если вы хотите отслеживать страницы, которые замедляют работу вашего сайта.
  • Посетители. Определите количество посещений, посетителей, пропускную способность и показатели для самых медленных запросов по часам или дате.
  • Метрики для виртуального хоста: есть несколько виртуальных хостов (блоков серверов)? Он имеет панель, которая отображает, какой виртуальный хост потребляет большую часть ресурсов веб-сервера.

Как установить GoAccess?

Я бы посоветовал пользователям устанавливать GoAccess из официального репозитория дистрибутива с помощью диспетчера пакетов.

Он доступен в большинстве дистрибутивов официального репозитория.

Если вы используете ОС со стандартными дистрибутивами, я бы посоветовал вам проверить альтернативные опции, такие как PPA, официальный репозиторий GoAccess и т. д., чтобы получить последний пакет.

Для систем Debian / Ubuntu используйте команду APT-GET или APT, чтобы установить GoAccess в своих системах.

# apt install goaccess

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

$ echo "deb https://deb.goaccess.io/ $(lsb_release -cs) main" | sudo tee -a /etc/apt/sources.list.d/goaccess.list
$ wget -O - https://deb.goaccess.io/gnugpg.key | sudo apt-key add -
$ sudo apt-get update
$ sudo apt-get install goaccess

Для систем RHEL / CentOS используйте YUM Package Manager для установки GoAccess в ваших системах.

# yum install goaccess

Для системы Fedora используйте диспетчер пакетов DNF для установки GoAccess в вашей системе.

# dnf install goaccess

Для систем на основе ArchLinux / Manjaro используйте менеджер пакетов Pacman, чтобы установить GoAccess на свои системы.

# pacman -S goaccess

Для системы openSUSE Leap используйте Zypper Package Manager для установки GoAccess в вашей системе.

# zypper install goaccess

# zypper ar -f obs://server:http

# zypper ref && zypper in goaccess

Как использовать GoAccess?

После успешной установки GoAccess, просто введите команду goaccess и укажите местоположение журнала веб-сервера, чтобы просмотреть его.

# goaccess [options] /path/to/Web Server/access.log

# goaccess /var/log/apache/2daygeek_access.log

При выполнении вышеуказанной команды вам будет предложено выбрать конфигурацию формата журнала.

Я проверил его с помощью журнала доступа Apache.

Журнал Apache разделен на пятнадцать разделов.

Подробности ниже.

Основной раздел показывает сводку о пятнадцатом разделе.

Приведенные ниже снимки экрана включают четыре сеанса, такие как уникальные посетители, запрашиваемые файлы, статические запросы, не найденные URL-адреса.

Приведенные ниже снимки экрана включают четыре сеанса, такие как имена хостов и IP-адреса посетителей, операционные системы, браузеры, распределение времени.

Приведенные ниже снимки экрана включают четыре сеанса, такие как URL-адреса переходов, сайты-источники ссылок, результаты поисковой системы Google, коды состояния HTTP.

Если вы хотите сгенерировать отчет в формате html, используйте следующий формат.

Первоначально я получил ошибку, когда я пытался сгенерировать отчет HTML.

# goaccess 2daygeek_access.log -a > report.html

GoAccess - version 1.3 - Nov 23 2018 11:28:19
Config file: No config file used

Fatal error has occurred
Error occurred at: src/parser.c - parse_log - 2764
No time format was found on your conf file.Parsing... [0] [0/s]

Система сообщает: “No time format was found on your conf file”

Чтобы решить эту проблему, добавьте опцию «COMBINED» как формат журнала.

# goaccess -f 2daygeek_access.log --log-format=COMBINED -o 2daygeek.html
Parsing...[0,165] [50,165/s]

GoAccess позволяет получить доступ и анализировать фильтрацию в реальном времени.

# tail -f /var/log/apache/2daygeek_access.log | goaccess -

Для более подробной информации перейдите на страницу man или справку.

# man goaccess
или
# goaccess --help

 

cryptoparty

Cryptography is typically bypassed, not penetrated.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

5e7fa976b0640d40