如何在 Linux 上安裝和設置 Snort IDS

如何在 Linux 上安裝和設置 Snort IDS

入侵檢測系統 (IDS) 對於保護計算機網絡免受未經授權的訪問和網絡安全領域的潛在危險至關重要。Snort IDS 在眾多可用的 IDS 選擇中脫穎而出,作為一種用於檢測和防止網絡入侵的強大且廣泛使用的開源解決方案。本教程向您展示如何在 Linux 上安裝和設置 Snort IDS,為您提供提高網絡安全性所需的知識。

Snort IDS 的工作原理

Snort IDS 是一種網絡入侵檢測系統,可監控網絡流量、分析可疑活動並針對潛在威脅生成警告。作為一種基於簽名的入侵檢測系統,Snort 使用已知攻擊模式(通常稱為規則)的數據庫來分析網絡流量,以檢測惡意活動。Snort IDS 可檢測並防止範圍廣泛的網絡攻擊,包括端口掃描、DoS 攻擊和 SQL 注入,這些攻擊以其實時流量分析功能而廣為人知。

基本配置

在我們繼續安裝 Snort IDS 之前,需要進行一些基本配置。它主要涉及更新和升級您的系統以及安裝 Snort 有效運行所需的依賴項。

  • 更新升級Linux系統。對於 Ubuntu 和其他基於 Debian 的系統:

sudo apt update && apt upgrade -y

  • 安裝運行 Snort IDS 所需的依賴項:

sudo apt install -y build-essential autotools-dev libdumbnet-dev libluajit-5.1-dev libpcap-dev zlib1g-dev pkg-config libhwloc-dev cmake liblzma-dev openssl libssl-dev cpputest libsqlite3-dev libtool uuid-dev git autoconf bison flex libcmocka-dev libnetfilter-queue-dev libunwind-dev libmnl-dev ethtool libjemalloc-dev libpcre++-dev

  • Snort 的正常運行需要手動安裝數據採集庫 LibDAQ。要安裝 LibDAQ,請從其官方網站下載文件,解壓縮存檔並導航到相應的目錄,然後構建和編譯它。

wget https://www.snort.org/downloads/snortplus/libdaq-3.0.11.tar.gz
tar -xzvf libdaq-3.0.11
cd libdaq-3.0.11
./bootstrap
./configure
makesudo make install

  • 最後一個依賴項是 gperftools。首先從GitHub 存儲庫獲取源文件。提取文件,導航到所選目錄,然後執行配置腳本以啟動設置過程。隨後,執行makemake install命令來安裝包。

wget https://github.com/gperftools/gperftools/releases/download/gperftools-2.10/gperftools-2.10.tar.gz
tar -xvzf gperftools-2.10 && cd gperftools-2.10
./configure
make
sudo make install

接下來,您需要安裝 Snort。

您知道嗎:Snort IDS 被列為保護 Linux 服務器的最佳開源工具之一

安裝 Snort IDS

安裝

wget https://www.snort.org/downloads/snortplus/snort3-3.1.58.0.tar.gz

  • 開始提取文件。

tar -xzvf snort3-3.1.58.0

  • 轉到解壓目錄並執行配置腳本,使用命令準備文件make,然後使用make install命令安裝它們。

cd snort3-3.1.58.0
./configure_cmake.sh --prefix=/usr/local --enable-tcmalloccd build
makesudo make install

  • Snort 已準備好在您的系統上運行。在配置 Snort IDS 之前,更新共享庫。否則,當您嘗試啟動 Snort 時,您可能會遇到錯誤:

sudo ldconfig

此過程會將系統的共享庫緩存與最近安裝的庫和二進製文件同步。

要驗證 Snort,該命令snort -V將在終端窗口中顯示 Snort IDS 版本:

噴鼻息-V

僅供參考:除了使用 IDS 之外,您還可以設置一個 SSH 蜜罐來捕獲服務器中的黑客

使用 Snort IDS 配置和設置規則

要配置Linux系統的網絡環境與Snort IDS通信,找出你係統的網卡名稱:

nmcli device status

使用以下命令設置網絡接口卡:

sudo ip link set dev interface_name promisc on

請注意,命令中的“interface_name”是系統以太網卡的名稱。

為避免截斷較大的網絡數據包,請使用 ethtool 禁用通用接收卸載 (GRO) 和大型接收卸載 (LRO):

sudo ethtool -K interface_name gro off lro off

