2020年9月26日土曜日

Splunk 8.0.5をCentOS 7にインストールしてみた① (Splunk本体のインストール)

ログ管理ツール (SIEM : Security Information and Event Management) で有名なソフトウェアである「Splunk Enterprise (以降、Splunk) 」は、インストール後60日間は無料トライアル版による全機能の利用が可能であり、さらに60日後は一部機能限定とはなるものの、そのまま「Splunk Free」として利用することができる (当然ライセンスを購入すれば商用版として利用が可能)。

各製品の機能比較は以下URLに記載がされている。

Splunkは、Windows、Linux、Mac OSと幅広いプラットフォームをサポートしている。今回はCentOS 7環境にSplunkを導入する手順を紹介する。

なお、今回はSplunk本体 (ログ受信側) のインストールまでを記載し、次回以降で「Splunk Universal Forwarder」を利用したログ送信およびSplunk本体にてログ受信を行う設定手順を記載する。

★↓Splunk Universal Forwarderのインストールと設定手順はこちら。

環境

  • OS : CentOS 7.6
  • インストール状態 : 最小限のインストール

Splunkインストール手順

1. インストーラのダウンロード

インストーラは以下URLからダウンロードできる。無料トライアル版もFree版も同じものがダウンロードできる。ダウンロードするためにはSplunkサイトのユーザ登録が必要となるので注意

.deb、.tgz、.rpmの3種類が用意されているが、ディストリビューションが変わっても手順に応用が利くことから、今回は「.tgz版」をダウンロードする。

2. 事前準備

インストール手順簡略化のため、firewalldとSELinuxは停止しておく。

# systemctl stop firewalld
# systemctl disable firewalld
Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.

# sed -i "s/SELINUX=enforcing/SELINUX=disabled/g" /etc/sysconfig/selinux

3. インストール

インストールはtgzファイルを解凍するだけよい。追加でパッケージインストールなども不要であり、インストール自体は極めてシンプルになるよう設計されている。

# tar xvzf splunk-8.0.5-a1a6394cc5ae-Linux-x86_64.tgz -C /opt

Splunkは「/opt/splunk」に解凍される。以下ディレクトリでよく使うものは以下となる。

ディレクトリ 説明
bin 実行ファイルが配置されている。特にsplunkコマンドは起動・停止や設定確認などで頻繁に使用する。
etc Splunkの設定ファイルとなるconfファイルが配置されている。今回は詳しくは説明しないが、Web管理画面で設定追加されたものは、すべて本ディレクトリ配下のconfファイルに設定がテキストで書き込まれると考えて差し支えない。直接confファイルに設定追加することも可能。
# ls -l /opt/splunk/
合計 2916
-r--r--r--.  1 10777 10777     841  7月  8 16:52 README-splunk.txt
drwxr-xr-x.  4 10777 10777    4096  7月  8 17:12 bin
-r--r--r--.  1 10777 10777      57  7月  8 16:49 copyright.txt
drwxr-xr-x. 15 10777 10777    4096  7月  8 17:10 etc
-rw-r--r--.  1 10777 10777       0  7月  8 17:10 ftr
drwxr-xr-x.  4 10777 10777      62  7月  8 17:10 include
drwxr-xr-x.  8 10777 10777    4096  7月  8 17:13 lib
-r--r--r--.  1 10777 10777   85709  7月  8 16:49 license-eula.txt
drwxr-xr-x.  3 10777 10777      58  7月  8 17:10 openssl
drwxr-xr-x.  4 10777 10777     108  7月  8 17:10 share
-r--r--r--.  1 10777 10777 2875790  7月  8 17:13 splunk-8.0.5-a1a6394cc5ae-linux-2.6-x86_64-manifest

4. Splunkの初回起動と初期設定

「/opt/splunk/bin」ディレクトリにSplunk本体の実行ファイルがあるので、以下の通り実行することで、初回起動時の以下処理が実行される。

  • ライセンス条項に同意
  • 管理ユーザ名の設定 (デフォルトはadmin)
  • 管理ユーザのパスワードの設定
# cd /opt/splunk/bin/
# ./splunk start

SPLUNK GENERAL TERMS

Last updated: February 13, 2020

These Splunk General Terms ("General Terms") between
Splunk Inc., a Delaware corporation, with its principal place
of business at 270 Brannan Street, San Francisco,
California 94107, U.S.A ("Splunk" or "we" or "us" or "our")
and you ("Customer" or "you" or "your") apply to the
purchase of licenses and subscriptions for Splunk's
Offerings. By clicking on the appropriate button, or by
downloading, installing, accessing or using the Offerings,
you agree to these General Terms. If you are entering into
these General Terms on behalf of Customer, you represent
that you have the authority to bind Customer. If you do not
agree to these General Terms, or if you are not authorized
to accept the General Terms on behalf of the Customer, do
not download, install, access, or use any of the Offerings.

