Ubuntu server 24 安裝配置 snort3 3.2.1.0 網絡入侵檢測防御系統 配置注冊規則集

一 下載并安裝源代碼

地址:https://github.com/snort3/snort3/releases

#下載,解壓
wget https://github.com/snort3/snort3/archive/refs/tags/3.2.1.0.tar.gz
tar  zxvf  3.2.1.0.tar.gz

二? 安裝軟件依賴包

1 安裝依賴包

sudo apt update
sudo apt  install  build-essential libpcap-dev libpcre3-dev libnet1-dev zlib1g-dev luajit hwloc  libdumbnet-dev bison flex liblzma-dev openssl libssl-dev pkg-config libhwloc-dev cmake cpputest libsqlite3-dev uuid-dev libcmocka-dev libnetfilter-queue-dev libmnl-dev autotools-dev libluajit-5.1-dev libunwind-dev autoconf automake libtool libffi-dev check
hyperscan.dev libsafec.dev

2 安裝 libdnet

#下載
wget https://github.com/ofalk/libdnet/archive/refs/tags/libdnet-1.18.0.tar.gz
tar zxvf libdnet-1.18.0.tar.gz
cd libdnet-libdnet-1.18.0/
./configure
make
sudo make install

3 安裝libdaq

#下載,解壓
wget https://github.com/snort3/libdaq/archive/refs/tags/v3.0.14.tar.gz
tar  zxvf  v3.0.14.tar.gz
cd  libdaq-3.0.14/
#編譯,安裝./bootstrap 
+ autoreconf -ivf --warnings=all
autoreconf: export WARNINGS=all
autoreconf: Entering directory '.'
autoreconf: configure.ac: not using Gettext
autoreconf: running: aclocal --force -I m4
autoreconf: configure.ac: tracing
autoreconf: configure.ac: not using Libtool
autoreconf: configure.ac: not using Intltool
autoreconf: configure.ac: not using Gtkdoc
autoreconf: running: /usr/bin/autoconf --force
configure.ac:27: warning: The macro `AC_PROG_CC_C99' is obsolete.
configure.ac:27: You should run autoupdate.
./lib/autoconf/c.m4:1659: AC_PROG_CC_C99 is expanded from...
configure.ac:27: the top level
autoreconf: running: /usr/bin/autoheader --force
autoreconf: running: automake --add-missing --copy --force-missing
api/Makefile.am:4: error: Libtool library used but 'LIBTOOL' is undefined
api/Makefile.am:4:   The usual way to define 'LIBTOOL' is to add 'LT_INIT'
api/Makefile.am:4:   to 'configure.ac' and run 'aclocal' and 'autoconf' again.
api/Makefile.am:4:   If 'LT_INIT' is in 'configure.ac', make sure
api/Makefile.am:4:   its definition is in aclocal's search path.
modules/Makefile.am:4: error: Libtool library used but 'LIBTOOL' is undefined
modules/Makefile.am:4:   The usual way to define 'LIBTOOL' is to add 'LT_INIT'
modules/Makefile.am:4:   to 'configure.ac' and run 'aclocal' and 'autoconf' again.
modules/Makefile.am:4:   If 'LT_INIT' is in 'configure.ac', make sure
modules/Makefile.am:4:   its definition is in aclocal's search path.
autoreconf: error: automake failed with exit status: 1
#解決,安裝libtool
./configure
#編譯成功如下code_coverage_enabled:  nocode_coverage_cppflags: code_coverage_cflags:   code_coverage_ldflags:  Build AFPacket DAQ module.. : yesBuild BPF DAQ module....... : yesBuild Divert DAQ module.... : noBuild Dump DAQ module...... : yesBuild FST DAQ module....... : yesBuild netmap DAQ module.... : noBuild NFQ DAQ module....... : yesBuild PCAP DAQ module...... : yesBuild Savefile DAQ module.. : yesBuild Trace DAQ module..... : yesBuild GWLB DAQ module...... : yes
#編譯,安裝
make
sudo make install

4?安裝gperftools

wget  https://github.com/gperftools/gperftools/releases/download/gperftools-2.15/gperftools-2.15.tar.gz
tar zxvf gperftools-2.15.tar.gz
cd gperftools-2.15/
./configure
sudo make install

三 安裝snort 3.2.1.0

1 編譯安裝

cd  snort3-3.2.1.0/
./configure_cmake.sh --prefix=/usr/local/snort --enable-tcmalloc
#如下即可
snort version 3.2.1.0Install options:prefix:     /usr/local/snortincludes:   /usr/local/snort/include/snortplugins:    /usr/local/snort/lib/snortCompiler options:CC:             /usr/bin/ccCXX:            /usr/bin/c++CFLAGS:            -fvisibility=hidden   -DNDEBUG -g -ggdb  -fno-builtin-malloc -fno-builtin-calloc -fno-builtin-realloc -fno-builtin-free  -O2 -g -DNDEBUGCXXFLAGS:          -fvisibility=hidden   -DNDEBUG -g -ggdb  -fno-builtin-malloc -fno-builtin-calloc -fno-builtin-realloc -fno-builtin-free  -O2 -g -DNDEBUGEXE_LDFLAGS:        MODULE_LDFLAGS:     Feature options:DAQ Modules:    Static (afpacket;bpf;dump;fst;gwlb;nfq;pcap;savefile;trace)libatomic:      System-providedHyperscan:      ONICONV:          ONLibunwind:      ONLZMA:           ONRPC DB:         Built-inSafeC:          ONTCMalloc:       ONJEMalloc:       OFFUUID:           ONNUMA:           ONLibML:          OFFcd build/
make
sudo make install
#跟新系統共享庫
sudo ldconfig

2 配置環境

sudo vim /etc/profile
export PATH=/usr/local/snort//bin:$PATH
source  /etc/profile

3? 查看snort版本

test@ubuntuserver:~$ snort -v
--------------------------------------------------
o")~   Snort++ 3.2.1.0
--------------------------------------------------
--------------------------------------------------
Network Policy : policy id 0 : 
--------------------------------------------------
Inspection Policy : policy id 0 : 
--------------------------------------------------
pcap DAQ configured to passive.
--------------------------------------------------
host_cachememcap: 33554432 bytesSnort successfully validated the configuration (with 0 warnings).
o")~   Snort exiting
test@ubuntuserver:~$ snort -V,,_     -*> Snort++ <*-o"  )~   Version 3.2.1.0''''    By Martin Roesch & The Snort Teamhttp://snort.org/contact#teamCopyright (C) 2014-2024 Cisco and/or its affiliates. All rights reserved.Copyright (C) 1998-2013 Sourcefire, Inc., et al.Using DAQ version 3.0.14Using Hyperscan version 5.4.2 2024-04-19Using libpcap version 1.10.4 (with TPACKET_V3)Using LuaJIT version 2.1.1703358377Using LZMA version 5.4.5Using OpenSSL 3.0.13 30 Jan 2024Using PCRE version 8.39 2016-06-14Using ZLIB version 1.3

?四 配置 監聽網絡流量的網卡設置為混雜模式

test@ubuntuserver:~$ ip a show ens33
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000link/ether 00:0c:29:a2:94:12 brd ff:ff:ff:ff:ff:ffaltname enp2s1
#
sudo ifconfig ens33 promisc

?

#禁用網卡?Offload功能,?Snort?會截斷大于1518?字節的數據包

#查看
test@ubuntuserver:~$ ethtool -k ens33 | grep receive-off
generic-receive-offload: on
large-receive-offload: off [fixed]
#禁用
test@ubuntuserver:~$ sudo ethtool -K ens33 gro off lro off

五 下載,配置snort3規則

規則集分為三種:Community Rules,Registered Rules,Subscriber Rules;其中社區規則可以直接下載使用,注冊規則需要注冊之后才可以下載,但2個都免費的;訂閱規則收費的。

1 下載地址:Snort Rules and IDS Software Download

2 本文下載注冊規則集

#創建規則存放目錄
sudo mkdir /usr/local/snort/etc/rules
cd /usr/local/snort/etc/rules

3? 安裝pulledpork

#安裝依賴包
sudo apt update
sudo  apt-get  install libcrypt-ssleay-perl liblwp-useragent-determined-perl
#下載
wget https://github.com/shirkdog/pulledpork/archive/refs/tags/v0.7.4.tar.gz
#
tar  zxvf  v0.7.4.tar.gz 
cd  pulledpork-0.7.4/
#
sudo cp pulledpork.pl /usr/local/bin
sudo chmod +x /usr/local/bin/pulledpork.pl
sudo mkdir /usr/local/snort/etc/pulledpork
sudo cp etc/*.conf /usr/local/snort/etc/pulledpork
#查看
test@ubuntuserver:~$ pulledpork.pl -V
PulledPork v0.7.4 - Helping you protect your bitcoin wallet!
#創建規則用的文件和目錄
sudo touch  /usr/local/snort/etc/rules/snort.rules
sudo touch  /usr/local/snort/etc/rules/local.rules
sudo mkdir  /usr/local/snort/etc/rules/so_rules
sudo mkdir  /usr/local/snort/etc/rules/lists
sudo touch  /usr/local/snort/etc/rules/lists/default.blocklist
sudo  mkdir /var/log/snort/
#修改配置pulledpor
sudo vim /usr/local/snort/etc/pulledpork/pulledpork.conf
rule_url=https://www.snort.org/reg-rules/|snortrules-snapshot-3031.tar.gz|<oinkcode>
rule_url=https://snort.org/downloads/ip-block-list|IPBLOCKLIST|open
ignore=deleted.rules,experimental.rules,local.rules
temp_path=/tmp
rule_path=/usr/local/snort/etc/rules/snort.rules
local_rules=/usr/local/snort/etc/rules/local.rules
sid_msg=/usr/local/snort/etc/sid-msg.map
sid_msg_version=2
sid_changelog=/var/log/snort/sid_changes.log
sorule_path=/usr/local/snort/etc/rules/so_rules/
snort_path=/usr/local/snort/bin/snort
config_path=/usr/local/snort/etc/snort.conf
distro=Ubuntu-18-4
block_list=/usr/local/snort/etc/rules/lists/default.blocklist
IPRVersion=/usr/local/snort/etc/rules/lists
snort_control=/usr/local/bin/snort_control
pid_path=/var/log/snort/snort.pid
ips_policy=security
version=0.7.4
#運行下載合并
sudo /usr/local/bin/pulledpork.pl -c /usr/local/snort/etc/pulledpork/pulledpork.conf  -l -P -E -H SIGHUP
#如下
Rule Stats...New:-------19352Deleted:---0Enabled Rules:----19352Dropped Rules:----0Disabled Rules:---0Total Rules:------19352
IP Blocklist Stats...Total IPs:-----1558Done
Please review /var/log/snort/sid_changes.log for additional details
Fly Piggy Fly!

4 修改snort配置文件

sudo  vim  /usr/local/snort/etc/snort/snort.lua
HOME_NET = 'any' --> HOME_NET = '192.168.50.19/24'
EXTERNAL_NET = 'any' --> EXTERNAL_NET = '!$HOME_NET'
#新增
include = '/usr/local/snort/etc/rules/snort.rules',
include = '/usr/local/snort/etc/rules/local.rules',

5 snort檢驗規則,19500+條

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

六 運行,測試

1 自定義一條ping測試的規則

#增加本地規則庫
sudo  vim /usr/local/snort/etc/rules/local.rules
alert icmp any any -> $HOME_NET any (msg:"ICMP connection test"; sid:1000001; rev:1;)
#測試規則正確
snort -c /usr/local/snort/etc/snort/snort.lua  -R /usr/local/snort/etc/rules/local.rules

2 啟動snort?

#配置日志
sudo  vim /usr/local/snort/etc/snort/snort.lua
alert_fast ={file = true,limit = 200#日志滾動大小(200M)}
#檢查
snort -c /usr/local/snort/etc/snort/snort.lua
sudo snort -c /usr/local/snort/etc/snort/snort.lua -i ens33 -s 65535 -k none -A fast -l /var/log/snort/ -v

3 測試

#在其他主機ping snort服務器
ping  192.168.50.19

?#snort 服務器查看日志

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/19596.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/19596.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/19596.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Bytebase 2.18.0 - 支持創建用戶組

&#x1f680; 新功能 支持創建用戶組。支持 BigQuery。支持 SQL Server 庫表同步。支持 MongoDB 集群并支持直接連接到集群中的節點。支持 SQL Server 和 Oracle 顯示工單任務執行日志&#xff0c;如影響行數或錯誤。添加 SQL 審核規則: 禁止在 SQL Server 中進行跨庫查詢。禁…

代碼隨想錄算法訓練營第四十四天 | 01背包問題 二維、 01背包問題 一維、416. 分割等和子集

01背包問題 二維 代碼隨想錄 視頻講解&#xff1a;帶你學透0-1背包問題&#xff01;| 關于背包問題&#xff0c;你不清楚的地方&#xff0c;這里都講了&#xff01;| 動態規劃經典問題 | 數據結構與算法_嗶哩嗶哩_bilibili 1.dp數組定義 dp[i][j] 下標為[0,i]之間的物品&…

【C#】類和對象的區別

1.區別概述 結構體和類的最大區別是在存儲空間上&#xff0c;前者是值類型&#xff0c;后者是引用類型&#xff0c;它們在賦值上有很大的區別&#xff0c;在類中指向同一塊空間的兩個類的值會隨一個類的改變而改變另一個&#xff0c;請看如下代碼所示&#xff1a; namespace …

【漯河市人才交流中心_登錄安全分析報告-Ajax泄漏滑動距離導致安全隱患】

前言 由于網站注冊入口容易被黑客攻擊&#xff0c;存在如下安全問題&#xff1a; 暴力破解密碼&#xff0c;造成用戶信息泄露短信盜刷的安全問題&#xff0c;影響業務及導致用戶投訴帶來經濟損失&#xff0c;尤其是后付費客戶&#xff0c;風險巨大&#xff0c;造成虧損無底洞…

JavaSE:異常

1、什么是異常 在生活當中&#xff0c;不管是人還是動物又或是植物&#xff0c;都會生病&#xff1b;在程序中也是&#xff0c;作為程序猿&#xff0c;雖然我們會盡力將程序寫的完美&#xff0c;可難免會出現一些問題~ 在程序執行過程中&#xff0c;發生的一些不正常行為&…

Windows系統安裝openvino(2024.1.0)

一、openvino下載&#xff1a; 下載地址&#xff1a;下載英特爾發行版 OpenVINO 工具套件 (intel.cn) 下載完之后將壓縮包解壓&#xff0c;然后重命名文件夾為openvino_2024.1.0。 二、環境配置 以python環境為例&#xff1a;&#xff08;建議使用moniconda虛擬環境來安裝&am…

Android 圖表開發開源庫 MPAndroidChart 使用總結

1. 引言 電視項目中需要一個折線圖表示節電數據變化情況&#xff0c;類比 H5 來說&#xff0c;Android 中也應該有比較成熟的控件&#xff0c;經過調研后&#xff0c;發現 MPAndroidChart 功能比較強大&#xff0c;網上也有人說可能是目前 Android 開發最好用的一個三方庫了&a…

【力扣】LCR 130. 衣櫥整理

一、題目描述 二、算法思路 這是?道非常典型的「搜索」類問題。 我們可以通過「深搜」或者「寬搜」&#xff0c;從 [0, 0] 點出發&#xff0c;按照題目的要求&#xff08;選擇 向右移動一格 或 向下移動一格&#xff0c;但不能移動到衣柜之外 &#xff09;一直往 [m - 1, …

詳解Spring IoCDI(二)

目錄 承接上文&#xff1a;詳解Spring IoC&DI &#xff08;一&#xff09; 1.IoC詳解 1.1方法注解Bean 1.2方法注解要配合類注解使用 1.3定義多個對象 1.4重命名Bean 1.5掃描路徑 2.DI詳解 2.1DI與IoC的關系 2.2屬性注入 2.3構造方法注入 2.4Setter注入 2.5 三…

代碼隨想錄算法訓練營第四十五天|1049.最后一塊石頭的重量II、494.目標和、 474.一和零

1049.最后一塊石頭的重量II 文檔講解&#xff1a;代碼隨想錄 題目鏈接&#xff1a;. - 力扣&#xff08;LeetCode&#xff09; 本題其實就是盡量讓石頭分成重量相同的兩堆&#xff0c;相撞之后剩下的石頭最小&#xff0c;這樣就化解成01背包問題了。 和昨天講解的416. 分割等和…

visual studio code 全局搜索

VScode寫代碼的時候&#xff0c;會經常性的需要進行查找代碼&#xff0c;那么怎么在Visual Studio Code中進行查找呢&#xff0c;下面就來大家vscode全局搜索的方法。 想要在vscode全局搜索進行全局搜索&#xff0c;使用快捷鍵CTRLSHIFTF即可進行搜索&#xff0c;也可以在左邊…

哪吒監控+cfcdn+ 反代grp端口

哪吒監控cfcdn 反代grp端口 背景&#xff1a; 哪吒監控&#xff1a;感覺VPS線路不穩定&#xff0c;為了打消自己潛意識&#xff0c;希望量化延遲。 cfcdn&#xff1a;隱藏真實站點&#xff0c;保障小雞隱秘安全 反代grpc端口: 反代grpc到支持https(TLS)的端口&#xff0c;這…

Tomcat啟動閃退問題及解決方法

Tomcat啟動閃退問題可能由多種原因引起&#xff0c;以下是一些常見的原因及相應的解決方法&#xff0c;按照清晰的結構進行歸納&#xff1a; 一、環境變量問題 Java環境問題&#xff1a;Tomcat依賴于Java環境&#xff0c;如果JDK未正確安裝或環境變量配置不正確&#xff0c;會…

Elasticsearch 認證模擬題 - 3

1、題目 有一索引有 3 個字段&#xff0c;請寫一個查詢去匹配這三個字段&#xff0c;并且將三個字段的評分相加作為最后的總評分 # 創建索引 PUT task {"mappings": {"properties": {"fielda":{"type": "text"},"fie…

TrueNAS開啟SSH登錄ROOT

簡介: 從 SCALE Bluefin 22.12.0 開始,為了加強安全性并遵守聯邦信息處理標準 (FIPS),root帳戶登錄已被棄用。所有 TrueNAS 用戶都應創建具有所有必需權限的本地管理員帳戶,并開始使用它來訪問 TrueNAS。當根用戶密碼被禁用時,只有管理用戶帳戶才能登錄 TrueNAS Web 界面。…

從零學算法2965

2965. 找出缺失和重復的數字 給你一個下標從 0 開始的二維整數矩陣 grid&#xff0c;大小為 n * n &#xff0c;其中的值在 [1, n2] 范圍內。除了 a 出現 兩次&#xff0c;b 缺失 之外&#xff0c;每個整數都 恰好出現一次 。 任務是找出重復的數字a 和缺失的數字 b 。 返回一個…

輪狀病毒簡介-卡梅德生物

輪狀病毒是一種非常常見的病毒&#xff0c;主要影響嬰幼兒和小孩&#xff0c;引起嚴重的胃腸炎&#xff0c;表現為嚴重腹瀉、嘔吐、發燒和脫水。這種病毒全球流行&#xff0c;是全世界五歲以下兒童因腹瀉導致死亡的主要原因之一。輪狀病毒屬于Reoviridae家族&#xff0c;具有雙…

邏輯回歸【python,機器學習,算法】

邏輯回歸是一種有監督的學習分類算法&#xff0c;用于預測目標變量的概率。目標或因變量的性質是二分法的&#xff0c;這意味著將只有兩個可能的類。主要解決二分類問題。 主要步驟有三個&#xff1a; 求線性回歸曲線。通過 sigmoid 函數將線性回歸曲線轉為 0-1 范圍函數。 …

機器學習-11-使用kaggle命令下載數據集和操作指南

參考kaggle API 命令下載數據集 參考Kaggle操作完整指南(2023版) 參考Kaggle如何入門? 1 kaggle操作指南 Kaggle 是一個流行的數據科學競賽平臺。由 Goldbloom 和 Ben Hamner 創建于 2010 年。為什么這兩個家伙要創立這樣一個平臺呢? 數據科學社區一直有這樣一個難題:對…

低代碼開發平臺(Low-code Development Platform)的模塊組成部分

低代碼開發平臺&#xff08;Low-code Development Platform&#xff09;的模塊組成部分主要包括以下幾個方面&#xff1a; 低代碼開發平臺的模塊組成部分可以按照包含系統、模塊、菜單組織操作行為等維度進行詳細闡述。以下是從這些方面對平臺模塊組成部分的說明&#xff1a; …