
Graylogは、マシンログを一元的に保存および分析するのに役立つオープンソースのログ管理ツールです。 Graylogのセットアップは、Graylogサーバー、Elasticsearch、MongoDBの3つのコンポーネントで構成されています。
ここでは、Ubuntu20.04にGraylogをインストールする方法を説明します。
Javaのインストール
グレイログの設定には、Javaバージョン8以降が必要です。マシンでOpenJDKまたはOracleJDKのいずれかを使用して、先に進むことができます。
読む: Ubuntu20.04にOracleJavaをインストールする方法
ここでは、OpenJDK11を使用します。
sudo apt update sudo apt install -y apt-transport-https openjdk-11-jre-headless uuid-runtime pwgen curl dirmngr
OpenJDKのインストール後のJavaバージョンを確認してください。
java -version
出力:
openjdk version "11.0.8" 2020-07-14 OpenJDK Runtime Environment (build 11.0.8+10-post-Ubuntu-0ubuntu120.04) OpenJDK 64-Bit Server VM (build 11.0.8+10-post-Ubuntu-0ubuntu120.04, mixed mode, sharing)
Elasticsearchをインストールする
Elasticsearchは外部ソースからのログを保存し、RESTfulWebインターフェースを使用してリアルタイムの分散検索と分析を提供します。
GPG署名キーをダウンロードしてインストールします。
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
以下のコマンドを実行して、システムにElasticsearchリポジトリをセットアップします。
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
リポジトリキャッシュを更新してから、Elasticsearchパッケージをインストールします。
sudo apt update sudo apt install -y elasticsearch-oss
Elasticsearch構成ファイルを編集して、Graylogセットアップのクラスター名を設定します。
sudo nano /etc/elasticsearch/elasticsearch.yml
以下に示すように、クラスター名をグレイログとして設定します。
cluster.name: graylog
次に、以下の行のコメントを解除します。
action.auto_create_index: false
Elasticsearchサービスを開始して、新しい構成を読み取ります。
sudo systemctl daemon-reload sudo systemctl start elasticsearch sudo systemctl enable elasticsearch
Elasticsearchが完全に開始されるまで、少なくとも1分待ちます。
Elastisearchはポート9200でリッスンしているはずです。curlコマンドを使用してElasticsearchの応答を確認してください。
curl -X GET http://localhost:9200
出力:
出力にクラスター名graylogが含まれていることを確認します。
{ "name" : "vQklpl4", "cluster_name" : "graylog", "cluster_uuid" : "jLztxJoOROK-XuZkoKJr6A", "version" : { "number" : "6.8.11", "build_flavor" : "oss", "build_type" : "deb", "build_hash" : "00bf386", "build_date" : "2020-07-09T19:08:08.940669Z", "build_snapshot" : false, "lucene_version" : "7.7.3", "minimum_wire_compatibility_version" : "5.6.0", "minimum_index_compatibility_version" : "5.0.0" }, "tagline" : "You Know, for Search" }
MongoDBをインストールする
MongoDBは、Graylogの構成を保存するためのデータベースとして機能します。 Graylogには、MongoDB v3.6、4.0、または4.2が必要です。
残念ながら、MongoDB公式リポジトリには、Ubuntu20.04に必要なMongoDBバージョンがありません。そのため、UbuntuベースリポジトリからMongoDBv3.6をインストールします。
sudo apt update sudo apt install -y mongodb-server
MongoDBを起動し、システムの起動時に有効にします。
sudo systemctl start mongodb sudo systemctl enable mongodb
Graylogサーバーのインストール
GraylogサーバーはElasticsearchからデータを読み取り、ユーザーからの検索クエリを取得し、GraylogWebインターフェイスを介してユーザーに表示します。
Graylog3.3リポジトリ構成パッケージをダウンロードしてインストールします。
wget https://packages.graylog2.org/repo/packages/graylog-3.3-repository_latest.deb sudo dpkg -i graylog-3.3-repository_latest.deb
リポジトリキャッシュを更新します。
sudo apt update
次のコマンドを使用してGraylogサーバーをインストールします。
sudo apt install -y graylog-server
ユーザーパスワードを保護するには、シークレットを設定する必要があります。 pwgenコマンドを使用してシークレットを生成します。
pwgen -N 1 -s 96
出力:
HRy1WNsMQIWF228SsbdQCnCsTBL7wVez28UsZXI8PXqStx5DQe3PAmtpm8PNm6g8K44fVFNo4c7Bvp4WCOyxGiSXvdhOXl8w
server.confファイルを編集します。
sudo nano /etc/graylog/server/server.conf
次に、以下のように秘密を配置します。
password_secret = HRy1WNsMQIWF228SsbdQCnCsTBL7wVez28UsZXI8PXqStx5DQe3PAmtpm8PNm6g8K44fVFNo4c7Bvp4WCOyxGiSXvdhOXl8w
ここで、rootユーザーのハッシュ(sha256)パスワードを生成します(システムユーザーと混同しないでください。graylogのrootユーザーはadminです)。
Graylog Webインターフェイスにログインするには、このパスワードが必要です。管理者のパスワードは、ウェブインターフェースを使用して変更することはできません。したがって、この変数を編集して設定する必要があります。
パスワードを選択したパスワードに置き換えます。
echo -n password | sha256sum
出力:
5e884898da28047151d0e56f8dc6292773603d0d6aabbdd62a11ef721d1542d8
server.confファイルを再度編集します。
sudo nano /etc/graylog/server/server.conf
次に、以下に示すように、ハッシュパスワードを設定します。
root_password_sha2 = 5e884898da28047151d0e56f8dc6292773603d0d6aabbdd62a11ef721d1542d8
GraylogWebインターフェースのセットアップ
バージョンGraylog2.x以降、WebインターフェイスはGraylogサーバーによって直接提供されています。 server.confファイルを編集してGraylogWebインターフェイスを有効にします。
sudo nano /etc/graylog/server/server.conf
以下のエントリを、GraylogWebインターフェイスにアクセスするためのシステムIPアドレスで更新します。
http_bind_address = 192.168.0.10:9000NATが原因でパブリックIPアドレスを使用してGraylogにアクセスした場合は、以下の値を更新してください。それ以外の場合はスキップします。
http_external_uri = http://public_ip:9000/
グレイログサービスを開始して有効にします。
sudo systemctl daemon-reload sudo systemctl start graylog-server sudo systemctl enable graylog-server
グレイログサーバーの起動ログを探し続けてください。このログは、問題が発生した場合にGraylogのトラブルシューティングを行うのに役立ちます。
sudo tail -f /var/log/graylog-server/server.log
Graylogサーバーが正常に起動すると、ログファイルに次のメッセージが表示されます。
2020-08-03T16:03:06.326-04:00 INFO [ServerBootstrap] Graylog server up and running.
グレイログにアクセス
これで、GraylogWebインターフェイスがポート9000でリッスンします。ブラウザを開いてポイントします。
http://ip.add.re.ss:9000ユーザー名adminと、server.confファイルのroot_password_sha2で構成したパスワードを使用してログインします。

ログインすると、スタートページが表示されます。

システムをクリックします>>概要 グレイログサーバーのステータスを知るため。

グレイログ入力の作成
次の記事では、外部ソースからRsyslogログを受信するようにGraylogを構成する方法を説明します。
結論
これで、Graylog3.0がUbuntu20.04に正常にインストールされました。さらに読むと、NginxまたはApacheをリバースプロキシとして構成し、GraylogWebインターフェイスにHTTPSを設定してみることができます。