User Tools

Site Tools


graylog

GrayLog

Установка по православному мануалу с оффсайта
Мануал для установки версии graylog-4.1

Установка на Ubuntu 18.04

Как всегда, с начало зависимости и полезные ништячки
Для начала, установим java:

apt-get install openjdk-8-jre-headless -y

Смотрим, что установилось

 java -version
openjdk version "1.8.0_222"
OpenJDK Runtime Environment (build 1.8.0_222-8u222-b10-1~deb9u1-b10)
OpenJDK 64-Bit Server VM (build 25.222-b10, mixed mode)

Ставим полезные ништячки:

sudo apt-get update && sudo apt-get upgrade
sudo apt-get install apt-transport-https uuid-runtime pwgen -y

MongoDB

Установка MongoDB из официального репозитория

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9DA31620334BD75D9DCB49F368818C72E52529D4
echo "deb [ arch=amd64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.0.list
sudo apt-get update
sudo apt-get install -y mongodb-org

Добавляем MongoDB в демоны и рестартуем сервис

sudo systemctl daemon-reload
sudo systemctl enable mongod.service
sudo systemctl restart mongod.service

Elasticsearch

Graylog 3.0 который мы тут из-за вас ставим, работает с Elasticsearch версией выше 6, давайте его, тащите сюда

wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
echo "deb https://artifacts.elastic.co/packages/oss-6.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-6.x.list
sudo apt-get update && sudo apt-get install elasticsearch-oss

редактируем файл конфигурации elasticsearch

/etc/elasticsearch/elasticsearch.yml
cluster.name: gl-server
network.host: 192.168.10.12
action.auto_create_index: false

Ну и по старой доброй традиции индейцев из племени навахо, добавляем elasticsearch в службы

sudo systemctl daemon-reload
sudo systemctl enable elasticsearch.service
sudo systemctl restart elasticsearch.service

Проверяем работу elasticsearch

curl -XGET 'http://localhost:9200/_cluster/health?pretty=true'

если ответ похож на что-то подобное, значит все ок.

{
  "cluster_name" : "gl-server",
  "status" : "green",
  "timed_out" : false,
  "number_of_nodes" : 1,
  "number_of_data_nodes" : 1,
  "active_primary_shards" : 0,
  "active_shards" : 0,
  "relocating_shards" : 0,
  "initializing_shards" : 0,
  "unassigned_shards" : 0,
  "delayed_unassigned_shards" : 0,
  "number_of_pending_tasks" : 0,
  "number_of_in_flight_fetch" : 0,
  "task_max_waiting_in_queue_millis" : 0,
  "active_shards_percent_as_number" : 100.0
}

Graylog

Скачиваем и устанавливаем последнию версию Graylog

wget https://packages.graylog2.org/repo/packages/graylog-3.0-repository_latest.deb
sudo dpkg -i graylog-3.0-repository_latest.deb
sudo apt-get update && sudo apt-get install graylog-server

Без правильно установленных паролей, graylog не стартанет. Настроить можно двумя способами. password_secret установим с помощью утилит pwgen и sed

sudo -E sed -i -e "s/password_secret =.*/password_secret = $(pwgen -s 128 1)/" /etc/graylog/server/server.conf

Либо сгенерировать нужный пароль

echo -n "Enter Password: " && head -1 </dev/stdin | tr -d '\n' | sha256sum | cut -d" " -f1

и руками вписать значение директивы password_secret

/etc/graylog/server/server.conf
password_secret = 873bd5e10c28890f7e74992f89b9aa26e465eba5a80a80c9117b8cc1f4988b

Туже процедуру выполняем для директивы root_password_sha2

sudo sed -i -e "s/root_password_sha2 =.*/root_password_sha2 = $(echo -n 'password' | shasum -a 256 | cut -d' ' -f1)/" /etc/graylog/server/server.conf

Добавляем Graylog в сервисы и стартуем его

sudo systemctl daemon-reload
sudo systemctl enable graylog-server.service
sudo systemctl start graylog-server.service

Установка на CentOS 7

устанавливаем java

sudo yum install java-1.8.0-openjdk-headless.x86_64

устанавливаем пакеты необходимые для генерации паролей

sudo yum install epel-release
sudo yum install pwgen

MongoDB

Для начало надо добавить реп mongodb. Создаем файл

sudo touch /etc/yum.repos.d/mongodb-org-4.2.repo

И вносим в него запись

[mongodb-org-4.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.0.asc

И убедимся, что yum видит реп mongo

yum repolist

Далее устанавливаем mongodb

sudo yum install mongodb-org

Запускаем сервис MongoDB и добавляем его в автозапуск

sudo systemctl start mongod
sudo systemctl enable mongod.service

ошибки mongodb

После установки mongodb не стартовала, с ошибкой mongodb shutting down with code:100
исправилось созданием бд

mkdir -p /data/db

после рестарта заработало

sudo lsof -iTCP -sTCP:LISTEN -n -P

Elasticsearch

добавляем ключ репозитория

rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch

Создаем файл репозитория /etc/yum.repos.d/elasticsearch.repo

[elasticsearch-6.x]
name=Elasticsearch repository for 6.x packages
baseurl=https://artifacts.elastic.co/packages/oss-6.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md

Устанавливаем Elasticsearch

sudo yum install elasticsearch-oss

в файле конфигурации /etc/elasticsearch/elasticsearch.yml

cluster.name: graylog
action.auto_create_index: false

в автозагрузку

sudo chkconfig --add elasticsearch
sudo systemctl daemon-reload
sudo systemctl enable elasticsearch.service
sudo systemctl restart elasticsearch.service

Graylog

Для установки Graylog выполним пару нехитрых команд

sudo rpm -Uvh https://packages.graylog2.org/repo/packages/graylog-2.3-repository_latest.rpm
sudo yum install graylog-server

Отредактируем файл /etc/graylog/server/server.conf точно также как и в случае с ubunta. для root_password_sha2 сгенегируем хитрый хеш пароля

echo -n yourpassword | sha256sum

Также внесем изменения в директиву

http_bind_address = 192.168.1.10:9000

Отправка логов на GrayLog

Отправка тестового сообщения

 echo "GrayLog  test message" | nc -w 1 -u 192.168.1.10 1510

Sending syslog

для версии > 5

 apt list --installed | grep rsyslog

На сервере, с которого хотим получать логи, создаем файл /etc/rsyslog.d/01-graylog.conf

*.* @192.168.1.10:1514;RSYSLOG_SyslogProtocol23Format # для udp
*.* @@192.168.1.10:1514;RSYSLOG_SyslogProtocol23Format # для tcp

Для версии < 5

$template GRAYLOGRFC5424,"<%PRI%>%PROTOCOL-VERSION% %TIMESTAMP:::date-rfc3339% %HOSTNAME% %APP-NAME% %PROCID% %MSGID% %STRUCTURED-DATA% %msg%\n"
*.* @g192.168.1.10:1514;GRAYLOGRFC5424

Перезапускаем службу rsyslog

systemctl restart rsyslog
либо
service rsyslog restart

Другие статьи

Установка GrayLog на Debian миникомпендиум

graylog.txt · Last modified: 2023/04/06 10:28 (external edit)