See the General Terms Definitions Exhibit attached for
definitions of capitalized terms not defined herein.

1. License Rights

~(中略)~

"Statement of Work" means the statements of work and/or any all
applicable Orders that describe the specific services to be performed by
Splunk, including any materials and deliverables to be delivered by
Splunk.


SPLUNK GENERAL TERMS (v1.2020)


Do you agree with this license? [y/n]: y   ←★"y"を入力

This appears to be your first time running this version of Splunk.

Splunk software must create an administrator account during startup. Otherwise, you cannot log in.
Create credentials for the administrator account.
Characters do not appear on the screen when you type in credentials.

Please enter an administrator username: admin ←★管理者ユーザ名を入力
Password must contain at least:
   * 8 total printable ASCII character(s).
Please enter a new password:   ←★パスワードを入力
Please confirm new password:   ←★パスワードを再入力
Copying '/opt/splunk/etc/openldap/ldap.conf.default' to '/opt/splunk/etc/openldap/ldap.conf'.
Generating RSA private key, 2048 bit long modulus
.........................................+++++
..............................+++++
e is 65537 (0x10001)
writing RSA key

~(中略)~

If you get stuck, we're here to help.
Look for answers here: http://docs.splunk.com

The Splunk web interface is at http://t1071splk:8000

5. 自動起動設定

tgzファイルを解凍しただけなので、これだけではサーバ再起動時に自動起動してくれないため、以下コマンドで自動起動するよう設定する。

# /opt/splunk/bin/splunk enable boot-start
Init script installed at /etc/init.d/splunk.
Init script is configured to run at boot.

試しに再起動を行ったのちステータスを確認したところ、問題なくSplunkが「running」ステータスとなっていた。

# /opt/splunk/bin/splunk status
splunkd is running (PID: 1616).
splunk helpers are running (PIDs: 1620 1635 1711 1831).

6. 管理Web画面にアクセス

以上を実施したのち「http://<インストールしたホスト名 or IPアドレス>:8000」にアクセスすると、管理画面が表示されるはずなので、初回起動時に設定した管理者ユーザとパスワードでログインしてみよう。

初回ログイン時のみ以下2つの警告が表示されるが、どちらも「了解です!」、「再度表示しない」を選択しておけばよい。


問題なければ以下のようなSplunkの管理画面が表示される。


Splunkの起動・停止

インストール自体は完了しているが、Splunkの起動・停止のコマンドも紹介する。

コマンド 説明
/opt/splunk/bin/splunk start 起動
/opt/splunk/bin/splunk stop 停止
/opt/splunk/bin/splunk restart 再起動
/opt/splunk/bin/splunk status ステータス確認

以下実行例となる。

停止

# /opt/splunk/bin/splunk stop
Stopping splunkd...
Shutting down.  Please wait, as this may take a few minutes.
..                                                         [  OK  ]
Stopping splunk helpers...
                                                           [  OK  ]
Done.

起動

# /opt/splunk/bin/splunk start

Splunk> All batbelt. No tights.

Checking prerequisites...
        Checking http port [8000]: open
        Checking mgmt port [8089]: open
        Checking appserver port [127.0.0.1:8065]: open
        Checking kvstore port [8191]: open
        Checking configuration... Done.
        Checking critical directories...        Done
        Checking indexes...
                Validated: _audit _internal _introspection _metrics _metrics_rollup _telemetry _thefishbucket history main summary
        Done
        Checking filesystem compatibility...  Done
        Checking conf files for problems...
        Done
        Checking default conf files for edits...
        Validating installed files against hashes from '/opt/splunk/splunk-8.0.5-a1a6394cc5ae-linux-2.6-x86_64-manifest'
        All installed files intact.
        Done
All preliminary checks passed.

Starting splunk server daemon (splunkd)...
Done
                                                           [  OK  ]

Waiting for web server at http://127.0.0.1:8000 to be available. Done


If you get stuck, we're here to help.
Look for answers here: http://docs.splunk.com

The Splunk web interface is at http://t1071splk:8000

ステータス確認

# /opt/splunk/bin/splunk status
splunkd is running (PID: 3105).
splunk helpers are running (PIDs: 3112 3126 3254 3308 3418).

まとめ

以上でSplunkインストールは完了となる。この状態からログ受信の設定を少し設定するだけでログ収集が開始できる。実施する前は、Splunkのインストールはもっと手間のかかるものと予想していたが、極めて容易かつ短時間でインストールできてしまうことに驚いた。

次回は「Splunk Universal Forwarder」をインストールし、LinuxのログをSplunkに送信し、ログ検索ができることまでを確認する。

0 件のコメント:

コメントを投稿

人気の投稿