Как установить Graylog Server в Ubuntu 16.04

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

Из этого руководства вы узнаете, как установить Graylog Server в Ubuntu 16.04. Это руководство было написано для Graylog Server 2.3, но может работать и на более новых версиях. Вы также научитесь устанавливать Java, Elasticsearch и MongoDB. Мы также защитим экземпляр MongoDB и настроим обратный прокси-сервер Nginx для веб-панели управления и API.

Предпосылки

В этом руководстве мы будем использовать 192.0.2.1в качестве общедоступного IP-адреса сервера и в graylog.example.comкачестве имени домена, указывающего на сервер. Замените все вхождения 192.0.2.1вашим публичным IP-адресом Vultr и graylog.example.comвашим фактическим доменным именем.

Обновите свою базовую систему, используя руководство Как обновить Ubuntu 16.04 . После обновления системы перейдите к установке Java.

Установить Java

Elasticsearch требует Java 8 для запуска. Он поддерживает Oracle Java и OpenJDK, но всегда рекомендуется использовать Oracle Java, когда это возможно. Добавьте Oracle Java PPA репозиторий:

sudo add-apt-repository ppa:webupd8team/java

Обновите метаданные репозитория APT:

sudo apt update

Установите последнюю стабильную версию Java 8, запустите:

sudo apt -y install oracle-java8-installer

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

java -version

Вы увидите следующий вывод.

user@vultr:~$ java -version
java version "1.8.0_144"
Java(TM) SE Runtime Environment (build 1.8.0_144-b01)
Java HotSpot(TM) 64-Bit Server VM (build 25.144-b01, mixed mode)

Установите JAVA_HOMEи другие значения по умолчанию, установив oracle-java8-set-default. Бег:

sudo apt -y install oracle-java8-set-default

Запустите echo $JAVA_HOMEкоманду, чтобы проверить, установлена ​​ли переменная среды или нет.

user@vultr:~$ echo "$JAVA_HOME"
/usr/lib/jvm/java-8-oracle

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

Установить Elasticsearch

Elasticsearch - это распределенное, масштабируемое и доступное приложение, работающее в режиме реального времени, которое используется для хранения журналов и поиска по ним. Он хранит данные в индексах, и поиск по ним выполняется очень быстро. Он предоставляет различные наборы API, такие как HTTP RESTful API и нативный Java API. Elasticsearch может быть установлен непосредственно через репозиторий Elasticsearch. Добавьте хранилище Elasticsearch APT:

echo "deb https://artifacts.elastic.co/packages/5.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-5.x.list

Импортируйте ключ PGP, используемый для подписи пакетов. Это обеспечит целостность пакетов.

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

Обновите метаданные хранилища APT.

sudo apt update

Установите пакет Elasticsearch:

sudo apt -y install elasticsearch

После установки пакета откройте файл конфигурации Elasticsearch по умолчанию.

sudo nano /etc/elasticsearch/elasticsearch.yml

Найдите следующую строку, раскомментируйте ее и измените значение с my-applicationна graylog.

cluster.name: graylog

Вы можете запустить Elasticsearch и включить его автоматический запуск во время загрузки:

sudo systemctl enable elasticsearch
sudo systemctl start elasticsearch

Elasticsearch теперь работает на порту 9200. Убедитесь, что он работает правильно, запустив:

curl -XGET 'localhost:9200/?pretty'

Вы должны увидеть вывод, похожий на следующий.

[user@vultr ~]$ curl -XGET 'localhost:9200/?pretty'
{
  "name" : "-kYzFA9",
  "cluster_name" : "graylog",
  "cluster_uuid" : "T3JQKehzSqmLThlVkEKPKg",
  "version" : {
    "number" : "5.5.1",
    "build_hash" : "19c13d0",
    "build_date" : "2017-07-18T20:44:24.823Z",
    "build_snapshot" : false,
    "lucene_version" : "6.6.0"
  },
  "tagline" : "You Know, for Search"
}

Если вы обнаружите ошибки, подождите несколько секунд и повторите попытку, так как Elasticsearch завершит процесс запуска. Elasticsearch теперь установлен и работает правильно.

