GNU/Linux >> Linux の 問題 >  >> Ubuntu

Ubuntu 18.04 /Ubuntu16.04にGraylog3.0をインストールする方法

Graylogは、マシンログを一元的に収集、インデックス作成、分析するのに役立つオープンソースのログ管理ツールです。このガイドは、Ubuntu 18.04 /Ubuntu16.04へのGraylogのインストールに焦点を当てています。

コンポーネント

MongoDB –データベースとして機能し、構成とメタ情報を保存します。

Elasticsearch –ログメッセージを保存し、検索機能を提供します。より多くのメモリを割り当て、ElasticsearchノードにSASまたはSANディスクを使用することをお勧めします。ここで、すべての検索が行われます。

Graylogサーバー –ログパーサー。さまざまな入力からログを収集し、ログを管理するための組み込みのWebインターフェイスに出力を提供します。

前提条件

ご存知のように、ElasticsearchはJavaベースのアプリケーションです。先に進むには、マシンにOpenJDKまたはOracleJDKのいずれかをインストールします。

ここでは、OpenJDK8に行きます。

sudo apt update
sudo apt install -y apt-transport-https openjdk-8-jre-headless uuid-runtime pwgen curl dirmngr

Javaのバージョンを確認してください。

java -version

出力:

openjdk version "1.8.0_191"
OpenJDK Runtime Environment (build 1.8.0_191-8u191-b12-2ubuntu0.18.04.1-b12)
OpenJDK 64-Bit Server VM (build 25.191-b12, mixed mode)

Elasticsearchをインストールする

Elasticsearchは、Graylogの実行を必要とする主要コンポーネントの1つであり、検索サーバーとして機能し、RESTfulWebインターフェイスを使用してリアルタイムの分散検索と分析を提供します。

Elasticsearchは、Graylogサーバーから送信されたすべてのログを保存し、ユーザーが組み込みのWebインターフェイスを介して要求するたびにメッセージを表示します。

GPG署名キーをダウンロードしてインストールします。

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

以下のコマンドを実行してElasticsearchリポジトリを設定します。

echo "deb https://artifacts.elastic.co/packages/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

システムの起動時にElasticsearchサービスを自動的に開始するようにします。

sudo systemctl enable elasticsearch

唯一重要なことは、クラスター名を graylogとして設定することです。 。 Elasticsearchの構成ファイルを編集し、それに応じて更新します。

sudo nano /etc/elasticsearch/elasticsearch.yml

以下のようにクラスタ名を設定してください。

cluster.name: graylog

Elasticsearchサービスを開始して、新しい構成を読み取ります。

sudo systemctl restart elasticsearch

Elasticsearchが完全に再起動するまで、少なくとも1分待ちます。 Elastisearchは、HTTPリクエストの処理を9200でリッスンしているはずです。 CURLを使用して応答を確認します。

curl -X GET http://localhost:9200

出力:

クラスタ名が灰色のログとして表示されていることを確認します 。

{
  "name" : "bgVbYrc",
  "cluster_name" : "graylog",
  "cluster_uuid" : "-wECQlwnSZWftd_XdWSz-g",
  "version" : {
    "number" : "6.6.1",
    "build_flavor" : "default",
    "build_type" : "deb",
    "build_hash" : "1fd8f69",
    "build_date" : "2019-02-13T17:10:04.160291Z",
    "build_snapshot" : false,
    "lucene_version" : "7.6.0",
    "minimum_wire_compatibility_version" : "5.6.0",
    "minimum_index_compatibility_version" : "5.0.0"
  },
  "tagline" : "You Know, for Search"
}

オプション: Elasticsearchクラスターの状態をテストします。

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

出力:

出力がクラスターステータスをとして生成することを確認します 。

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

MongoDBをインストールします

公式WebサイトからMongoDBの最新バージョンをダウンロードしてインストールします。ターミナルに公開鍵をインポートして開始します。

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9DA31620334BD75D9DCB49F368818C72E52529D4

/etc/apt/sources.list.d/mongodb-org.listを作成して、mongodbリポジトリを追加します 次のコマンドを使用してファイルを作成します。

### Ubuntu 18.04 ###

echo "deb [ arch=amd64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.0.list

### Ubuntu 16.04 ###

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

次のコマンドを使用してMongoDBをインストールします。

sudo apt update
sudo apt install -y mongodb-org

MongoDBを起動し、システムの起動時に有効にします。

sudo systemctl start mongod
sudo systemctl enable mongod

Graylogをインストールする

Graylogサーバーは、ログメッセージを受け入れて処理し、GraylogWebインターフェイスからのリクエストに対してログメッセージを表示します。

graylog3.xリポジトリをダウンロードしてインストールします。

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

リポジトリキャッシュを更新します。

sudo apt update

次のコマンドを使用してGraylogサーバーをインストールします。

sudo apt install -y graylog-server

グレイログの構成

ユーザーパスワードを保護するには、シークレットを設定する必要があります。同じようにpwgenコマンドを使用します。

pwgen -N 1 -s 96

出力:

fGoTI07CooB6xNy5sdPVSKSuq6QSu2QyWf6G9z3haolgwbERTQ9ZbfbF6hxRYbJMMAlEZX7CXHxJLBkNyfM0420u8aFuZy9M

server.confを編集します グレイログ構成を開始するファイル。

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

以下のように秘密を置いてください。

password_secret = fGoTI07CooB6xNy5sdPVSKSuq6QSu2QyWf6G9z3haolgwbERTQ9ZbfbF6hxRYbJMMAlEZX7CXHxJLBkNyfM0420u8aFuZy9M

