Graylogは、ログ管理と分析のための強力なツールで、システム全体で発生する膨大なログデータを効率的に収集、分析、可視化するために使用されます。特に、複数のサーバーやサービスが稼働している環境では、Graylogを使うことでログの集中管理が可能になり、問題の早期発見やトラブルシューティングが容易になります。このガイドでは、UbuntuにGraylogをインストールし、その基本的な設定とログ分析の方法について詳しく解説します。
1. Graylogのインストール準備
1.1 必要なパッケージのインストール
Graylogは、いくつかの前提条件が必要です。まず、Java、MongoDB、Elasticsearchをインストールする必要があります。これらはGraylogが正しく動作するために欠かせません。以下に、必要なパッケージをインストールする手順を示します。
-
Javaのインストール
GraylogはJavaを必要とします。最新のLTS版(Long Term Support)をインストールします。bashsudo apt update sudo apt install openjdk-11-jre
-
MongoDBのインストール
MongoDBは、Graylogがデータを保存するために使用するNoSQLデータベースです。bashsudo apt install mongodb
MongoDBが自動で起動し、システム起動時に自動的に開始されるように設定されます。
-
Elasticsearchのインストール
Elasticsearchは、Graylogの検索機能を提供するために使用されます。以下のコマンドでインストールします。bashwget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.10.0-amd64.deb sudo dpkg -i elasticsearch-7.10.0-amd64.deb
インストール後、Elasticsearchを起動し、自動的に起動するように設定します。
bashsudo systemctl start elasticsearch sudo systemctl enable elasticsearch
2. Graylogのインストール
Graylogは公式のパッケージリポジトリからインストールすることができます。以下の手順でインストールを行います。
-
Graylogリポジトリの設定
Graylogのインストールには、Graylogの公式リポジトリを追加する必要があります。
bashwget https://packages.graylog2.org/repo/packages/graylog-4.0-repository.deb sudo dpkg -i graylog-4.0-repository.deb
-
Graylogのインストール
リポジトリが追加された後、Graylogをインストールします。
bashsudo apt update sudo apt install graylog-server
3. Graylogの設定
Graylogがインストールされたら、次に設定を行います。設定ファイルは/etc/graylog/server/server.conf
にあります。このファイルを編集して、必要な設定を行います。
-
server.conf
の編集server.conf
ファイルを開き、必要な設定を変更します。特に以下の項目は重要です。-
password_secret
初回設定時に、ランダムな16バイトの文字列を生成して指定します。bashhead /dev/urandom | tr -dc A-Za-z0-9 | head -c 16 ; echo
出力された文字列を設定ファイルにコピーします。
-
root_password_sha2
Graylogにログインするための管理者パスワードを設定します。root_password_sha2
はSHA-256でハッシュ化されたパスワードを使用します。まず、以下のコマンドでハッシュ化されたパスワードを生成します。bashecho -n yourpassword | sha256sum
生成されたハッシュ値を設定ファイルにコピーします。
-
elasticsearch_hosts
Elasticsearchがローカルで動作している場合、http://localhost:9200
を設定します。
設定が完了したら、設定ファイルを保存して閉じます。
-
-
Graylogサービスの開始
設定が完了したら、Graylogサーバーを起動します。
bashsudo systemctl start graylog-server sudo systemctl enable graylog-server
サーバーが正常に起動したことを確認するため、ステータスを確認します。
bashsudo systemctl status graylog-server
4. GraylogのWebインターフェースへのアクセス
GraylogのWebインターフェースは、ブラウザを使ってアクセスできます。デフォルトでは、http://localhost:9000
でアクセスできます。
初回アクセス時には、設定した管理者パスワードでログインします。
5. ログの収集と分析
Graylogのインターフェースにログインした後、ログデータを収集して分析するための手順を紹介します。
-
入力の作成
Graylogでは、入力を作成してログを受け取ります。
System -> Inputs
で新しい入力を作成します。例えば、Syslog入力を作成する場合、Syslog UDP
を選択し、適切なポート番号(通常は514)を指定します。 -
ログの送信
ログをGraylogに送信するためには、各サーバーやデバイスでログを送信する設定を行います。例えば、LinuxサーバーでSyslogを使ってGraylogにログを送信する場合、
/etc/rsyslog.conf
を編集し、以下のように設定します。bash*.