Ubuntu 16.04にGraylogサーバーをインストールする方法

Graylogサーバーは、エンタープライズ対応のオープンソースログ管理ソフトウェアスイートです。さまざまなソースからログを収集して分析し、問題を発見して解決します。Greylogサーバーは、基本的にElasticsearch、MongoDB、Graylogの組み合わせです。Elasticsearchは、テキストを保存し、非常に強力な検索機能を提供する非常に人気のあるオープンソースアプリケーションです。MongoDBは、データをNoSQL形式で保存するオープンソースアプリケーションです。Graylogは、さまざまなソースからログを収集し、ログを管理および検索するためのWebベースのダッシュボードを提供します。Graylogは、構成とデータの両方にREST APIも提供します。中央の1か所からフィールド統計、クイック値、およびチャートを使用して、メトリックを視覚化し、傾向を観察するために使用できる構成可能なダッシュボードを提供します。

このチュートリアルでは、Ubuntu 16.04にGraylogサーバーをインストールする方法を学びます。このガイドは、Graylog Server 2.3用に書かれていますが、新しいバージョンでも動作する可能性があります。また、Java、Elasticsearch、MongoDBのインストール方法も学びます。また、MongoDBインスタンスを保護し、WebベースのダッシュボードとAPIのNginxリバースプロキシを設定します。

前提条件

  • 4GB以上のRAMを備えたVultr Ubuntu 16.04サーバーインスタンス。
  • sudoのユーザー

このチュートリアルでは192.0.2.1、サーバーのパブリックIPアドレスおよびサーバーをgraylog.example.com指すドメイン名として使用します。のすべての出現192.0.2.1箇所をVultrパブリックIPアドレスとgraylog.example.com実際のドメイン名に置き換えます。

How to Update 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は、ログを保存して検索するために使用される、分散されたリアルタイムのスケーラブルで可用性の高いアプリケーションです。インデックスにデータを保存し、データの検索は非常に高速です。HTTP RESTful APIやネイティブJava APIなど、さまざまな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で実行されています。次のコマンドを実行して、Elasticsearchが正常に動作していることを確認します。

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

また、root adminユーザーのパスワード用に256ビットのハッシュを生成します。

echo -n StrongPassword | sha256sum

ユーザーStrongPasswordに設定するパスワードに置き換えadminます。表示されます:

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

Graylog構成ファイルを開きます。

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

コマンドでpassword_secret =生成されたパスワードを見つけ、コピーして貼り付けますpwgenroot_password_sha2 =管理者パスワードの変換されたSHA 256ビットハッシュを見つけ、コピーして貼り付けます。を見つけて#root_email =コメントを外し、メールアドレスを入力します。コメントを外してタイムゾーンをに設定しますroot_timezone。例えば:

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

コメントを外し#web_enable = falseて値をに設定することにより、WebベースのGraylogインターフェースを有効にし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 Webインターフェースはlocalhostポート9000でリッスンし、APIはURLでポート9000でリッスンします/api。このチュートリアルでは、Nginxをリバースプロキシとして使用して、アプリケーションが標準のHTTPポート経由でアクセスできるようにします。次のコマンドを実行して、Nginx Webサーバーをインストールします。

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サーバーのインストールと基本構成が完了しました。これで、http://192.0.2.1またはhttp://graylog.example.comDNSが構成されている場合は、Graylogサーバーにアクセスできます。以前にadmin設定したユーザー名とプレーンテキストバージョンのパスワードを使用してログインしますroot_password_sha2

おめでとうございます-Ubuntu 16.04サーバーに完全に機能するGraylogサーバーがインストールされました。



Leave a Comment

CentOS 7にApacheをインストールする方法

CentOS 7にApacheをインストールする方法

CentOS 7サーバーにApache 2.4をインストールする方法を説明します。安定したウェブサーバーを構築するための前提条件と手順を解説します。

FreeBSD 11.1にBlacklistdをインストールする方法

FreeBSD 11.1にBlacklistdをインストールする方法

FreeBSD 11.1におけるBlacklistdのインストール方法について詳しく解説します。この方法を通じて、強力なセキュリティ対策を実装できます。

Windows Serverのサーバーマネージャーを使用した複数サーバーの管理

Windows Serverのサーバーマネージャーを使用した複数サーバーの管理

サーバーマネージャーを使用して、Windows Serverの管理が向上します。セキュリティリスクを軽減し、効率的な管理を実現します。

CentOS 7にSeafileサーバーをインストールする方法

CentOS 7にSeafileサーバーをインストールする方法

CentOS 7にSeafileサーバーをインストールする方法。Seafile(コミュニティバージョン)は、ownCloudに似た無料のオープンソースファイル同期および共有ソリューションです。

DebianでSnortを設定する方法

DebianでSnortを設定する方法

Snortは無料のネットワーク侵入検知システムです。最新の方法で、SnortをDebianにインストールし、設定する手順を紹介します。ネットワークのセキュリティを強化しましょう。

CentOS 7にGraylogサーバーをインストールする方法

CentOS 7にGraylogサーバーをインストールする方法

CentOS 7にGraylogサーバーをインストールし、ログ管理を行う方法を学びます。

WindowsでhMailServerを使用してメールサーバーを構築する

WindowsでhMailServerを使用してメールサーバーを構築する

WindowsサーバーでWebサイトを実行している場合、電子メールも受信できるようにするためにhMailServerを使用する方法を解説します。

Ubuntu 19.04にFiveMサーバーをインストールする方法

Ubuntu 19.04にFiveMサーバーをインストールする方法

FiveMサーバーをUbuntu 19.04にインストールするための詳細なガイド。必要条件からインストール、起動、トラブルシューティングまで、すべてのステップを含みます。

WsgiDAVを使用してDebian 10にWebDAVをデプロイする

WsgiDAVを使用してDebian 10にWebDAVをデプロイする

Debian 10にWebDAVをデプロイする方法を学び、WsgiDAVとSSL証明書で安全な接続を実現しましょう。

ヘルスケア2021における人工知能の影響

ヘルスケア2021における人工知能の影響

ヘルスケアにおけるAIは、過去数十年から大きな飛躍を遂げました。したがって、ヘルスケアにおけるAIの未来は、日々成長を続けています。