初めに #
近年、サーバーを狙った不正アクセスや改ざん被害が増加しており、ホストレベルでのセキュリティ対策が非常に重要となっています。
本記事では、AlmaLinux9環境にオープンソースのホスト型侵入検知システム「OSSEC」を導入する方法を解説いたします。
OSSECとは #
OSSEC(オーエスセック)は、オープンソースで提供されている ホスト型侵入検知システムとなります。
サーバー内部の挙動を監視し、ログの解析、ファイルの整合性チェック、ルートキットの検出など、さまざまなセキュリティ機能を備えています。
また、Linux、Windows、macOS など、マルチプラットフォームに対応しておりオンプレミスからクラウドまで幅広く導入する事ができます。
以下はOSSECの公開リポジトリとなります。
OSSEC is an Open Source Host-based Intrusion Detection System that performs log analysis, file integrity checking, policy monitoring, rootkit detection, real-time alerting and active response.
1.ソースを取得 #
初めにgithubよりOSSECのソース取得を行います。
今回はwgetコマンドを利用し取得を行います。また保存先は「/tmp
」とします。
パスなどはご利用環境に合わせてご変更お願いいたします。
以下、ソース取得を行うコマンドとなります。
$ wget https://github.com/ossec/ossec-hids/archive/refs/heads/master.zip
2.ソースの解凍 #
ダウンロードを実施すると「/tmp
」ディレクトリに「master.zip
」が保存されます。
zip形式で圧縮されている為、利用には解凍が必要となります。
以下のように「unzip
」コマンドを利用し解凍を行います。
unzip master.zip
解凍が完了すると、以下のような構成でカレントディレクトリ内にossec-hids-master
というディレクトリが展開されます。
ossec-hids-master/
├── BUGS - 既知の不具合一覧
├── CHANGELOG.md - バージョンごとの更新履歴
├── CONFIG - デフォルト設定のテンプレート
├── CONTRIBUTORS - 開発への貢献者一覧
├── Dockerfile - Docker用ビルド定義
├── INSTALL - インストール手順の英語マニュアル
├── LICENSE - ライセンス情報(GPLなど)
├── README.md - プロジェクトの概要説明
├── SECURITY.md - 脆弱性報告に関するポリシー
├── SUPPORT.md - サポートに関する案内
├── active-response/ - 攻撃検知後の自動応答スクリプト群
├── build.sh - ビルド用スクリプト
├── contrib/ - サンプル・追加ツール
├── debian_files/ - Debianパッケージ用構成ファイル
├── doc/ - ドキュメント類(HTMLや手引きなど)
├── etc/ - 設定ファイルのテンプレート一式
├── install.sh - OSSECのインストールスクリプト(対話式)
└── src/ - ソースコード本体(C言語)
このディレクトリに移動して、OSSECのインストール作業を進めていきます。
cd ossec-hids-master
3.インストール #
OSSECのインストールは、同梱されている「install.sh
」スクリプトを利用します。
このスクリプトは対話形式となっており初期設定を確認しながら進めることができます。
以下のコマンドでインストーラを実行します。
./install.sh
言語選択 #
「install.sh
」スクリプトを実行すると、以下の様に使用言語の選択画面が表示されます。
デフォルトでは「英語」が選択されています。
** Para instalação em português, escolha [br].
** 要使用中文进行安装, 请选择 [cn].
** Fur eine deutsche Installation wohlen Sie [de].
** Για εγκατάσταση στα Ελληνικά, επιλέξτε [el].
** For installation in English, choose [en].
** Para instalar en Español , eliga [es].
** Pour une installation en français, choisissez [fr]
** A Magyar nyelvű telepítéshez válassza [hu].
** Per l'installazione in Italiano, scegli [it].
** 日本語でインストールします.選択して下さい.[jp].
** Voor installatie in het Nederlands, kies [nl].
** Aby instalować w języku Polskim, wybierz [pl].
** Для инструкций по установке на русском ,введите [ru].
** Za instalaciju na srpskom, izaberi [sr].
** Türkçe kurulum için seçin [tr].
(en/br/cn/de/el/es/fr/hu/it/jp/nl/pl/ru/sr/tr) [en]: jp
日本語で実施する場合は「jp
」を入力後、 Enterを押してください。
インストールタイプの選択 #
OSSECでは以下の3種類からタイプを選択しインストールする事ができます。
種別 | 説明 |
---|---|
server |
エージェントからのログを受信・解析する管理用インストール |
agent |
監視対象ホストにインストールする軽量クライアント |
local |
単一ホスト内ですべての処理を行う自己完結型インストール |
今回は自己完結型「local」を選択します。
以下のようにタイプを入力し、Enterを押します。
1- どの種類のインストールを選択しますか (server,agent,local または help)? local
- Local インストールを選択しました.
インストール先の設定 #
次にインストール先のディレクトリを指定します。
デフォルトでは「/var/ossec
」となっております。
今回はデフォルトでのインストールを行います。
以下のように何も入力せずにEnterを押します。
2- インストール環境を設定しています.
- OSSEC HIDS のインストール先を選択してください [/var/ossec]:
- インストール先を以下に作成します /var/ossec .
OSSECの設定 #
次にOSSECの設定を行います。
設定項目は以下となっております。
設定項目 | 説明 |
---|---|
メール通知の設定 | アラート発生時にメールで通知を送信する機能 |
整合性検査の設定 | ファイルやディレクトリの改ざんを監視する syscheck デーモン機能 |
rootkit検知の設定 | 既知のルートキットのパターンを検出する rootcheck を実行する機能 |
アクティブレスポンス | 攻撃検知時に自動でIPブロックなどの対処を実行する機能 |
firewall-dropの設定 | 特定の条件を満たしたアラートに対して通信元IPを iptables で遮断する機能 |
ホワイトリストIPの設定 | 信頼できるIPアドレスを登録し、自動ブロックの対象外とする機能 |
ログファイルの監視設定 | 代表的なログ(/var/log/secureなど)を監視対象として初期設定に含める機能 |
ご利用用途に合わせてご設定お願いいたします。
OSSECのインストール #
前項目の設定が完了するとOSSECのインストールが始まります。
ここでは自動的にOSを判定しCコンパイラを利用してビルドと各ファイルの配置が行われます。
以下は出力の例となります。
5- システムをインストールします
- Makefile を実行します
- システムは Redhat Linux.
- 初期スクリプトはブート中に OSSEC HIDS を起動するよう修正しました.
- 設定が完全に終了しました.
- OSSEC HIDS を開始させます:
/var/ossec/bin/ossec-control start
- OSSEC HIDS を停止させます:
/var/ossec/bin/ossec-control stop
- 以下のファイルで設定についての確認と変更ができます /var/ossec/etc/ossec.conf
OSSEC HIDS の使用に感謝します.
あなたが何らかの質問,提案したいときや,バグを発見したときは,
contact@ossec.net まで連絡するか ossec-list@ossec.net にある
我々の公開メーリングリストを使ってください.
(http://www.ossec.net/main/support/).
詳細な情報は http://www.ossec.net にあります.
--- ENTER を押すと終了します (以下,詳細な情報が続きます).---
以上でインストール完了となります。
4.OSSECの基本操作コマンド #
OSSECの基本操作コマンドは以下の通りとなっております。
操作 | コマンド |
---|---|
起動 | /var/ossec/bin/ossec-control start |
停止 | /var/ossec/bin/ossec-control stop |
再起動 | /var/ossec/bin/ossec-control restart |
ステータス | /var/ossec/bin/ossec-control status |
以下はOSSECの起動手順となります。
/var/ossec/bin/ossec-control start
Starting OSSEC HIDS v3.8.0 (by Trend Micro Inc.)...
Started ossec-execd...
Started ossec-analysisd...
Started ossec-syscheckd...
Started ossec-logcollector...
Completed.
起動実行後にstatus
で各コンポーネントの稼働状況を確認する事ができます。
/var/ossec/bin/ossec-control status
ossec-control: OSSEC is running...
ossec-analysisd is running...
ossec-logcollector is running...
ossec-syscheckd is running...
ossec-execd is running...
5.設定ファイル #
OSSECの動作は、/var/ossec/etc/ossec.conf
にあるXML形式の設定ファイルによって制御されています。
このファイルでは、監視するログファイルの指定や、ファイル整合性チェック、アクティブレスポンスの動作、通知方法などが細かく設定されています。
これらの項目を修正する事でOSSECの動作を変更する事ができます。
修正を行う場合は事前にバックアップを取得する事をおすすめいたします。
cp -a /var/ossec/etc/ossec.conf /var/ossec/etc/ossec.conf.bak
また、設定変更後はOSSECの再起動が必要となります。
/var/ossec/bin/ossec-control restart
より詳細な設定項目については、公式ドキュメントをご確認お願いいたします。