Debian12.5 ; Nagios Server , Tripwire インストール

オープンソースの統合監視ソフトウェア「Nagios Server」インストール

Nagiosは、Linux 上で実行するオープンソースの監視ソリューションです。
Nagiosは、 Ethan Galstadによって開発され、 1999 年に最初にリリースされました。その後、このプロジェクトは、いくつかの貢献者によってオープンソース プロジェクトとして改良されました。

Nagiosは、ネットワーク、アプリケーション、またはサーバーの重要なパラメーターを定期的にチェックするように設計されています。これらのパラメータには、マイクロプロセッサの負荷、実行中のプロセス数、ログ ファイル、ディスクおよびメモリの使用量の他、SMTP (Simple Mail Transfer Protocol)、HTTP (Hypertext Transfer Protocol)、POP3 ( Post Office Protocol 3)の他の多くのサービスもチェックできます。

Nagoisを実行するにはPHP、MySQLなどのデータベース、ApacheやNginxなどのWebサーバーが必要です。今回はこれらすべてが構成済みという前提で進めます。

1. 必要なパッケージをインストール

2. Nagios Coreのインストール

①ダウンロード

②インストール

以下のように表示される

コンパイル

以下のように表示される

Nagios ユーザーとグループを作成

Nagios グループに Apache ユーザーを追加

Nagios Core をインストール

Nagios の init スクリプトをインストール

外部コマンド ファイルと権限をインストール

Nagios 構成ファイルをインストール

Nagios 用の Apache 構成ファイルをインストール

3. Nagios プラグインをインストール

Nagios Pluginsページから最新の codeをダウンロード

②インストール

③必要なディレクトリを作成

4. Nagios Web ユーザーの作成

Nagios Web ダッシュボードにアクセスするためのユーザー アカウントを作成する。このユーザーアカウントは、認証に使用される。
ユーザーのデフォルト名はnagiosadminで、/usr/local/nagios/etc/cgi.cfgファイル内に優先ユーザー名として定義されています。

所有権と権限を設定

Apache を再起動

ファイアウォールで HTTP サービスポートを解放します

Nagios サービスを開始と有効

システムを再起動

サービスが実行しているか確認

5. Nagios Web インターフェイスにアクセス

任意のブラウザで http://[IP_Address]/nagios/にアクセスし[Username]にnagiosadmin、[Password]には上記でユーザーを作成したとき指定したパスワードを入力し、[Sign in]

ログインに成功すると、以下のダッシュボードが表示されます。

ホストの可用性を表示
左メニューの[Hosts]をクリック

左メニューの [Tactical Overview] をクリックすると監視データを閲覧できる

6. Nagios エージェントの構成

エージェントを監視するため。以下をインストールする
• データ収集用のNagios plugins
• プラグインを実行するNRPE Agent

6.1 Nagios pluginsのダウンロードとインストール

Nagios プラグインは、/usr/local/nagios/libexec/ ディレクトリにあります。システム内で使用可能なすべてのプラグインを表示するには、このディレクトリをリストします。

下記のとおりnagios-pluginsが利用可能である

インストールされたプラグインを適用するために Nagios デーモンを再起動

6.2 Nagios NRPE Agentのインストール
NRPE エージェントは、デフォルトの Debian リポジトリで利用可能

バージョン確認

サービスを開始して有効にする

NRPEエージェントのステータスを確認

ファイアウォールでNRPEのポートを開く
NRPEはデフォルトでTCP 5666ポートを使用します。ファイアウォールが動作している場合は、Nagiosモニタリングサーバーからの外部チェックを許可するために、このポートを開きます。

ポート5666/tcpがリッスンされているか確認

7. 監視ホストの追加

下記サーバーをホストに追加し、 単純なPing による死活監視対象として設定
OS : OracleLinux8.8
IPアドレス : 192.168.11.100

7.1 設定ファイル編集

7.2 ディレクトリー作成

7.3 定義ファイル新規作成

7.4 Nagiosサーバー再起動

Nagios サーバーにログイン(http://[サーバーIPアドレス]/nagios)しHostsを見るとホストが追加されている

8. 監視サービスの追加

上記で追加したホストに監視サービスを追加する
OS : OracleLinux8.8
IPアドレス : 192.168.11.100
追加するサービス
[check_users]
[check_load]
[check_disk]
[check_procs]

8.1 監視対象サーバー側の設定

8.1.1 監視対象ホストにエージェントをインストール
EPEL から nrpe 及び代表的なサービスプラグインをインストール

8.1.2 設定ファイル編集

8.1.3 nrpeサーバー有効化、起動

8.1.4 ファイアウォールでNRPEのポート5666/tcp,5666/udpを開く

8.2 Nagios サーバー側の設定

8.2.1 nrpeプラグインのインストール

8.2.2 nagiosプラグインディレクトリーにコピー

8.2.3 commands.cfg編集

8.2.4 先ほどホスト追加したときに作成した korodes.cfg を編集追加する

8.2.5 Nagios 再起動

8.2.6 http://[Nagios Server IP Address]/nagios にアクセスする
下図のように新しく追加した監視サービスが追加されている

Tripwireインストール

クラッカーによるLinuxサーバーのファイルの改竄を検知するシステムを導入する。
今回は、ファイル改竄検知システムにホスト型IDS(IDS=Intrusion Detection System)のTripwireを導入する。
Tripwireは、導入時のファイル状態をデータベース化し、そのデータベースとファイルの現状を比較することにより、ファイルの追加/変更/削除を検知する。

1 インストールと構成

①サイト キーの作成
Tripwire は、「tw.cfg」tripwire構成ファイルと 「tw.pol」tripwireポリシーファイルをセキュリティで保護するためにサイトパスフレーズを必要とします。指定されたパスフレーズを使用して両方のファイルを暗号化します。 サイトパスフレーズは、単一インスタンスのtripwireに対しても必要です。

②ローカルキーパスフレーズ
tripwireデータベースとレポートファイルの保護にはローカルパスフレーズが必要です。tripwireベースラインデータベースの不正な変更を避けるためにtripwireが使用するローカルキー。

③tripwire構成パス
tripwireの設定は /etc/tripwire/twcfg.txt ファイルに保存されています。暗号化された構成ファイル tw.cfg を生成するために使用されます。

④tripwire ポリシー パス
tripwireは/etc/tripwire/twpol.txtファイルにポリシーを保存します。これは、tripwire で使用される暗号化されたポリシー ファイル tw.pol の生成に使用されます。

⑤サイトキーパスフレーズの入力

⑥再度サイトキーパスフレーズの入力を求められる

⑦ローカールキーパスフレーズの入力

⑧再度ローカールキーパスフレーズの入力を求められる

⑨インストールが進み完了します

2 構成ファイルの設定

①トリップワイヤ構成ファイル (twcfg.txt)
トリップワイヤ構成ファイル (twcfg.txt) の詳細を以下の通りです。暗号化されたポリシー ファイル (tw.pol)、サイトキー (site.key)、およびローカルキー (ホスト名ローカル.key) などのパスは以下の通りです。

3 キーの作成やデータベース作成等の初期設定

①twcfg.txt編集

② 設定ファイル生成

③ ポリシーを最適化
次のポリシー最適化スクリプトを利用し、ポリシーを最適化する

ポリシー最適化スクリプト内容

④データベース作成

途中でエラーで止まるときは「--verbose」オプションをつけて再実行

進行状況を表示し、エラーで止まるファイル、ディレクトリを確認し、所有者とアクセス権を設定し、再度下記を実行する

当方の場合下記ファイルでエラーが発生しました
Software interrupt forced exit /usr/lib/firmware/intel
Segmentation fault
/usr/lib/firmware/intelの所有権をrootにしたところ解決しました

4 チェックを実行

①テスト用ファイルを作成

②Tripwire の動作確認

成功すると次ような表示が出る

テストファイルを削除しておく

5 Tripwire 自動実行

①自動実行スクリプト(tripwire.sh)を作成し、自動実行させる

自動実行スクリプト(tripwire.sh)の内容

②実行権限を与え、Cronで定期実行する

参考: メールで結果報告用スクリプト

下記を実行し、指定メールアドレスに結果が届くか確認する

タイトルとURLをコピーしました