Suricataは、OpenSecurityFoundationによって開発された無料のオープンソースの堅牢なネットワーク脅威検出エンジンです。リアルタイムの侵入検知、侵入防止、およびネットワークセキュリティ監視が可能です。 Suricataには、ネットワークトラフィックを検査し、複雑な脅威を検出する強力なルールセットが付属しています。 Linux、Windows、FreeBSD、macOSを含むすべての主要なオペレーティングシステムをサポートし、IPv4、IPv6、SCTP、ICMPv4、ICMPv6、GREもサポートします。
このチュートリアルでは、Ubuntu20.04にSuricataIDSをインストールして構成する方法を示します。
前提条件
- Atlantic.netクラウドプラットフォーム上の新しいUbuntu20.04VPS
- サーバーにルートパスワードが設定されています
ステップ1-Atlantic.Netクラウドサーバーを作成する
まず、Atlantic.Netクラウドサーバーにログインします。オペレーティングシステムとしてUbuntu20.04を選択し、少なくとも2GBのRAMを搭載した新しいサーバーを作成します。 SSH経由でクラウドサーバーに接続し、ページの上部で強調表示されているクレデンシャルを使用してログインします。
Ubuntu 20.04サーバーにログインしたら、次のコマンドを実行して、ベースシステムを最新の利用可能なパッケージで更新します。
apt-get update -y
ステップ2–必要な依存関係をインストールする
まず、ソースからSuricataをコンパイルするために必要ないくつかの依存関係をインストールする必要があります。次のコマンドですべてをインストールできます:
apt-get install rustc cargo make libpcre3 libpcre3-dbg libpcre3-dev build-essential autoconf automake libtool libpcap-dev libnet1-dev libyaml-0-2 libyaml-dev zlib1g zlib1g-dev libcap-ng-dev libcap-ng0 make libmagic-dev libjansson-dev libjansson4 pkg-config -y
apt-get install libnetfilter-queue-dev libnetfilter-queue1 libnfnetlink-dev libnfnetlink0 -y
すべてのパッケージをインストールしたら、suricata-updateツールをインストールしてSuricataルールを更新する必要があります。次のコマンドでインストールできます:
apt-get install python3-pip pip3 install --upgrade suricata-update ln -s /usr/local/bin/suricata-update /usr/bin/suricata-update
終了したら、次のステップに進むことができます。
ステップ3–Suricataをインストールする
まず、次のコマンドを使用して、公式Webサイトから最新バージョンのSuricataをダウンロードします。
wget https://www.openinfosecfoundation.org/download/suricata-5.0.3.tar.gz
ダウンロードが完了したら、次のコマンドを使用してダウンロードしたファイルを抽出します。
tar -xvzf suricata-5.0.3.tar.gz
次に、ディレクトリを抽出したディレクトリに変更し、次のコマンドで構成します。
cd suricata-5.0.3 ./configure --enable-nfqueue --prefix=/usr --sysconfdir=/etc --localstatedir=/var
次に、次のコマンドを使用してSuricataをインストールします。
make make install-full
注 :このプロセスには10分以上かかります
次に、次のコマンドを使用してすべてのルールをインストールします。
make install-rules
次のコマンドで表示できます:
cat /var/lib/suricata/rules/suricata.rules
ステップ4–Suricataを構成する
デフォルトのSuricata構成ファイルは/etc/suricata/suricata.yamlにあります。内部ネットワークを保護するように構成する必要があります。ファイルを編集することでそれを行うことができます:
nano /etc/suricata/suricata.yaml
次の行を変更します:
HOME_NET: "[192.168.1.0/24]" EXTERNAL_NET: "!$HOME_NET"
終了したら、ファイルを保存して閉じます。
注: 上記のコマンドで、 192.168.1.0/24を置き換えます 内部ネットワークを使用します。
ステップ5–DDoSに対してSuricataをテストする
開始する前に、Suricataがリッスンしているネットワークインターフェイスでパケットオフロード機能を無効にする必要があります。
まず、次のコマンドを使用してethtoolパッケージをインストールします。
apt-get install ethtool -y
次に、次のコマンドを使用してパケットオフロードを無効にします。
ethtool -K eth0 gro off lro off
次に、次のコマンドを使用して、NFQモードでSuricataを実行します。
suricata -c /etc/suricata/suricata.yaml -q 0 &
次に、リモートシステムに移動し、以下に示すように、hping3ツールを使用してSuricataサーバーに対して簡単なDDoS攻撃テストを実行します。
hping3 -S -p 80 --flood --rand-source your-server-ip
Suricataサーバーで、次のコマンドを使用してSuricataログを確認します。
tail -f /var/log/suricata/fast.log
次の出力が表示されます。
09/17/2020-07:29:52.934009 [**] [1:2402000:5670] ET DROP Dshield Block Listed Source group 1 [**] [Classification: Misc Attack] [Priority: 2] {TCP} 167.248.133.70:18656 -> your-server-ip:9407
結論
おめでとう!これで、Ubuntu20.04サーバーにSuricataIDSとIPSが正常にインストールおよび構成されました。これで、Suricataを探索し、サーバーをDDoS攻撃から保護するための独自のルールを作成できます。 Atlantic.NetのVPSホスティングでSuricataを使い始めましょう。詳細については、Suricataのドキュメントページをご覧ください。