Graylogは、大量のマシンデータのリアルタイム分析、検索、および監視を可能にするオープンソースの集中ログ管理ソリューションです。これは、より堅牢で使いやすい分析プラットフォーム、より高速な分析速度、簡単な管理、およびインフラストラクチャ管理を提供することを目的として、ドイツのハンブルクで開発されました。
この記事では、Ubuntu20.04LTSにGraylogをインストールして構成する方法を学習します。
前提条件
グレイログのインストールを続行する前に、次の設定を行う必要があります。
- ElasticsearchはJavaベースのプロジェクトであるためOracleJavaSE 8(OpenJDK 8)。
- Elasticsearch 6.8、およびバージョン7から7.10までは、バージョン以降はGraylogではサポートされていません。
- MongoDB(4.0、4.2、または4.4)。
Graylogのインストール
Elasticsearchを実行するにはJava8が必要なので、インストールから始めましょう。追加のパッケージが必要になります。一緒にインストールしましょう。
$ sudo apt update
$ sudo apt-get install openjdk-8-jre-headless pwgen apt-transport-https uuid-runtime
Javaをインストールした後、次のコマンドを使用してインストールを確認できます。
$ java -version
それでは、Elasticsearchをインストールしましょう。まず、次のコマンドを使用して、システムパッケージリポジトリリストにパッケージリポジトリを追加する必要があります。
$ wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
$ echo "deb https://artifacts.elastic.co/packages/oss-7.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-7.x.list
次に、aptコマンドを使用してElasticsearchをインストールします。
$ sudo apt update
$ sudo apt install elasticsearch-oss
Elasticsearchのインストールが完了したら、構成ファイルの次の行を更新します。
$ sudo vim /etc/elasticsearch/elasticsearch.yml
cluster.name: graylog
action.auto_create_index: false
次に、サービスを有効にして再起動し、変更を適用します。
$ sudo systemctl daemon-reload
$ sudo systemctl restart elasticsearch.service
$ sudo systemctl enable elasticsearch.service
次に、Graylogのデータベースをインストールしましょう。GraylogはMongoDBをデータベースとして使用してデータを保存します。まず、次のコマンドを使用して、リポジトリの公開GPGキーを登録する必要があります。
$ sudo apt install gnupg
$ wget -qO - https://www.mongodb.org/static/pgp/server-4.4.asc | sudo apt-key add -
次に、パッケージリポジトリをダウンロードして、システムパッケージリポジトリリストに追加します。これを実行するには、
$ echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/4.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.4.list
最後に、aptコマンドを使用してMongoDBをインストールします。
$ sudo apt update
$ sudo apt install -y mongodb-org
また、MongoDBの特定のバージョンをインストールするには、優先バージョンと一緒に実行します。
$ sudo apt install -y mongodb-org-mongos=4.4.6 mongodb-org=4.4.6 mongodb-org-tools=4.4.6 mongodb-org-shell=4.4.6 mongodb-org-server=4.4.6
次に、systemctlコマンドを使用してMongoDBを有効にして再起動します。
$ sudo systemctl enable mongod
$ sudo systemctl restart mongod
注:実行時に「mongod.service:メインプロセスが終了しました、code =exited、status =14 / n / a」が表示された場合は、次のコマンドを実行してください。
$ sudo chown -R mongodb:mongodb /var/lib/mongodb
$ sudo chown mongodb:mongodb /tmp/mongodb-27017.sock
$ sudo systemctl restart mongod
最後に、すべての前提条件パッケージがインストールされた後に、Graylogサーバーをインストールします。 Graylogをインストールするには、最初にdebパッケージをダウンロードし、次にdpkgコマンドを使用して解析し、最後にインストールします。
$ wget https://packages.graylog2.org/repo/packages/graylog-4.1-repository_latest.deb
$ sudo dpkg -i graylog-4.1-repository_latest.deb
$ sudo apt update
$ sudo apt -y install graylog-server
次に、systemctlコマンドを使用してGraylogを有効にします。
$ sudo systemctl enable graylog-server.service
Graylogの構成
Graylogの実行に必要なすべてのパッケージをインストールしましたが、実行する準備ができていません。 Graylogの使用を開始する前に、password_secretとroot_password_sh2を構成する必要があります。構成ファイルのデフォルトのパスは/etc/graylog/server/server.confであり、sedコマンドを使用してpwgenによって生成されたパスワードを注入します。
password_secretの場合、pwgenコマンドを使用してランダムな128文字のパスワードを生成します。実行するには、
$ sudo apt install pwgen
次に、次のコマンドを使用してパスワードを生成し、sedコマンドを使用してパスワードを挿入します。これを実行するには、
$ sudo -E sed -i -e "s/password_secret =.*/password_secret = $(pwgen -s 128 1)/" /etc/graylog/server/server.conf
次に、次のコマンドを使用して、root_passwordのSHA256ハッシュパスワードを生成しましょう。 your_passwordを実際のパスワードに置き換えることを忘れないでください。
$ sudo sed -i -e "s/root_password_sha2 =.*/root_password_sha2 = $(echo -n 'your_password' | shasum -a 256 | cut -d' ' -f1)/" /etc/graylog/server/server.conf
最後に、お好みのエディターを使用して、Graylogのドメインを構成します。
$ sudo vim /etc/graylog/server/server.conf
次に、次の方法で構成内の変数の値を見つけて設定します。
http_bind_address = your_server_ip:9000 http_external_uri= http://your_server_ip or domain:9000/
次に、ファイルを書き込んで終了します。
すべてが設定されたら、systemctlコマンドを使用してgraylog-serverを再起動し、変更を適用します。
$ sudo systemctl restart graylog-server.service
Graylogサーバーのテスト
これで、すべてを使用する準備が整いました。構成済みのhttp_external_urlにアクセスすると、次のようなWebインターフェイスが表示されます。
次に、管理者のユーザー名を使用して認証し、パスワードにはハッシュ中に使用したプレーンテキストのパスワードを使用します。
結論
初心者でもプロでも、最後までお読みいただきありがとうございます。私はあなたがubuntuでGraylogを設定してインストールする明確な考え方を持っていることを願っています。これで、Graylogサーバーを使用してログを操作できます。