Ubuntu 22.04にZeekネットワークセキュリティモニタリングツールをインストールする方法
Ubuntu 22.04にZeekネットワークセキュリティモニタリングツールをインストールする方法
このページで
- 前提条件
- 始めに
- Zeekリポジトリを追加する
- Zeekをインストールする
- Zeekサーバーを設定する
- テストZeekステータス
- 結論
Zeekは無料のオープンソースで、世界をリードするセキュリティ監視ツールであり、ネットワーク侵入検知システムおよびネットワークトラフィック解析ツールとして使用されます。セキュリティ専門家は、疑わしいシグネチャを検出し、DNS、HTTP、FTPのアクティビティを追跡するためにこれを使用します。Zeekは、ネットワークアクティビティを別のファイルにログとして記録することで動作します。このファイルには、MIMEタイプ、サーバーレスポンス、DNSリクエスト、HTTPセッション、リクエストされたURI、SSL証明書など、すべての重要な情報が含まれています。
このチュートリアルでは、Ubuntu 22.04にZeekネットワークセキュリティツールをインストールする方法を示します。
前提条件
- 最小2GBのRAMを搭載したUbuntu 22.04を実行しているサーバー。
- サーバーにはルートパスワードが設定されています。
始めに
まず、すべてのシステムパッケージを最新バージョンに更新する必要があります。以下のコマンドを実行することで、すべてを更新できます。
apt update -y
apt upgrade -yすべてのシステムパッケージを更新した後、次のコマンドを使用していくつかの必要なパッケージをインストールします。
apt install curl gnupg2 wget -yZeekリポジトリを追加する
デフォルトでは、ZeekパッケージはUbuntuのデフォルトリポジトリには含まれていません。そのため、APTにZeekリポジトリを追加する必要があります。
まず、以下のコマンドでZeekのGPGキーをダウンロードして追加します。
curl -fsSL https://download.opensuse.org/repositories/security:zeek/xUbuntu_22.04/Release.key | gpg --dearmor | tee /etc/apt/trusted.gpg.d/security_zeek.gpg次に、以下のコマンドでZeekリポジトリを追加します。
echo 'deb http://download.opensuse.org/repositories/security:/zeek/xUbuntu_22.04/ /' | tee /etc/apt/sources.list.d/security:zeek.list次に、以下のコマンドを使用してリポジトリキャッシュを更新します。
apt update -yZeekをインストールする
以下のコマンドを実行することで、Zeekツールをインストールできます。
apt install zeek -yインストール中に、以下のようにメールサーバーを選択するよう求められます:
ローカルのみを選択し、Enterキーを押してください。メールサーバーホスト名の提供を求められます。
ホスト名を入力し、インストールを完了するにはEnterキーを押してください。
次に、Zeekのインストールパスをシステム変数に追加する必要があります。以下のコマンドで追加できます。
echo "export PATH=$PATH:/opt/zeek/bin" >> ~/.bashrc
次に、以下のコマンドでシステム変数をアクティブにします。
source ~/.bashrc次のコマンドを使用して、Zeekのバージョンを確認できます:
zeek --version次の出力が得られます。
zeek version 5.1.1
Zeekサーバーを設定する
まず、Zeekネットワーク設定ファイルを編集し、ネットワークを定義します。
nano /opt/zeek/etc/networks.cfgここにデフォルトのネットワークがあります。ファイルの最後にさらにネットワークを追加できます。
10.0.0.0/8 Private IP space
172.16.0.0/12 Private IP space
192.168.0.0/16 Private IP space
ファイルを保存して閉じたら、Zeekのメイン構成ファイルを編集します。
nano /opt/zeek/etc/node.cfg以下の行についてコメントしてください:
#[zeek]
#type=standalone
#host=localhost
#interface=eth0
次に、ファイルの最後に以下の設定を追加してください。
[zeek-logger]
type=logger
host=your-server-ip
#
[zeek-manager]
type=manager
host=your-server-ip
#
[zeek-proxy]
type=proxy
host=your-server-ip
#
[zeek-worker]
type=worker
host=your-server-ip
interface=eth0
#
[zeek-worker-lo]
type=worker
host=localhost
interface=lo
ファイルを保存してから、次のコマンドを使用してZeekの設定を確認します。
zeekctl check次の出力が得られます。
Hint: Run the zeekctl "deploy" command to get started.
zeek-logger scripts are ok.
zeek-manager scripts are ok.
zeek-proxy scripts are ok.
zeek-worker scripts are ok.
zeek-worker-lo scripts are ok.
次のコマンドを使用してZeekをデプロイできます。
zeekctl deploy次の出力が得られます。
checking configurations ...
installing ...
creating policy directories ...
installing site policies ...
generating cluster-layout.zeek ...
generating local-networks.zeek ...
generating zeekctl-config.zeek ...
generating zeekctl-config.sh ...
stopping ...
stopping workers ...
stopping proxy ...
stopping manager ...
stopping logger ...
starting ...
starting logger ...
starting manager ...
starting proxy ...
starting workers ...
Zeekのステータスをテストする
この時点で、Zeekはインストールおよび設定されています。次のコマンドでZeekのステータスを確認できます。
zeekctl status次の出力が得られます。
Name Type Host Status Pid Started
zeek-logger logger 209.23.10.179 running 58935 19 Jan 05:37:02
zeek-manager manager 209.23.10.179 running 58985 19 Jan 05:37:03
zeek-proxy proxy 209.23.10.179 running 59035 19 Jan 05:37:05
zeek-worker worker 209.23.10.179 running 59107 19 Jan 05:37:06
zeek-worker-lo worker localhost running 59104 19 Jan 05:37:06
Zeekは、/opt/zeek/logs/current/ディレクトリにログを保存します。以下のコマンドを使用して、すべてのログファイルを確認できます。
ls -l /opt/zeek/logs/current/次の出力が表示されます。
total 72
-rw-r--r-- 1 root zeek 1735 Jan 19 05:37 broker.log
-rw-r--r-- 1 root zeek 2166 Jan 19 05:37 cluster.log
-rw-r--r-- 1 root zeek 187 Jan 19 05:37 packet_filter.log
-rw-r--r-- 1 root zeek 6158 Jan 19 05:37 conn.log
-rw-r--r-- 1 root zeek 31212 Jan 19 05:37 loaded_scripts.log
-rw-r--r-- 1 root zeek 666 Jan 19 05:37 reporter.log
-rw-r--r-- 1 root zeek 601 Jan 19 05:37 stats.log
-rw-r--r-- 1 root zeek 0 Jan 19 05:37 stderr.log
-rw-r--r-- 1 root zeek 204 Jan 19 05:37 stdout.log
-rw-r--r-- 1 root zeek 266 Jan 19 05:37 telemetry.log
-rw-r--r-- 1 root zeek 960 Jan 19 05:37 weird.log
Zeek クラスターログを確認するには、以下のコマンドを実行してください。
tail /opt/zeek/logs/current/cluster.log次の出力が得られます。
1674106627.672399 zeek-proxy got hello from zeek-worker-lo (62498247-62ce-5763-b201-a0f0e52b71f9)
1674106627.744144 zeek-proxy got hello from zeek-worker (0c8c7207-f1a1-540d-aee0-2b55cf76e69f)
1674106627.674594 zeek-manager got hello from zeek-worker-lo (62498247-62ce-5763-b201-a0f0e52b71f9)
1674106627.752439 zeek-manager got hello from zeek-worker (0c8c7207-f1a1-540d-aee0-2b55cf76e69f)
1674106627.672635 zeek-worker-lo got hello from zeek-proxy (b0734910-55c0-5aa5-b5fb-abdf7c083d3e)
1674106627.674358 zeek-worker-lo got hello from zeek-manager (b4a3890a-a470-5a1d-b2c7-fc48fd683ff9)
1674106627.666564 zeek-worker-lo got hello from zeek-logger (405e0618-3699-5b85-ac39-0af2743c0aab)
1674106627.708986 zeek-worker got hello from zeek-manager (b4a3890a-a470-5a1d-b2c7-fc48fd683ff9)
1674106627.699878 zeek-worker got hello from zeek-proxy (b0734910-55c0-5aa5-b5fb-abdf7c083d3e)
1674106627.706099 zeek-worker got hello from zeek-logger (405e0618-3699-5b85-ac39-0af2743c0aab)
Zeek接続ログを確認するには、以下のコマンドを実行してください。
tail /opt/zeek/logs/current/conn.log次の出力が得られます。
1674106667.717311 Camkki2oVKl4J9dgpd 209.23.10.179 47762 209.23.10.179 56180 tcp - - - - OTH FF 0 CccC 0 0 0 0 -
1674106667.742276 CZ7aKU3nUfkjSSN5x6 209.23.10.179 56182 209.23.10.179 47762 tcp - - - - OTH FF 0 CcCc 0 0 0 0 -
1674106667.742332 Cd58V813jeHygHXQS2 209.23.10.179 56176 209.23.10.179 47762 tcp - - - - OTH FF 0 CcCc 0 0 0 0 -
1674106668.621860 CZlcm316EidXbp4aMj 209.23.10.179 41430 209.23.10.179 47761 tcp - - - - OTH FF 0 Cc 0 0 0 0 -
結論
おめでとうございます!あなたはUbuntu 22.04サーバーにZeekセキュリティ監視ツールを正常にインストールしました。この投稿がネットワークのアーキテクチャを理解し、悪意のある活動を調査する助けになることを願っています。質問があれば気軽にどうぞ。