Установить MongoDB

MongoDB - это бесплатный сервер базы данных NoSQL с открытым исходным кодом. В отличие от традиционной базы данных, которая использует таблицы для организации своих данных, MongoDB ориентирована на документы и использует JSON-подобные документы без схем. Graylog использует MongoDB для хранения своей конфигурации и метаинформации. Его можно установить напрямую через репозиторий MongoDB. Импортируйте ключ GPG, используемый для подписи пакета. Это обеспечит подлинность пакетов.

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 0C49F3730359A14518585931BC711F9BA15703C6

Теперь создайте файл репозитория:

echo "deb [ arch=amd64,arm64 ] http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.4.list

Обновите метаданные хранилища APT.

sudo apt update

Установите пакет MongoDB:

sudo apt -y install mongodb-org

Запустите сервер MongoDB и включите его автоматический запуск.

sudo systemctl start mongod
sudo systemctl enable mongod

Установить сервер Graylog

Загрузите и последний репозиторий для сервера Graylog.

wget https://packages.graylog2.org/repo/packages/graylog-2.3-repository_latest.deb
sudo dpkg -i graylog-2.3-repository_latest.deb
sudo apt update

Установите пакет Graylog:

sudo apt install graylog-server

Сервер Graylog теперь установлен на вашем сервере. Прежде чем вы сможете запустить его, вам нужно будет настроить несколько вещей.

Настроить Graylog

Установите pwgenутилиту для генерации надежных паролей.

sudo apt -y install pwgen

Теперь создайте надежный секретный пароль.

pwgen -N 1 -s 96

Вы будете выводить похожие на:

[user@vultr ~]$ pwgen -N 1 -s 96
pJqhNbdEY9FtNBfFUtq20lG2m9daacmsZQr59FhyoA0Wu3XQyVZcu5FedPZ9eCiDfjdiYWfRcEQ7a36bVqxSyTzcMMx5Rz8v

Также сгенерируйте 256-битный хеш для пароля adminпользователя root :

echo -n StrongPassword | sha256sum

Замените StrongPasswordна пароль, который вы хотите установить для adminпользователя. Ты увидишь:

[user@vultr ~]$ echo -n StrongPassword | sha256sum
05a181f00c157f70413d33701778a6ee7d2747ac18b9c0fbb8bd71a62dd7a223  -

Откройте файл конфигурации Graylog:

sudo nano /etc/graylog/server/server.conf

Найти password_secret =, скопировать и вставить пароль, сгенерированный с помощью pwgenкоманды. Найдите root_password_sha2 =, скопируйте и вставьте преобразованный 256-битный хэш SHA вашего пароля администратора. Найдите #root_email =, раскомментируйте и укажите свой адрес электронной почты. Раскомментируйте и установите часовой пояс на root_timezone. Например:

password_secret = pJqhNbdEY9FtNBfFUtq20lG2m9daacmsZQr59FhyoA0Wu3XQyVZcu5FedPZ9eCiDfjdiYWfRcEQ7a36bVqxSyTzcMMx5Rz8v
root_password_sha2 = 05a181f00c157f70413d33701778a6ee7d2747ac18b9c0fbb8bd71a62dd7a223
root_email = [email protected]
root_timezone = Asia/Kolkata

Включите веб-интерфейс Graylog, раскомментировав его #web_enable = falseи установив для него значение true. Также раскомментируйте и измените следующие строки, как указано.

rest_listen_uri = http://0.0.0.0:9000/api/
rest_transport_uri = http://192.0.2.1:9000/api/
web_enable = true
web_listen_uri = http://0.0.0.0:9000/

Сохраните файл и выйдите из текстового редактора.

Перезапустите и включите службу Graylog, выполнив:

sudo systemctl restart graylog-server
sudo systemctl enable graylog-server

Настройте Nginx в качестве обратного прокси

По умолчанию веб-интерфейс Graylog прослушивает localhostпорт 9000, а API прослушивает порт 9000 с URL-адресом /api. В этом руководстве мы будем использовать Nginx в качестве обратного прокси, чтобы к приложению можно было получить доступ через стандартный порт HTTP. Установите веб-сервер Nginx, запустив:

sudo apt -y install nginx

Откройте файл виртуального хоста по умолчанию, набрав.

sudo nano /etc/nginx/sites-available/default

Замените существующий контент следующими строками:

server
{
    listen 80 default_server;
    listen [::]:80 default_server ipv6only=on;
    server_name 192.0.2.1 graylog.example.com;

    location / {
      proxy_set_header Host $http_host;
      proxy_set_header X-Forwarded-Host $host;
      proxy_set_header X-Forwarded-Server $host;
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      proxy_set_header X-Graylog-Server-URL http://$server_name/api;
      proxy_pass       http://127.0.0.1:9000;
    }
}

Запустите Nginx и включите его автоматический запуск во время загрузки:

sudo systemctl restart nginx
sudo systemctl enable nginx

Вывод

На этом установка и базовая настройка сервера Graylog завершены. Теперь вы можете получить доступ к серверу Graylog http://192.0.2.1или, http://graylog.example.comесли у вас настроен DNS. Войдите в систему, используя имя пользователя adminи текстовую версию пароля, который вы установили root_password_sha2ранее.

Поздравляем - на вашем сервере Ubuntu 16.04 установлен полностью работающий сервер Graylog.



Leave a Comment

Изучение 26 методов анализа больших данных: часть 1

Изучение 26 методов анализа больших данных: часть 1

Изучение 26 методов анализа больших данных: часть 1

6 невероятных фактов о Nintendo Switch

6 невероятных фактов о Nintendo Switch

Многие из вас знают Switch, который выйдет в марте 2017 года, и его новые функции. Для тех, кто не знает, мы подготовили список функций, которые делают «Switch» обязательным гаджетом.

Технические обещания, которые все еще не выполнены

Технические обещания, которые все еще не выполнены

Вы ждете, когда технологические гиганты выполнят свои обещания? проверить, что осталось недоставленным.

Функциональные возможности уровней эталонной архитектуры больших данных

Функциональные возможности уровней эталонной архитектуры больших данных

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

Как ИИ может вывести автоматизацию процессов на новый уровень?

Как ИИ может вывести автоматизацию процессов на новый уровень?

Прочтите это, чтобы узнать, как искусственный интеллект становится популярным среди небольших компаний и как он увеличивает вероятность их роста и дает преимущество перед конкурентами.

CAPTCHA: как долго она может оставаться жизнеспособным методом различения между человеком и ИИ?

CAPTCHA: как долго она может оставаться жизнеспособным методом различения между человеком и ИИ?

CAPTCHA стало довольно сложно решать пользователям за последние несколько лет. Сможет ли он оставаться эффективным в обнаружении спама и ботов в ближайшем будущем?

Технологическая сингулярность: далекое будущее человеческой цивилизации?

Технологическая сингулярность: далекое будущее человеческой цивилизации?

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

Телемедицина и удаленное здравоохранение: будущее уже здесь

Телемедицина и удаленное здравоохранение: будущее уже здесь

Что такое телемедицина, дистанционное здравоохранение и их влияние на будущее поколение? Это хорошее место или нет в ситуации пандемии? Прочтите блог, чтобы узнать мнение!

Вы когда-нибудь задумывались, как хакеры зарабатывают деньги?

Вы когда-нибудь задумывались, как хакеры зарабатывают деньги?

Возможно, вы слышали, что хакеры зарабатывают много денег, но задумывались ли вы когда-нибудь о том, как они зарабатывают такие деньги? Давайте обсудим.

Обновление дополнения к macOS Catalina 10.15.4 вызывает больше проблем, чем решает

Обновление дополнения к macOS Catalina 10.15.4 вызывает больше проблем, чем решает

Недавно Apple выпустила macOS Catalina 10.15.4, дополнительное обновление для исправления проблем, но похоже, что это обновление вызывает больше проблем, приводящих к поломке компьютеров Mac. Прочтите эту статью, чтобы узнать больше