Snort3(ユーザー登録/Oinkcode の取得)

概要

Snort3 の CentOS8 へのインストールと設定。及び、SnortSnarf によるログの解析。

ユーザー登録/Oinkcode の取得

・ユーザー登録
    https://www.snort.org/users/sign_up にて、ユーザー登録。
・Oinkcode の取得
    https://www.snort.org/users/sign_in からログイン後、https://www.snort.org/
   ページ内 Step2 「Sign up/Subscribe」をクリックして画面遷移後、
   左上「Oinkcode」をクリック。後で使用するので、書き留めておく。

ユーザー/グループ作成

    [root]# groupadd snort
    [root]# useradd -d /dev/null -s /sbin/nologin -g snort snort

ログ出力ディレクトリ作成

    [root]# mkdir /var/log/snort
    [root]# chown snort:snort /var/log/snort

      /var/log/messages                snort の起動/停止など
      /var/log/snort/alert_fast.txt    snort が検知したログ
      /var/log/snort/file.log

ログローテーション

    [root]# vim /etc/logrotate.d/snort

      /var/log/snort/alert_fast.txt /var/log/snort/*log {
          weekly               # 毎週ローテート
          rotate 4             # ログを4世代残す
          create 0600 snort snort  # ローテーション後、新規ログファイル作成
          dateext              # ローテーション後のファイル末尾に、日付を付ける
          missingok            # ログファイルが無くてもエラーにしない
          compress             # ローテーション後のファイルを圧縮(.gz)
          notifempty           # ログファイルが空ならローテーションしない
          sharedscripts        # 以下に記述された処理を1度だけ実行する宣言
          postrotate           # postrotate ~ endscript に処理を記述
              /usr/bin/systemctl restart snortd 1>/dev/null || true
          endscript
      }
・テスト
    [root]# logrotate -f /etc/logrotate.d/snort     # -f : 強制実行

      alert_fast.txt-20210328.gz
      file.log-20210328.gz

    [root]# cat /var/lib/logrotate/logrotate.status

      "/var/log/snort/alert_fast.txt" 2021-3-28-14:26:28
      "/var/log/snort/file.log" 2021-3-28-14:26:28