次に、rootユーザーのハッシュ(sha256)パスワードを設定します(システムユーザーと混同しないでください。graylogのrootユーザーはadminです)。

Graylog Webインターフェイスにログインするには、このパスワードが必要です。管理者のパスワードは、ウェブインターフェースを使用して変更することはできません。したがって、この変数を編集して設定する必要があります。

yourpasswordを置き換えます あなたの選択で。

echo -n yourpassword | sha256sum

出力:

e3c652f0ba0b4801205814f8b6bc49672c4c74e25b497770bb89b22cdeb4e951

server.confを編集します もう一度ファイルします。

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

ハッシュパスワードを入力します。

root_password_sha2 = e3c652f0ba0b4801205814f8b6bc49672c4c74e25b497770bb89b22cdeb4e951

メールアドレス管理者ユーザーを設定できます。

root_email = "[email protected]"

ルート(管理者)ユーザーのタイムゾーンを設定します。

root_timezone = UTC

以下の変数を定義して、マスターノードを1つだけ設定します。 2番目のGraylogノードを追加する場合は、これをfalseに設定して、2番目のノードをスレーブにします。マスターノードは、スレーブノードが実行しない定期的なタスクを実行するためです。

is_master = true

インデックスごとに保持するログメッセージの数を設定します。大きなインデックスではなく、いくつかの小さなインデックスを使用することをお勧めします。

elasticsearch_max_docs_per_index = 20000000

次のパラメータは、インデックスの総数がこの数に達した場合に古いインデックスが削除されるように定義しています。

elasticsearch_max_number_of_indices = 20

シャード設定は、特定のElasticsearchクラスター内のノードの数に依存します。ノードが1つしかない場合は、1に設定します。

elasticsearch_shards = 1

この設定は、インデックスのレプリカの数を定義します。 Elasticsearchクラスターにノードが1つしかない場合は、それを0に設定します。

elasticsearch_replicas = 0

GraylogWebインターフェースのセットアップ

バージョン2.x以降、WebインターフェイスはGraylogサーバーによって直接提供されています。 server.conf を編集して、GraylogWebインターフェイスを構成します ファイル。

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

以下のエントリを、GraylogWebインターフェイスにアクセスするシステムのIPアドレスで更新します。

http_bind_address = your-server-ip:9000

Graylogサービスを再起動します。

sudo systemctl restart graylog-server

システムの起動時にGraylogサーバーが自動的に起動するようにします。

sudo systemctl enable graylog-server

サーバーの起動ログを確認できます。問題が発生した場合にGraylogのトラブルシューティングを行うと便利です。

sudo tail -f /var/log/graylog-server/server.log

graylog-serverが正常に起動すると、ログファイルに次のメッセージが表示されます。

2019-02-22T10:07:49.398+05:30 INFO  [ServerBootstrap] Graylog server up and running.

グレイログにアクセス

これで、Webインターフェイスがポート9000でリッスンし、ブラウザで

を指定します。 http://ip.add.re.ss:9000

ユーザー名adminでログインします およびroot_password_sha2で構成したパスワード on server.conf

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

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

グレイログ入力の作成

グレイログ入力は、外部ソース、つまり、syslogまたは任意のログシステムからログを受信するように構成する必要があります。

この例では、ポート番号UDP 1514でsyslogからログを受信するための入力を設定します。特権ポートの1つ(1024未満のTCP / UDPポート番号)で入力を試行し始めると、アクセスが拒否されたことがわかります。グレイログログのエラー。

したがって、ポート1514で開始する入力を作成します。

システムをクリックします>>入力>> Syslog UDPを選択します 次に、[新しい入力の起動]をクリックします。

値を入力して、[保存]をクリックします。

ノード: グレイログノードを選択

タイトル: 入力に名前を付けます

バインドアドレス: 0.0.0.0(デフォルトのままにします)

ポート: 1514

Rsyslogの構成

入力を作成したら、Rsyslogを構成するか、システムログをGraylogサーバーに転送します。

Rsyslog構成ファイルを編集します。

sudo nano /etc/rsyslog.conf

UDP 1514でログを送信するための一般的なRsyslog構成は、次のようになります。

*.info;mail.none;authpriv.none;cron.none @192.168.1.10:1514

Rsyslogサービスを再起動して、ログを送信します。

systemctl restart rsyslog

Graylogを使用してログを表示する

数分待ちます。イベントが生成されたら、クライアントマシンからログメッセージの受信を開始する必要があります。

次のスクリーンショットは、Graylog(Graylogコンソール)が受信したログを示しています。>> Searc h

結論

これで、Graylog3.0がUbuntu18.04 / Ubuntu 16.04に正常にインストールされ、外部ソースからRsyslogログを受信するようにGraylogが構成されました。さらに読むと、NginxまたはApacheをリバースプロキシとして構成し、GraylogWebインターフェイスにHTTPSを設定してみることができます。


Ubuntu
  1. Ubuntu14.04にGraylog2をインストールする方法

  2. Ubuntu 15.04/14.10にGraylog2をインストールする方法

  3. Ubuntu16.04にGraylogサーバーをインストールする方法

  1. Ubuntu18.04にElasticsearchをインストールする方法

  2. Ubuntu20.04にRをインストールする方法

  3. Ubuntu20.04にElasticsearchをインストールする方法

  1. Ubuntu18.04にGoをインストールする方法

  2. Ubuntu18.04にRをインストールする方法

  3. Ubuntu20.04にElasticsearchをインストールする方法