通過運行以下命令測試基本配置的性能:

snort -c /usr/local/etc/snort/snort.lua

它應該會提供一個成功的輸出,表明 Snort 已在您的系統上安裝和配置。現在您可以試驗其功能和配置以確定保護網絡的最佳規則。

測試

實現Snort IDS規則在Linux系統上運行

Snort 從特定目錄讀取規則集和配置:

sudo mkdir /usr/local/etc/rules
sudo mkdir /usr/local/etc/so_rules/sudo mkdir /usr/local/etc/lists/sudo touch /usr/local/etc/rules/local.rules
sudo touch /usr/local/etc/lists/default.blocklist
sudo mkdir /var/log/snort

創建所需目錄後,從 Snort 網站下載所需規則:

wget https://www.snort.org/downloads/community/snort3-community-rules.tar.gz

提取文件並將規則復製到“/usr/local/etc/rules/”目錄:

tar -xvzf snort3-community-rules
cd snort3-community-rules
cp * /usr/local/etc/rules/

要使用規則配置執行 Snort,請輸入以下命令:

sudo snort -c /usr/local/etc/snort/snort.lua -R /usr/local/etc/rules/snort3-community.rules -i wl01 -s 65535 -k none

Snort 規則設置

在啟動時設置 Snort IDS

必須確保 Snort 在啟動期間啟動執行並作為後台守護進程運行。通過將 Snort 配置為自動啟動的系統服務,該軟件將在任何時候在線運行並保護您的系統。

  • 通過執行以下命令創建一個新的 systemd 服務文件。

touch /lib/systemd/system/snort.service

  • 在終端窗口中打開文件nano並添加以下信息。

[Unit]Description=Snort Daemon
After=syslog.target network.target
[Service]Type=simple
ExecStart=/usr/local/bin/snort -c /usr/local/etc/snort/snort.lua -R /usr/local/etc/rules/snort3-community.rules -s 65535 -k none -l /var/log/snort -D -L pcap -i ens33
[Install]WantedBy=multi-user.target

Snort 守護進程配置
  • 保存並退出文件。啟用並啟動腳本:

sudo systemctl enable snort.service
sudo snort start

活躍的 Snort 服務

Snort IDS 已準備好啟動並保護您的 Linux 系統。要在 Linux 上找到更多此類開源安全工具,請點擊鏈接。

使用 Snort 監控網絡流量

我們已經了解了 Snort 及其運行方式。現在讓我們檢查一些有關如何使用 Snort 監控網絡流量並查找可能的安全風險的基礎知識。

  • 要開始使用 Snort 並監控網絡流量,首先選擇網絡接口。按照下面提到的命令找出系統中存在的網絡接口的名稱。

ifconfig -a

  • 使用以下命令啟動 Snort。它將在終端窗口中打開一個控制台,該控制台將主動監視網絡接口並在發現任何潛在威脅時不斷更新。

sudo snort -i [Network_Interface] -c /etc/snort/snort.conf -A console

這裡的命令中,網絡接口是你選擇監控的以太網端口,“etc/snort/snort.conf”是Snort配置文件的位置,是顯示Snort IDS產生的警報的-A控制台。

這就是 Snort 用於監視安全威脅和易受攻擊的攻擊的方式。定期更新規則。正在處理更新規則的 Snort IDS 不僅會檢測安全威脅,而且有助於消除它們。

決策者:無法決定為您的服務器使用哪個 Linux 發行版?我們有答案

經常問的問題

如何獲取和更新 Snort 規則?

Snort 規則對於 IDS 的高效運行至關重要,因為它們定義了檢測特定網絡入侵的標準。您可以從 Snort 官方網站獲取 Snort 規則。規則檔案分為三種不同類型:社區,可免費訪問;已註冊,在您註冊 Snort 後即可訪問;訂閱,為此您必須訂閱付費的 Snort 計劃,詳見其官方網站。

是否可以在龐大的網絡中實施 Snort?

是的,它可以分佈以提高跨多個系統的網絡安全,利用集中管理系統,如 Security Onion 或 Snorby。

Snort IDS 適用於小型企業或家庭網絡嗎?

Snort IDS 是一種有效的安全解決方案,可以使小型企業和家庭網絡受益。該系統的可訪問性和成本效益歸因於其開源性質。Snort 入侵檢測系統 (IDS) 可以在單個系統或多個系統上實施。

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *