Как мониторить лог файлы с помощью GrayLog Linux — Information Security Squad

Как мониторить лог файлы с помощью GrayLog Linux

Graylog — свободный  инструмент управления логами с открытым исходным кодом на основе Java, Elasticsearch и MongoDB, который может использоваться, чтобы собирать, индексировать и анализировать любые системные записи журнала с централизованного расположения.

Вы можете легко контролировать входы в систему SSH и необычные действие для отладки приложений  при использовании логов Graylog.

Вы можете расширить функциональность Graylog через API REST и аддоны этого приложения.

Компоненты Graylog

Elasticsearch: Он хранит все входящие сообщения, и предоставляет информацию по поиску нужных элементов.
MongoDB: Он используется для базы данных, хранит конфигурации и метаинформацию.
Server Graylog: Он получает и обрабатывает сообщения от различных источников, и обеспечиват доступ к веб-интерфейсу для анализа и контроля состояния.

В этом туториале мы объясним, как установить Graylog2 на сервере Debian 9.

Установка Elasticsearch и MongoDB

1.Отредактируем файл:

# gedit /etc/apt/sources.list.d/backport.list

И добавим следующую строчку:

deb http://ftp.debian.org/debian jessie-backports main

2.Сохраним редактируемый файл и произведем обновление системы:

# apt-get update -y
# apt-get upgrade -y

3.Как только система обновится, установим пакеты следующей командой:

# apt-get install apt-transport-https openjdk-8-jre-headless uuid-runtime pwgen -y

Как только все необходимые пакеты установлены, мы можем  начать устанавливать MongoDB.

4.MongoDB предназначен для хранения конфигурационной информации и метаинформации.

MongoDB доступен в репозитарии по умолчанию в Debian 9, таким образом, мы можем установить MongoDB, просто выполнив следующую команду:

# apt-get install mongodb-server -y

Теперь мы можем приступить к установке Elasticsearch.

5. Для начала, скачаем и добавим PGP ключ:

# wget -qO - https://packages.elastic.co/GPG-KEY-elasticsearch | apt-key add -

6. Создадим файл репозитория:

# gedit /etc/apt/sources.list.d/elasticsearch.list

7. Добавим в него следующую строчку:

deb https://packages.elastic.co/elasticsearch/2.x/debian stable main

8. Обновим репозиторий:

# apt-get update -y

9. Теперь установим Elasticsearch:

# apt-get install elasticsearch -y

10. Отредактируем основной конфигурационный файл:

# gedit /etc/elasticsearch/elasticsearch.yml

11. Выполним изменения:

cluster.name: graylog
network.host: 192.168.0.187
discovery.zen.ping.timeout: 10s
discovery.zen.ping.multicast.enabled: false
discovery.zen.ping.unicast.hosts: [«192.168.0.187:9300»]

12. Сохраним и закроем конфигурационный файл и разрешим Elasticsearch стартовать при загрузке

# systemctl start elasticsearch
# systemctl enable elasticsearch

13. Протестируем работу:

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

Удостоверьтесь, что статус группы — green:

{
 "cluster_name" : "graylog",
 "status" : "green",
 "timed_out" : false,
 "number_of_nodes" : 1,
 "number_of_data_nodes" : 1,
 "active_primary_shards" : 1,
 "active_shards" : 1,
 "relocating_shards" : 0,
 "initializing_shards" : 0,
 "unassigned_shards" : 1,
 "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" : 50.0
}

Установка Graylog

1. Скачаем и установим пакет:

# wget https://packages.graylog2.org/repo/packages/graylog-2.2-repository_latest.deb
# dpkg -i graylog-2.2-repository_latest.deb

2. Обновимся и установим серверную часть:

# apt-get update -y
# apt-get install graylog-server -y

После установки Graylog вы должны будете защитить пользовательские пароли и также устанавить хеш (sha256) пароль для пользователя root.

Во-первых, сгенерируем password_secret следующей командой:

# pwgen -N 1 -s 96

3. Вы увидите следующее:

TRXbNPoW4gGC8BN8Gzl4wH3jtfLoi06WCJqia18UtYyPaNLx4r8U7jUPRlIJHoGGxrCjZVqAvW2DcueI6N1zHoy2bKEWLyyC

4. Теперь сгенерируем пароль:

# echo -n youradminpassword | sha256sum

5. Вывод будет такого вида:

e3c5925aa22abdfa18cf197a7b218fcad31acb6409d2e2dbebae807d3a9750ee

Примечание: Запомните оба парольных ключа.

6. Отредактируем конфигурационный фал по пути /etc/graylog/server/ :

# gedit /etc/graylog/server/server.conf

7. Добавим изменения:

is_master = true
node_id_file = /etc/graylog/server/node-id
########past-your-password-secret-here#########
password_secret = TRXbNPoW4gGC8BN8Gzl4wH3jtfLoi06WCJqia18UtYyPaNLx4r8U7jUPRlIJHoGGxrCjZVqAvW2DcueI6N1zHoy2bKEWLyyC
root_username = admin
#######past-your-root-hash-password-here##########
root_password_sha2 = e3c5925aa22abdfa18cf197a7b218fcad31acb6409d2e2dbebae807d3a9750ee
root_timezone = UTC
plugin_dir = /usr/share/graylog-server/plugin
rest_listen_uri = http://0.0.0.0:9000/api/
rest_enable_cors = true
web_listen_uri = http://0.0.0.0:9000/
rotation_strategy = count
elasticsearch_max_docs_per_index = 20000000
elasticsearch_max_number_of_indices = 7
retention_strategy = delete
elasticsearch_shards = 4
elasticsearch_replicas = 1
elasticsearch_index_prefix = graylog
allow_leading_wildcard_searches = true
allow_highlighting = false
elasticsearch_cluster_name = graylog
elasticsearch_discovery_zen_ping_unicast_hosts = 192.168.0.187:9300
elasticsearch_http_enabled = false
elasticsearch_network_host = 0.0.00
elasticsearch_discovery_initial_state_timeout = 3s
elasticsearch_analyzer = standard
output_batch_size = 500
output_flush_interval = 1
output_fault_count_threshold = 5
output_fault_penalty_seconds = 30
processbuffer_processors = 5
outputbuffer_processors = 3
processor_wait_strategy = blocking
ring_size = 65536
inputbuffer_ring_size = 65536
inputbuffer_processors = 2
inputbuffer_wait_strategy = blocking
message_journal_enabled = true
message_journal_dir = /var/lib/graylog-server/journal
async_eventbus_processors = 2
lb_recognition_period_seconds = 3
alert_check_interval = 60
mongodb_uri = mongodb://localhost/graylog
mongodb_max_connections = 1000
mongodb_threads_allowed_to_block_multiplier = 5
content_packs_dir = /usr/share/graylog-server/contentpacks
content_packs_auto_load = grok-patterns.json
proxied_requests_thread_pool_size = 32

8. Сохраняем и закрываем файл и добавляем аналогично в загрузку при старте

# systemctl start graylog-server
# systemctl enable graylog-server

Доступ в вэб-интерфейс Graylog

Если установлен ufw разрешим необходимый нам порт:

# ufw allow 9000

Теперь откроем браузер с нашим ip-адресом и портом 9000, который используется по умоланию — http://192.168.0.187:9000.

Вход в систему с именем пользователя «admin» и паролем, который вы сконфигурировали в root_password_sha2 на server.conf.

Вы должны увидеть следующий экран после авторизации:

 

cryptoparty

Cryptography is typically bypassed, not penetrated.

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

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

5e7fa976b0640d40